Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Dalam fail manakah runlevels linux ditakrifkan?

Dalam fail manakah runlevels linux ditakrifkan?

青灯夜游
青灯夜游asal
2022-05-12 18:19:473520semak imbas

Tahap larian Linux ditakrifkan dalam fail konfigurasi "/etc/inittab". "/etc/inittab" ialah fail konfigurasi yang digunakan oleh program inisialisasi init apabila Linux memulakan sistem fail ini hanya boleh digunakan untuk menetapkan tahap larian lalai sistem, iaitu tahap larian yang akan dimasukkan oleh sistem selepas itu; but.

Dalam fail manakah runlevels linux ditakrifkan?

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.

Apakah tahap larian?

Malah, Linux menggunakan tahap larian untuk menentukan perkhidmatan yang dimulakan apabila sistem dimulakan.

Linux mempunyai 7 tahap larian secara lalai, seperti ditunjukkan dalam Jadual 1.

        表 1 运行级别
                运行级别                 含 义
                0                 关机
                1                 单用户模式,可以想象为 Windows 的安全模式,主要用于系统修复
                2                 不完全的命令行模式,不含 NFS 服务
                3                 完全的命令行模式,就是标准字符界面
                4                 系统保留
                5                 图形模式
                6                 重新启动

Dalam fail manakah tahap larian linux ditakrifkan

Tahap larian linux ditakrifkan dalam fail konfigurasi "/etc/inittab".

/etc/inittab Fail konfigurasi hanya boleh digunakan untuk menetapkan tahap larian lalai sistem, iaitu tahap larian yang akan dimasukkan oleh sistem selepas but

/etc/. fail inittab menerangkan proses yang dimulakan dan operasi biasa. inittab ialah fail konfigurasi yang digunakan oleh program inisialisasi init apabila Linux memulakan sistem fail. Fail ini bertanggungjawab untuk menetapkan lokasi skrip pemulaan program inisialisasi yang akan dijalankan apabila setiap peringkat larian dimulakan; dalam.

Format entri dalam fail inittab adalah seperti berikut:

label:runlevels:action:process

Yang berikut memperkenalkan setiap medan

1.label

label ialah jujukan unik yang mengenal pasti entri dengan 1 - 4 aksara, sesetengah sistem hanya menyokong 2 label aksara. Untuk item program log masuk lain seperti getty atau mingetty, label dan nombor tty dikehendaki sama, jika tidak, program getty tidak akan berfungsi dengan betul.

Teg yang biasa digunakan ialah:

id 用来定义缺省的init运行的级别
si 是系统初始化的进程
ln 其中的n从1~6,指明该进程可以使用的runlevel的级别
ud 是升级进程
ca 指明当按下Ctrl+Alt+Del时运行的进程
pf 指当UPS表明断电时运行的进程
pr 是在系统真正关闭之前,UPS发出电源恢复的信号时需要运行的进程
x 是将系统转入X终端时需要运行的进程

2.runlevels

runlevels menyenaraikan runlevels, menyatakan perkara yang sepatutnya dilakukan tindakan. Berbilang tahap runlevel boleh ditentukan, atau tiada nilai khusus boleh ditentukan untuk medan runlevel.

runlevel 0是让init关闭所有进程并终止系统。
runlevel 1是用来将系统转到单用户模式,单用户模式只能有系统管理员进入,在该模式下处理那些在有登录用户的情况下不能进行更改的文件,改runlevel的编号1也可以用S代替。
runlevel 2是允许系统进入多用户的模式,但并不支持文件共享,这种模式很少应用。
runlevel 3是最常用的运行模式,主要用来提供真正的多用户模式,也是多数服务器的缺省模式。
runlevel 4一般不被系统使用,用户可以设计自己的系统状态并将其应用到runlevel 4阶段,尽管很少使用,但使用该系统可以实现一些特定的登录请求。
runlevel 5是将系统初始化为专用的X Window终端。对功能强大的Linux系统来说,这并不是好的选择,但用户如果需要这样,也可以通过在runlevel启动来实现该方案。
runlevel 6是关闭所有运行的进程并重新启动系统。

Fail /etc/inittab tidak dijalankan secara lalai selepas debian6 Tahap lalai ialah 2-5 dan dikelaskan kepada satu kategori

3.tindakan.

