一、Linux的運行級別
在裝MySQL的時候,才知道了Linux的運行級別這麼一回事。汗…自己太水了…下面總結一下:
什麼是運行級別呢?簡單點來說,運行級別就是操作系統當前正在運行的功能級別。級別是從0到6,具有不同的功能。這些級別定義在/ect/inittab文件中。這個文件是init程序尋找的主要文件,最先運行的服務是那些放在/ect/rc.d目錄下的文件。
Linux下的7個運行級別:
0à系統停機狀態,系統默認運行級別不能設置爲0,否則不能正常啓動,機器關閉。
1à單用戶工作狀態,root權限,用於系統維護,禁止遠程登陸,就像Windows下的安全模式登錄。
2à多用戶狀態,沒有NFS支持。
3à完整的多用戶模式,有NFS,登陸後進入控制檯命令行模式。
4à系統未使用,保留一般不用,在一些特殊情況下可以用它來做一些事情。例如在筆記本電腦的電池用盡時,可以切換到這個模式來做一些設置。
5àX11控制檯,登陸後進入圖形GUI模式,X Window系統。
6à系統正常關閉並重啓,默認運行級別不能設爲6,否則不能正常啓動。運行init 6機器就會重啓。
運行級別原理:
1.在目錄/etc/rc.d/init.d下有許多服務器腳本程序,一般稱爲服務(service)
2.在/etc/rc.d下有7個名爲rcN.d的目錄,對應系統的7個運行級別
3.rcN.d目錄下都是一些符號鏈接文件,這些鏈接文件都指向init.d目錄下的service腳本文件,命名規則爲K+nn+服務名或S+nn+服務名,其中nn爲兩位數字。
4.系統會根據指定的運行級別進入對應的rcN.d目錄,並按照文件名順序檢索目錄下的鏈接文件:對於以K開頭的文件,系統將終止對應的服; 對於以S開頭的文件,系統將啓動對應的服務
5.查看運行級別用:runlevel
6.進入其它運行級別用:init N,如果init 3則進入終端模式,init 5則又登錄圖形GUI模式
7.另外init0爲關機,init 6爲重啓系統
標準的Linux運行級別爲3或5,如果是3的話,系統就在多用戶狀態;如果是5的話,則是運行着X Window系統。
不同的運行級別有不同的用處,也應該根據自己的不同情形來設置。例如,如果丟失了root口令,那麼可以讓機器啓動進入單用戶狀態來設置。在啓動後的lilo提示符下輸入:
init=/bin/sh rw
這樣就可以使機器進入運行級別1,並把root文件系統掛爲讀寫。它會路過所有系統認證,讓你使用passwd程序來改變root口令,然後啓動到一個新的運行級。
二、chkconfig用法
chkconfig命令可以用來檢查、設置系統的各種服務
使用語法:
chkconfig [--add][--del][--list][系統服務] 或 chkconfig [--level <等級代號>][系統服務][on/off/reset]
參數用法:
--addà增加所指定的系統服務,讓chkconfig指令得以管理它,並同時在系統啓動的敘述文件內增加相關數據。
--delà刪除所指定的系統服務,不再由chkconfig指令管理,並同時在系統啓動的敘述文件內刪除相關數據。
--level<等級代號>à指定讀系統服務要在哪一個執行等級中開啓或關畢。
使用範例:
chkconfig --list 列出所有的系統服務
chkconfig --add httpd 增加httpd服務
chkconfig --del httpd 刪除httpd服務
chkconfig --level httpd 2345 on 把httpd在運行級別爲2、3、4、5的情況下都是on(開啓)的狀態。
chkconfig命令提供了一種簡單的方式來設置一個服務的運行級別。例如,爲了設置MySQL服務器在運行級別3和4上運行,你必須首先將MySQL添加爲受chkconfig管理的服務:
chkconfig --add mysql
現在,我們在級別3和5上設定服務爲“on”
chkconfig --level 35 mysql on
在其他級別上設爲off
chkconfig --level 01246 mysql off
爲了確認你的配置被正確的修改了,我們可以列出服務將會運行的運行級別,如下所示:
#chkconfig --list mysql
mysql 0:off 1:off 2:off 3:on4:off 5:on6:off