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