如果我使用“telinit 6”而不是“rebo ot”命令重新啟動我的電腦,它會有什麼不同?
我試圖了解 Unix 中的執行級別,我發現執行級別 6 是重新啟動狀態。所以我嘗試使用該命令切換到執行級別 6 ,它與我的電腦上的
telinit 6
工作方式相同。reboot
我使用的是 Kali Linux,所以不需要 sudo。更改/切換符文級別只是呼叫某個程序的命令嗎?當我們啟動、重新啟動或關閉電源時,我們只是在改變執行級別嗎?
在
init
基於作業系統/sbin/telinit
中連結到/sbin/init
和在systemed
基於作業系統中它連結到/sbin/systemed
. 因此,這是一種與或類似軟體進行通信的init
方式systemed
。
telinit 6
和的結果reboot
是一樣的,但他們卻領悟了不同的想法。引用自http://www.tutorialspoint.com/unix_commands/init.htm
執行級別是系統的軟體配置,它只允許一組選定的程序存在。
因此,更改
runlevel
不等於rebooting
orpower off
。基於
init
作業系統的作業系統runlevel
由/etc/inittab
. 在啟動系統時init
讀取文件以決定啟動哪些程序組。執行級別 6 表示不要啟動任何程序並重新啟動。改變
/etc/inittab
是永久性的。如果文件被修改init
,則在重新啟動時更改執行級別並堅持下去,直到進一步修改文件。效果
telinit
是一次性的,無需重啟。重新啟動後init
再次讀取/etc/inittab
並相應地啟動執行級別。現在,執行級別 6 表示
init
要終止所有子程序並重新啟動。telinit 6
init
殺死所有子程序並重新啟動。上,發出reboot
命令,init 做同樣的事情。但是,這並不意味著更改執行級別就等於重新啟動。因為如果您將系統的執行級別更改為 6 永久使用/etc/inittab
它將繼續重新啟動。如果您使用
telinit 6
重新啟動系統而不是reboot
命令它不會有任何區別。