Linux引導(dǎo)CentOS:系統(tǒng)啟動原理與實踐指南
系統(tǒng)引導(dǎo)核心機制
現(xiàn)代Linux系統(tǒng)采用分階段引導(dǎo)模式,CentOS基于GRUB 2實現(xiàn)多系統(tǒng)兼容啟動。BIOS/UEFI固件初始化后,系統(tǒng)控制權(quán)移交至引導(dǎo)加載程序,完成硬件檢測、內(nèi)核加載及初始化內(nèi)存盤傳遞等關(guān)鍵操作。
- BIOS/UEFI階段:硬件自檢與引導(dǎo)設(shè)備識別
- GRUB 2加載:配置文件解析與菜單生成
- 內(nèi)核初始化:硬件驅(qū)動加載與rootfs掛載
GRUB配置文件解析
CentOS系統(tǒng)GRUB配置文件位于/boot/grub2/grub.cfg
,建議通過/etc/default/grub
進行參數(shù)修改。典型配置項包含:
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
修改后需執(zhí)行grub2-mkconfig -o /boot/grub2/grub.cfg
生成新配置。
多系統(tǒng)引導(dǎo)配置實例
在/etc/grub.d/40_custom
中添加Windows系統(tǒng)啟動項:
menuentry "Windows 10" {
insmod ntfs
set root=(hd0,1)
chainloader +1
}
使用grub2-mkconfig
命令更新引導(dǎo)菜單后,系統(tǒng)重啟即可顯示多系統(tǒng)選擇界面。
引導(dǎo)故障應(yīng)急處理
場景1:GRUB菜單丟失
- 使用LiveCD進入救援模式
- 掛載系統(tǒng)分區(qū):
mount /dev/sda1 /mnt
- 重建引導(dǎo)配置:
grub2-install --root-directory=/mnt /dev/sda
場景2:內(nèi)核升級后無法啟動
通過GRUB命令行手動指定內(nèi)核版本:
linux /vmlinuz-3.10.0-1160.el7.x86_64 root=/dev/mapper/centos-root
initrd /initramfs-3.10.0-1160.el7.x86_64.img
boot
高級引導(dǎo)參數(shù)調(diào)優(yōu)
參數(shù) | 功能說明 | 應(yīng)用場景 |
---|---|---|
nomodeset | 禁用顯卡驅(qū)動 | 解決啟動黑屏問題 |
selinux=0 | 關(guān)閉SELinux | 系統(tǒng)策略沖突調(diào)試 |
init=/bin/bash | 進入單用戶模式 | 密碼重置/系統(tǒng)修復(fù) |