1. 程式人生 > >Linux運維入門~24.系統常見排錯——2.核心檔案被刪除

Linux運維入門~24.系統常見排錯——2.核心檔案被刪除

1.設定光碟啟動拯救模式法

以虛擬機器為例,我們刪掉446位元組MBR磁碟引導

dd if=/dev/zero of=/dev/vda bs=446 count=1

這時候系統就無法開機了

關閉後

進入virt-manager

新增光碟驅動。選擇已有映象。注意,映象版本要與系統版本一致

在啟動選項中將CDROM勾選並置頂

apply同意

選擇Troubleshooting

選擇第二項拯救模式

ok 進入

注意,正常啟動後記得關機去boot option勾取CDROM,取消光碟啟動

在恢復系統檔案時,從光碟映象恢復是最常用的做法

2)核心被刪除 刪除/boot/vmlinuz-3.10.0-123.e17.x86_64 重啟報錯

新增光碟啟動項並連結映象 chroot /mnt/sysimage   真實主機所在地 mount /dev/sr0 /rhel7.0/ 找核心kernelrpm檔案

拷貝到/mnt拆包 rpm2cpio kernel-XXXX.rpm | cpio -id

將解包出來的核心檔案拷貝至真實主機/boot

exit x2

取消光碟啟動即可

原理(安裝映象中有所有系統執行需要的核心檔案,學會看報錯,缺哪裡,找哪裡補上)

3)系統初始化映象檔案丟失 模擬問題:rm -rf /boot/initramfs-3.10.0-123.e17.x86_64.img 版本號

當系統沒有重啟時 mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

適用所有版本

uname -r 檢視核心版本號

當系統重啟時,報錯

設定光碟啟動 chroot /mnt/sysimage mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

重新生成核心檔案

exit x2

取消光碟啟動即可

4)刪掉/boot/

光碟啟動,拯救模式 grub2-install /dev/vda cp vmlinuz-3.10XXXXXXX /boot/ mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) grub2-mkconfig > /boot/grub2/grub.cfg

即,將上述操作都做一遍,注意恢復順序

2.手動引導啟動

引導檔案被刪除 模擬實驗:rm -rf -/boot/grub2/grub.cfg

1.當系統沒有重新啟動時: grub2-mkconfig > /boot/grub2/grub.cfg 重定向恢復檔案

2.當系統重啟 grub > set root='hd0,msdos1'此部分內容不固定,位置指向/boot所在分割槽a代表0,msdos是MBR分割槽 可以看grub.cfg檔案內容確定 grub > linux16 /掛載分割槽/vmlinuz-3.10.0-123.e17.x86_64 ro root=/dev/vda1 根分割槽裝置名稱 grub > initrd16 /掛載分割槽/initramfs-3.10.0-123.e17.x86_64.img 初始化程式指定映象

grub > boot  以上操作可以使系統臨時正常啟動,但是進入系統後還要 grub2-mkconfig > /boot/grub2/grub.cfg 重定向恢復檔案