通電
bios初始化
grub2磁盤引導階段
grub2文件引導街道
指定boot所在分區
啓動內核,只讀掛載/設備
啓動init程序進入初始化階段
啓動systemd初始化進程
讀取/etc/systemd/中的文件
啓動程序
啓動登錄環境
grub文件引導階段
由文件/boot/grub2/grub.cfg控制流程
指定/boot分區位置——>加載內核——>啓動系統初始化進程——>grub2-mkconfig
內核引導階段
檢測硬件設備——>設備驅動初始化——>將/只讀掛載——> 載入初始化進程systemd——>內核文件丟失請重新安裝內核
systemd初始化
開啓selinux和systemd-tools——>加載內核參數——>加載系統時鐘,鍵盤,主機名稱——>讀寫掛載/文件系統——>激活raid,lvm設備——>激活系統配額——>啓動multi-user.target.wants中的所有服務腳本——>啓用虛擬控制檯——>啓動圖形
系統啓動出錯恢復
1.引導程序boot損壞
破壞/dev/vda前446字節引導
dd if=/dev/zero if=/dev/vda bs=446 count=1
selinux狀態調整成disabled
開機無法引導系統
關閉虛擬機,加入iso鏡像光盤,從光驅啓動
Troubleshooting ##系統修復
Rescue a Res Hat Enterprise Linux system ##選擇挽救模式
(1)繼續
(2)只讀掛載
(3)跳過shell
(4)退出
選擇1
chroot /mnt/sysimage
grub2-install /dev/vda
執行兩次exit退出從硬盤啓動,恢復成功
2.引導文件/boot/grub2/grub.cfg丟失
set root='hd0,msdos1' 根據自己的boot分區
linux16 /vmlinuz-3.10.0-327.el7.x86_64 ro root=/dev/vda3
initrd16 /initramfs-3.10.0-327.el7.x64_64.img
boot
啓動成功後grub2-mkconfig > /boot/grub2/grub.cfg恢復即可
3.內核丟失
cd /boot
rm -rf vmlinuz-3.10.0-123.el7.x86_64 ##刪除內核
從光盤啓動進入挽救模式
cd /mnt/sysimage/mnt
rpm2cpio /run/install/repo/Packages/kerner... | cpio -id ##拆開鏡像文件
cd boot
cp vmlinuz-3.10.0-123.el7.x86_64 /mnt/sysimage/boot/
##把鏡像文件中的內核複製到系統根的boot下面
從硬盤啓動,啓動成功即可
4.初始化文件丟失
cd /boot
rm -rf initramfs-3.10.0-123.el7.x86_64.img ##刪除初始化文件
進入挽救模式
chroot /mnt/sysimage ##進入根環境
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) ##恢復初始化文件。$(uname -r)表示內核版本。
執行兩次exit,從硬盤啓動成功即可
5.boot分區丟失
恢復順序:1–>3–>4–>2
6.閃退
從光盤啓動進入挽救模式
chroot /mnt/sysimage
cp /bin/bash /mnt/sysimage/bin/bash
exit退出即可