Medan tindakan mentakrifkan keadaan di mana proses harus dijalankan dan menerangkan cara proses seterusnya harus dijalankan. :

respawn 不管何时终止都重新启动进程
wait 运行进程等待输入运行模式   这个过程将会开始一次运行级别时指定输入和init将等待其终止
once 每一个runlevel级别运行一次  这个过程将执行一次当指定输入runlevel
boot 在系统启动时运行,忽略runlevel
bootwait 在系统启动时运行,init等待进程完成。忽略runlevel
ctrlaltdel 当Ctrl+Alt+Del三个键同时按下时运行,把SIGINT信号发送给init。忽略 runlevel
initdefault 不要执行这个进程,它用于设置默认runlevel
kbrequest 当init从键盘中收到信号时运行。这里要求键盘组合符合KeyBoardSigra
off 禁止进入,因此该进程不运行
once 每一个runlevel级别运行一次
ondemand 当系统指定特定的运行级别A、B、C时运行
powerfail 当init收到SIGPWR信号时运行
powerokwait 当收到SIGPWD信号且/etc/文件中的电源状态包含OK时运行
powerwait 当收到SIGPWD信号,并且init等待进程结束时运行
sysinit 在运行boot或bootwait进程之前运行

4.proses

Medan proses mengandungi proses yang dilaksanakan oleh init Proses ini menggunakan format yang sama seperti yang dijalankan di bawah baris arahan format proses adalah sama, jadi medan proses bermula dengan nama proses, diikuti dengan parameter yang akan dihantar ke proses semasa berjalan.

Kod adalah seperti berikut:

# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

Kod adalah seperti berikut:

# The default runlevel.
id:2:initdefault: #表示当前缺省运行级别为2

Kod adalah seperti berikut:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS #系统初始化的进程

Kod adalah seperti berikut:

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

Kod adalah seperti berikut:

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
#
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

Kod adalah seperti berikut:

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

Kod adalah seperti berikut:

# What to do when CTRL-ALT-DEL is pressed. #在启动过程中是否允许按CTRL-ALT-DELETE重启系统
#ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

Kod adalah seperti berikut:

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."

Kod adalah seperti berikut:

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

Kod adalah seperti berikut:

# /sbin/getty invocations for the runlevels.
#
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
#
# Format:
# 53384f78b45ee9f1e3082cf378b9c5b4:aa8e9a9ffd796aa413e03363b25da911:26e39fa7e1b26005f564b20d47361531:22cd36f119203ea5e8c594b34aeec209
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
# getty进程来提供虚拟终端设备的服务
1:2345:respawn:/sbin/getty 38400 tty1

Kod adalah seperti berikut:

#标签字段的值是1,1是设备tty1的数字后缀,tty1与相应的进程相关联,该getty进程可以启动的runlevel是2,3,4和5,当该进程终止时,init马上就重新启动它。启动进程的路径名是/sbin/getty,该进程是实现虚拟终端支持的最小版本的getty,为tty1提供启动虚拟设备的进程。
2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
# Example how to put a getty on a serial line (for a terminal)
#
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
T1:23:respawn:/sbin/getty -L ttyS1 115200 vt100
# Example how to put a getty on a modem line.
#
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3

Contoh

# Begin /etc/inittab
id:3:initdefault:
si::sysinit:/etc/rc.d/init.d/rc sysinit
l0:0:wait:/etc/rc.d/init.d/rc 0
l1:S1:wait:/etc/rc.d/init.d/rc 1
l2:2:wait:/etc/rc.d/init.d/rc 2
l3:3:wait:/etc/rc.d/init.d/rc 3
l4:4:wait:/etc/rc.d/init.d/rc 4
l5:5:wait:/etc/rc.d/init.d/rc 5
l6:6:wait:/etc/rc.d/init.d/rc 6
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
su:S016:once:/sbin/sulogin
1:2345:respawn:/sbin/agetty tty1 9600
2:2345:respawn:/sbin/agetty tty2 9600
3:2345:respawn:/sbin/agetty tty3 9600
4:2345:respawn:/sbin/agetty tty4 9600
5:2345:respawn:/sbin/agetty tty5 9600
6:2345:respawn:/sbin/agetty tty6 9600
# End /etc/inittab

Cadangan berkaitan: " Tutorial Video Linux"

Atas ialah kandungan terperinci Dalam fail manakah runlevels linux ditakrifkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn