版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選第四講 運(yùn)行級(jí)別與故障排解一、Linux的啟動(dòng)過程()BIOS自檢 計(jì)算機(jī)在接通電源之后首先由BIOS進(jìn)行自檢,即進(jìn)行所謂的POST(Power On Self Test),然后依據(jù)BIOS內(nèi)設(shè)置的引導(dǎo)挨次從硬盤、軟盤或CDROM中讀入“引導(dǎo)塊”。 (2)啟動(dòng)GRUB/LILOGRUB和LILO都是引導(dǎo)加載程序。最簡潔地講,引導(dǎo)加載程序(boot loader) 會(huì)引導(dǎo)操作系統(tǒng)。當(dāng)機(jī)器引導(dǎo)它的操作系統(tǒng)時(shí),BIOS 會(huì)讀取引導(dǎo)介質(zhì)上最前面的 512 字節(jié)(即人們所知的 主引導(dǎo)記錄(master boot record,MBR)。在單一的 MBR
2、 中只能存儲(chǔ)一個(gè)操作系統(tǒng)的引導(dǎo)記錄,所以當(dāng)需要多個(gè)操作系統(tǒng)時(shí)就會(huì)消滅問題。所以需要更機(jī)敏的引導(dǎo)加載程序。(3)加載內(nèi)核 當(dāng)內(nèi)核映像被加載到內(nèi)存之后,內(nèi)核階段就開頭了。內(nèi)核映像并不是一個(gè)可執(zhí)行的內(nèi)核,而是一個(gè)壓縮過的內(nèi)核映像。通常它是一個(gè) zImage(壓縮映像,小于 512KB)或一個(gè) bzImage(較大的壓縮映像,大于 512KB),它是提前使用 zlib 進(jìn)行壓縮過的。在這個(gè)內(nèi)核映像前面是一個(gè)例程,它實(shí)現(xiàn)少量硬件設(shè)置,并對(duì)內(nèi)核映像中包含的內(nèi)核進(jìn)行解壓,然后將其放入高端內(nèi)存中,假如有初始 RAM 磁盤映像,就會(huì)將它移動(dòng)到內(nèi)存中,并標(biāo)明以后使用。然后該例程
3、會(huì)調(diào)用內(nèi)核,并開頭啟動(dòng)內(nèi)核引導(dǎo)的過程。(4)執(zhí)行init進(jìn)程 init進(jìn)程是系統(tǒng)全部進(jìn)程的起點(diǎn),內(nèi)核在完成核內(nèi)引導(dǎo)以后,即在本線程(進(jìn)程)空間內(nèi)加載init程序,它的進(jìn)程號(hào)是1。init進(jìn)程是全部進(jìn)程的發(fā)起者和把握者。由于在任何基于Unix的系統(tǒng)(比如Linux)中,它都是第一個(gè)運(yùn)行的進(jìn)程,所以init進(jìn)程的編號(hào)(Process ID,PID)永久是1。假如init消滅了問題,系統(tǒng)的其余部分也就隨之而垮掉了。 init進(jìn)程有兩個(gè)作用。第一個(gè)作用是扮演終結(jié)父進(jìn)程的角色。由于init進(jìn)程永久不會(huì)被終止,所以系統(tǒng)總是可以確信它的
4、存在,并在必要的時(shí)候以它為參照。假如某個(gè)進(jìn)程在它衍生出來的全部子進(jìn)程結(jié)束之前被終止,就會(huì)消滅必需以init為參照的狀況。此時(shí)那些失去了父進(jìn)程的子進(jìn)程就都會(huì)以init作為它們的父進(jìn)程??焖賵?zhí)行一下ps -af 命令,可以列出很多父進(jìn)程ID(Parent Process ID,PPID)為1的進(jìn)程來。 init的其次個(gè)角色是在進(jìn)入某個(gè)特定的運(yùn)行級(jí)別(Runlevel)時(shí)運(yùn)行相應(yīng)的程序,以此對(duì)各種運(yùn)行級(jí)別進(jìn)行管理。它的這個(gè)作用是由/etc/inittab文件定義的。(5)通過/etc/inittab文件進(jìn)行初始化 init的工作
5、是依據(jù)/etc/inittab來執(zhí)行相應(yīng)的腳本進(jìn)行系統(tǒng)初始化,如設(shè)置鍵盤、字體, 裝載模塊,設(shè)置網(wǎng)絡(luò),等等。 對(duì)于RedhatLinux來說,執(zhí)行的挨次為: · /etc/rc.d/rc.sysinit # 由init執(zhí)行的第一個(gè)腳本 /etc/rc.d/rc.sysinit主要做在各個(gè)運(yùn)行模式中相同的初始化工作,包括: 設(shè)置初始的$PATH變量。配置網(wǎng)絡(luò)。為虛擬內(nèi)存啟動(dòng)交換。設(shè)置系
6、統(tǒng)的主機(jī)名。檢查root文件系統(tǒng),以進(jìn)行必要的修復(fù)。檢查root文件系統(tǒng)的配額。為root文件系統(tǒng)打開用戶和組的配額。以讀/寫的方式重新裝載root文件系統(tǒng)。清除被裝載的文件系統(tǒng)表/etc/mtab。把root文件系統(tǒng)輸入到mtab。使系統(tǒng)為裝入模塊做預(yù)備。查找模塊的相關(guān)文件。檢查文件系統(tǒng),以進(jìn)行必要的修復(fù)。加載全部其他文件系統(tǒng)。清除幾個(gè)/etc文件:/etc/mtab、/etc/fastboot和/etc/nologin。刪除UUCP的lock文件。刪除過時(shí)的子系統(tǒng)文件。刪除過時(shí)的pid文件。設(shè)置系統(tǒng)時(shí)鐘。打開交換。初始化串行端口。裝入模塊。· /etc/rc.d/rcX.d/KS
7、 首先終止“K”開頭的服務(wù),然后啟動(dòng)“S”開頭的服務(wù)。 對(duì)每一個(gè)運(yùn)行級(jí)別來說,在/etc/rc.d子名目中都有一個(gè)對(duì)應(yīng)的下級(jí)名目。這些運(yùn)行級(jí)別的下級(jí)子名目的命名方法是rcX.d,其中的X就是代表運(yùn)行級(jí)別的數(shù)字。比如說,運(yùn)行級(jí)別3的全部命令腳本程序都保存在/etc/rc.d/rc3.d子名目中。在各個(gè)運(yùn)行級(jí)別的子名目中,都建立有到/etc/rc.d/init.d子名目中命令腳本程序的符號(hào)鏈接,但是,這些符號(hào)鏈接并不使用命令腳本程序在 /etc/rc.d/init.d子名目中原來的名字。假如命令腳本程序是用來啟動(dòng)一
8、個(gè)服務(wù)的,其符號(hào)鏈接的名字就以字母S打頭;假如命令腳本程序是用來關(guān)閉一個(gè)服務(wù)的,其符號(hào)鏈接的名字就以字母K打頭。很多狀況下,這些命令腳本程序的執(zhí)行挨次都很重要。假如沒有先配置網(wǎng)絡(luò)接口,就沒有方法使用DNS服務(wù)解析主機(jī)名!為了支配它們的執(zhí)行挨次,在字母S或者 K的后面緊跟著一個(gè)兩位數(shù)字,數(shù)值小的在數(shù)值大的前面執(zhí)行。比如:/etc/rc.d/rc3.d/S50inet就會(huì)在 /etc/rc.d/rc3.d/S55named之前執(zhí)行。存放在/etc/rc.d/init.d子名目中的、被符號(hào)鏈接上的命令腳本程序是真正的實(shí)干家,是它們完成了啟動(dòng)或者停止各種服務(wù)的操作過程。當(dāng) /etc/rc.d/rc運(yùn)行
9、通過每個(gè)特定的運(yùn)行級(jí)別子名目的時(shí)候,它會(huì)依據(jù)數(shù)字的挨次依次調(diào)用各個(gè)命令腳本程序執(zhí)行。它先運(yùn)行以字母K打頭的命令腳本程序,然后再運(yùn)行以字母S打頭的命令腳本程序。對(duì)以字母K打頭的命令腳本程序來說,會(huì)傳遞Stop參數(shù);類似地對(duì)以字母S打頭的命令腳本程序來說,會(huì)傳遞 Start參數(shù)。 · 執(zhí)行/etc/ec.d/rc.localRedhat Linux中的運(yùn)行模式2、3、5都把/etc/rc.d/rc.local做為初始化腳本中的最終一個(gè),所以用戶可以自己在這個(gè)文件中添加一些需要在其他初始化工作之后,登錄之前執(zhí)行的命令。在維護(hù)Linux系統(tǒng)運(yùn)轉(zhuǎn)的日子里,確定會(huì)遇到需要系統(tǒng)管理員對(duì)開機(jī)或者關(guān)機(jī)
10、命令腳本進(jìn)行修改的狀況。假如所做的修改只在引導(dǎo)開機(jī)的時(shí)候起作用,并且改動(dòng)不大的話,可以考慮簡潔地編輯一下/etc/rc.d/rc.local腳本。這個(gè)命令腳本程序是在引導(dǎo)過程的最終一步被執(zhí)行的。· 執(zhí)行 /bin/login 程式 login 程序會(huì)提示使用者需輸入賬號(hào)及密碼, 接著編碼并確認(rèn)密碼的正確性, 若二者相合, 則為使用者進(jìn)行初始化環(huán)境, 并將把握權(quán)交給 shell,即等
11、待用戶登錄。多次為止Linux啟動(dòng)過程全部結(jié)束。二、設(shè)置GRUB和LILO啟動(dòng)管理程序更改啟動(dòng)配置文件/boot/grub/menu.lstà/boot/grub/grub.conf# vi /boot/grub/menu.lstDefault=0Timeout=10Splashimage=(hd0,1)/boot/grub/splash.xpm.gzTitle red hat linuxRoot (hd0,1)Kernel /boot/vmlinuz-2.4.7-20 to root=/dev/hda2Initrd /boot/initrd -2.4.7-10.imgTitle d
12、osRootnoverify (hd0,0)Chainloader +1重新安裝GRUB修改完配置文件后必需重新安裝GRUB才能生效#grub-install /dev/hda設(shè)置LILO啟動(dòng)管理程序?qū)RUB切換LILO#cp /etc/lilo.conf.anaconda /etc/lilo.conf#lilo將LILO切換GRUB#grub-install /dev/hda生疏lilo.conf配置文件#vi /etc/lilo.confboot=/dev/hdamap=/boot/mapinstall=/boot/boot.bprompttimeout=50default=turbol
13、inuxother=/dev/hda1label=Windows xptable=/dev/hdaImage=/boot/vmlinuz -TLlabel= Turbolinuxroot=/dev/hda3read onlyImage=/boot/vmlinuz -RH label= RedHat linux root=/dev/hda4read onlyboot = device 說明那一個(gè)設(shè)備或哪一個(gè)分區(qū)包含引導(dǎo)扇區(qū)。假如沒有給boot賦值,取當(dāng)前缺省值。 map=map file 說明映射文件的路徑。 install = boot sector 使用指定的boo
14、t sector寫入引導(dǎo)扇區(qū),缺省用/boot/boot.b prompt 指定要用戶通過鍵盤選擇要引導(dǎo)的內(nèi)核。不會(huì)缺省選擇。timeout=tenths 設(shè)置一個(gè)超時(shí)值,在此時(shí)間內(nèi)必需有鍵盤輸入,否則用第一個(gè)配置。類似,假如超時(shí),就不能再輸入密碼。一般狀況下,該取缺省值,無窮大。 注:delay 與 timeout的區(qū)分(joe 認(rèn)為),delay 是"LILO"消滅后用戶必需有輸入的最長時(shí)間。timeout 是用戶在按了任意鍵后,系統(tǒng)等待選擇,用戶 兩次擊鍵的最大間隔時(shí)間。 message=file 指定一個(gè)
15、文件,該文件的內(nèi)容將會(huì)在LILO引導(dǎo)是被顯示。假如沒有說明該文件,那么就只會(huì)消滅"LILO"。read-only read-write 設(shè)置根文件系統(tǒng)的訪問方式。 每個(gè)從LILO引導(dǎo)的配置從image行開頭。 Image = kernel Label = name Image包含要引導(dǎo)的內(nèi)核。Label是給用戶選擇用的。Image行通常指向一個(gè)設(shè)備, root=device 設(shè)置根文件系統(tǒng)存在的設(shè)備。 留意
16、:若修改了lilo.conf文件,必需重裝lilo才能生效#lilo三、運(yùn)行級(jí)別運(yùn)行級(jí)別是定義在/etc/inittab文件中的系統(tǒng)操作的不同模式。運(yùn)行級(jí)別功能0停止系統(tǒng)1單用戶管理模式2多用戶無網(wǎng)絡(luò)支持模式3完全的多用戶模式,有網(wǎng)絡(luò)支持4未使用5完全的多用戶模式,有網(wǎng)絡(luò)支持和X116重啟系統(tǒng)S或s單用戶模式inittab介紹init進(jìn)程是系統(tǒng)中全部進(jìn)程的父進(jìn)程,init進(jìn)程繁衍出完成通常操作所需的子進(jìn)程,這些操作包括:設(shè)置機(jī)器名、檢查和安裝磁盤及文件系統(tǒng)、啟動(dòng)系統(tǒng)日志、配置網(wǎng)絡(luò)接口并啟動(dòng)網(wǎng)絡(luò)和郵件服務(wù),啟動(dòng)打印服務(wù)等。Solaris中init進(jìn)程的主要任務(wù)是依據(jù)inittab文件所供應(yīng)的信息
17、創(chuàng)建進(jìn)程,由于進(jìn)行系統(tǒng)初始化的那些進(jìn)程都由init創(chuàng)建,所以init進(jìn)程也稱為系統(tǒng)初始化進(jìn)程。下面具體說明inittab文件的格式。inittab文件中每一記錄都從新的一行開頭,每個(gè)記錄項(xiàng)最多可有512個(gè)字符,每一項(xiàng)的格式通常如下:id:rstate:action:process,下面分別解釋。1.id字段是最多4個(gè)字符的字符串,用來唯一標(biāo)志表項(xiàng)。2.rstate(run state)字段定義該記錄項(xiàng)被調(diào)用時(shí)的運(yùn)行級(jí)別,rstate可以由一個(gè)或多個(gè)運(yùn)行級(jí)別構(gòu)成,也可以是空,空則代表運(yùn)行級(jí)別06。當(dāng)懇求init轉(zhuǎn)變運(yùn)行級(jí)別時(shí),那些rstate字段中不包括新運(yùn)行級(jí)別的進(jìn)程將收到SIGTERM警告信
18、號(hào),并且最終被殺死;只有a、b、c啟動(dòng)的命令外(a、b、c不是真正的運(yùn)行級(jí)別)3.action字段告知init執(zhí)行的動(dòng)作,即如何處理process字段指定的進(jìn)程,action字段允許的值及對(duì)應(yīng)的動(dòng)作分別為:1)respawn:假如process字段指定的進(jìn)程不存在,則啟動(dòng)該進(jìn)程,init不等待處理結(jié)束,而是連續(xù)掃描inittab文件中的后續(xù)進(jìn)程,當(dāng)這樣的進(jìn)程終止時(shí),init會(huì)重新啟動(dòng)它,假如這樣的進(jìn)程已存在,則什么也不做。2)wait:啟動(dòng)process字段指定的進(jìn)程,并等處處理結(jié)束才去處理inittab中的下一記錄項(xiàng)。3)once:啟動(dòng)process字段指定的進(jìn)程,不等待處理結(jié)束就去處理下一記錄項(xiàng)。當(dāng)這樣的進(jìn)程終止時(shí),也不再重新啟動(dòng)它,在進(jìn)入新的運(yùn)行級(jí)別時(shí),假如這樣的進(jìn)程仍在運(yùn)行,init也不重新啟動(dòng)它。4)boot:只有在系統(tǒng)啟動(dòng)時(shí),init才處理這樣的記錄項(xiàng),啟動(dòng)相應(yīng)進(jìn)程,并不等待處理結(jié)束就去處理下一個(gè)記錄項(xiàng)。當(dāng)這樣的進(jìn)程終止時(shí),系統(tǒng)也不重啟它。5)bootwait:系統(tǒng)啟動(dòng)后,當(dāng)?shù)谝淮螐膯斡脩裟J竭M(jìn)入多用戶模式時(shí)處理這樣的記錄項(xiàng),init啟動(dòng)這樣的進(jìn)程,并且等待它的處理結(jié)束,然后再進(jìn)行下一個(gè)記錄項(xiàng)的處理,當(dāng)這樣的進(jìn)程終止時(shí),系統(tǒng)也不重啟它。6)powerfail:當(dāng)init接到斷電的信號(hào)(SIGPWR)時(shí),處理指定的進(jìn)程。7)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 贛南醫(yī)學(xué)院《英語閱讀與思辨》2023-2024學(xué)年第一學(xué)期期末試卷
- 七年級(jí)語文上冊(cè)第二單元6散步教案新人教版
- 七年級(jí)道德與法治上冊(cè)第四單元生命的思考第八課探問生命第1課時(shí)誤區(qū)警示新人教版
- 三年級(jí)數(shù)學(xué)上冊(cè)7長方形和正方形第3課時(shí)周長導(dǎo)學(xué)案新人教版
- 三年級(jí)數(shù)學(xué)上冊(cè)第2單元兩三位數(shù)乘一位數(shù)2.8解決問題課時(shí)練冀教版
- 慢性胃炎培訓(xùn)課件
- 《先芥蒂與麻醉》課件
- 人教版八年級(jí)物理下冊(cè)全冊(cè)教案
- 函數(shù)的圖象課件
- 涂料調(diào)色完整版本
- 建筑設(shè)計(jì)公司的商業(yè)計(jì)劃書
- 建筑景觀設(shè)計(jì)勞務(wù)合同
- 人教版PEP六年級(jí)英語下冊(cè)課件unit1
- 人教版四年級(jí)數(shù)學(xué)上冊(cè)寒假每日一練
- 律師法律服務(wù)應(yīng)急預(yù)案
- 主動(dòng)脈夾層介入手術(shù)的護(hù)理
- 浙江省嘉興市經(jīng)開區(qū)2023-2024學(xué)年四年級(jí)上學(xué)期期末學(xué)科素養(yǎng)評(píng)價(jià)科學(xué)試題
- 森林火災(zāi)滅火器具使用與技巧課件
- 雙氧水資源綜合利用項(xiàng)目建議書
- 物流園區(qū)及貨運(yùn)站場規(guī)劃設(shè)計(jì)方案
- 如何處理銷售過程中的問題和挑戰(zhàn)
評(píng)論
0/150
提交評(píng)論