? CentOS 6啟動流程:
POST --> Boot Sequence(BIOS) --> Boot Loader -->Kernel(ramdisk) --> rootfs --> switchroot --> /sbin/init --(/etc/inittab, /etc/init/*.conf) --> 設(shè)定默認(rèn)運行級別 --> 系統(tǒng)初始化腳本rc.sysinit --> 關(guān)閉或啟動對應(yīng)級別的服務(wù) --> 啟動終端
1.grub安裝
配置文件:/boot/grub/grub.conf <-- /etc/grub.conf
stage1 446字節(jié) 放bootloader啟動相關(guān)程序
stage1.5 加載boot分區(qū)的文件系統(tǒng)
stage2及內(nèi)核等通常放置于一個基本磁盤分區(qū)
(1) grub-install
安裝grub stage1和stage1_5到/dev/DISK磁盤上绣张,并復(fù)制GRUB相關(guān)文件到 DIR/boot目錄下
grub-install --root-directory=DIR /dev/DISK
(2) grub
grub> root (hd#,#)
grub> setup (hd#)
2.功用:
(1) 提供啟動菜單产园、并提供交互式接口
a:內(nèi)核參數(shù)
e: 編輯模式蝶涩,用于編輯菜單
c: 命令模式,交互式接口
(2) 加載用戶選擇的內(nèi)核或操作系統(tǒng)
允許傳遞參數(shù)給內(nèi)核
可隱藏啟動菜單
(3) 為菜單提供了保護機制
為編輯啟動菜單進行認(rèn)證
為啟用內(nèi)核或操作系統(tǒng)進行認(rèn)證
3.grub的命令行接口
help: 獲取幫助列表
help KEYWORD: 詳細幫助信息
find (hd#,#)/PATH/TO/SOMEFILE:
root (hd#,#)
kernel /PATH/TO/KERNEL_FILE: 設(shè)定本次啟動時用到的內(nèi)核文件芦拿;額外還可添加許多內(nèi)核支持使用的cmdline參數(shù)
例如:max_loop=100 selinux=0 init=/path/to/init
initrd /PATH/TO/INITRAMFS_FILE: 設(shè)定為選定的內(nèi)核提供額外文ramdisk
boot: 引導(dǎo)啟動選定的內(nèi)核
? cat /proc/cmdline 內(nèi)核參數(shù)
? 內(nèi)核參數(shù)文檔:/usr/share/doc/kernel-doc-2.6.32/Documentation/kernel-parameters.txt
4.識別硬盤設(shè)備(hd#,#)
hd#: 磁盤編號熟呛,用數(shù)字表示;從0開始編號
#: 分區(qū)編號图谷,用數(shù)字表示; 從0開始編號
(hd0,0) 第一塊硬盤翩活,第一個分區(qū)
- 手動在grub命令行接口啟動系統(tǒng)
grub> root (hd#,#)
grub> kernel /vmlinuz-VERSION-RELEASE ro
root=/dev/DEVICE
grub> initrd /initramfs-VERSION-RELEASE.img
grub> boot
- 配置文件:/boot/grub/grub.conf
default=#: 設(shè)定默認(rèn)啟動的菜單項;落單項(title)編號從0開始
timeout=#:指定菜單項等待選項選擇的時長
splashimage=(hd#,#)/PATH/XPM_FILE:菜單背景圖片文件路徑
hiddenmenu:隱藏菜單
password [--md5] STRING: 啟動菜單編輯認(rèn)證
title TITLE:定義菜單項“標(biāo)題”, 可出現(xiàn)多次
root (hd#,#):查找stage2及kernel文件所在設(shè)備分區(qū)便贵;為grub的根
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內(nèi)核
initrd /PATH/TO/INITRAMFS_FILE: 內(nèi)核匹配的ramfs文件
password [--md5|--encrypted ] STRING: 啟動選定的內(nèi)核或操作系統(tǒng)時進行認(rèn)證
3.grub加密
? 生成grub口令
? grub-md5-crypt
? grub-crypt
? 破解root口令:
啟動系統(tǒng)時菠镇,設(shè)置其運行級別1
? 進入單用戶模式:
(1) 編輯grub菜單(選定要編輯的title,而后使用e命令)
(2) 在選定的kernel后附加 1, s, S或single都可以
(3) 在kernel所在行承璃,鍵入“b”命令