Centos 6啟動(dòng)流程:
POST-->BootSequence(BIOS)-->Bootloader(MBR)-->kernel(ramdisk)-->rootfs(只讀) --> /sbin/init --> (/etc/inittab,/etc/init/*.conf) --> 設(shè)置默認(rèn)運(yùn)行級(jí)別 --> 運(yùn)行系統(tǒng)初始化腳本土浸、完成系統(tǒng)初始化 --> 關(guān)閉對(duì)應(yīng)下需要關(guān)閉的服務(wù)塞淹,啟動(dòng)需要啟動(dòng)的服務(wù) --> 設(shè)置登錄終端
GRUB(Boot Loader)
配置文件:/boot/grub/grub.conf <-- /etc/grub.conf
grub:GRand Unified Bootloader
grub 0.x: grub legacy
grub 1.x: grub2
grub legary:
stagel:mbr
stagel1_5:mbr之后的扇區(qū)耸三,讓stagel中的bootloader能識(shí)別stage2所在的分區(qū)上的文件系統(tǒng)
stage2:磁盤(pán)分區(qū)(/boot/grub/)
stage2及內(nèi)核等通常放置于一個(gè)基本磁盤(pán)分區(qū):
功用
(1):提供菜單,并提供交互式接口
a:內(nèi)核參數(shù) e:編輯模式咨跌,用于編輯菜單
c:命令模式,交互式接口
(2):加載用戶選擇的內(nèi)核或操作系統(tǒng)
允許傳遞參數(shù)給內(nèi)核
可隱藏此菜單
(3):為菜單提供了保護(hù)機(jī)制
為編輯菜單進(jìn)行認(rèn)證
為啟動(dòng)內(nèi)核或操作系統(tǒng)進(jìn)行認(rèn)證
grub如何識(shí)別設(shè)備:
(hd#,#)
hd#:磁盤(pán)編號(hào)央勒,用數(shù)字表示咧叭,從0開(kāi)始編號(hào)
#:分區(qū)編號(hào)纹烹,用數(shù)字表示页滚,從0開(kāi)始編號(hào)
(hd0,0) 第一塊磁盤(pán)的第一個(gè)分區(qū)
grub的命令行接口:
help:獲取幫助列表
help KEYWORD:詳細(xì)幫助信息
find (hd#,#)/PATH/FILENAME:在分區(qū)上查找FILENAME文件
eg find (hd0,0)/vmlinuz-2.6*
root (hd#,#) 指明hd#,#設(shè)備為/(根)設(shè)備
eg root(hd0.0)
find vmlinuz-2.6*
kernel /PATH/TO/KERNEL_FILE 設(shè)定本次啟動(dòng)時(shí)用到的內(nèi)核文件;額外還可以添加許多內(nèi)核支持使用的cmdline參數(shù)
eg:init=/path/to/init,selinux=0
initrd /PATH/TO/INITRAMFS_FILE:設(shè)定為選定的內(nèi)核提供額外文件的ramdisk;
boot:引導(dǎo)啟動(dòng)選定的內(nèi)核
手動(dòng)在grub命令行接口啟動(dòng)系統(tǒng):
grub> root (hd0,0)
grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE 以root身份只讀啟動(dòng)內(nèi)核文件
grub> initrd /initramfs-VERSION-RELEASE.img
grub> boot
配置文件:/etc/grub.conf
配置項(xiàng):
default=#:設(shè)定默認(rèn)啟動(dòng)的菜單項(xiàng),落單項(xiàng)(title)編號(hào)從0開(kāi)始
timeout=#:指定菜單項(xiàng)等待選項(xiàng)選擇的時(shí)長(zhǎng);
splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜單背景圖片文件路徑;
hiddenmenu:隱藏菜單
password [--md5] STRING:菜單編輯md5認(rèn)證
password --encrypted 口令 512口令密碼加密
title TITLE:定義菜單項(xiàng)"標(biāo)題"铺呵,可出現(xiàn)多次;
root (hd#,#):grub查找stage2及kernel文件所在設(shè)備分區(qū);為grub的"根"
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS] ro root=/dev/sda2 啟動(dòng)的內(nèi)核文件路徑和/分區(qū)路徑
initrd /PATH/TO/INITRAMFS_FILE:內(nèi)核匹配的ramfs文件
password [--md5] STRING:?jiǎn)?dòng)選定的內(nèi)核或操作系統(tǒng)時(shí)進(jìn)行認(rèn)證
關(guān)鍵字(內(nèi)核參數(shù)):
rhgb 啟動(dòng)過(guò)程圖形界面顯示
quiet 顯示內(nèi)核啟動(dòng)過(guò)程
max_loop 100 生成100個(gè)loop設(shè)備
selinux=0 禁用SELinux策略
grub-md5-crypt命令:生成md5密碼口令
grub-crypt 密碼口令512加密算法
內(nèi)核參數(shù)文檔:/usr/share/doc/kernel-doc-2.6.32/Documentation/kernel-parameters.txt
進(jìn)入單用戶模式:
(1):編輯grub菜單(選定要編輯的title裹驰,而后使用e命令)
(2):在選定的kernel后附加
1,s,S或single都o(jì)k
(3):在kernel所在行,鍵入"b"命令
安裝grub:
(1) grub-install
grub-install --root-directory=ROOT /dev/DISK 根據(jù)跟掛載分區(qū)設(shè)備安裝/boot啟動(dòng)目錄和grub,--root-directory=ROOT 指明grub存放跟路徑目錄片挂,grub路徑目錄已存在幻林,grub文件自動(dòng)生成
(2) grub 局限性依賴于grub目錄下的文件
grub> root (hd#,#) grub跟位于hd#磁盤(pán)#個(gè)分區(qū)
grub> setup (hd#) 將grub安裝到hd#硬盤(pán)上
練習(xí)
1.新添硬盤(pán)贞盯,提供直接單獨(dú)運(yùn)行bash系統(tǒng)
2.破壞本機(jī)grub stage1,而后在救援模式下修復(fù)之
3.為grub設(shè)備保護(hù)功能
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者