1. 程式人生 > 實用技巧 >linux故障排除與修復(troubleshooting)

linux故障排除與修復(troubleshooting)

linux故障排除與修復(troubleshooting)

環境為:Red Hat Enterprise Linux Server 5 Update 4

1,首先,先把boot下的東西都全部刪掉.

clip_p_w_picpath002

哎,順便也把/boot這目錄也給刪了吧!

clip_p_w_picpath004

把系統啟動中該用到的重要的檔案都給刪了.

clip_p_w_picpath006

本想把這個/etc/fstab也刪了,由於恢復起來比較麻煩,所以在這裡只改一個名稱!

clip_p_w_picpath008

順便也把mbr前446個位元組也破壞了.dd命令的使用不知道的話可以網上搜索下!

clip_p_w_picpath010

reboot重啟

現在關都關不了了,這時請自覺手動按下restart鍵!

clip_p_w_picpath012

2,由於mbr前446位元組被破壞了,所以開機的時候已經直接進入光碟嚮導了(之前我已經放了RHEL5.4的光碟在裡面了)

輸入linux rescue (linux 救援模式)

clip_p_w_picpath014

選擇語言(English)

clip_p_w_picpath016

選擇鍵盤佈局

clip_p_w_picpath018

問我們是否開啟網路,在這裡不需要了 有光碟了

clip_p_w_picpath020

嘗試載入檔案系統,這裡選擇(Continue)

clip_p_w_picpath022

由於剛才我刪了/etc/fstab 所以現在載入不了檔案系統.

clip_p_w_picpath024

進入了shell,官方俗稱:假系統 使用fdisk –l檢視分割槽情況

clip_p_w_picpath026

df的時候看到我們的檔案系統沒有掛載起來

clip_p_w_picpath028

這時候就應該知道是/etc/fstab檔案的問題了,我要把它恢復回來

先手動掛載根分割槽,這要看嘗試與判斷哪個分割槽才是根分割槽了,因為系統是我裝的,我知道根分割槽大概的大小,應該是/etc/sda2.現在把/dev/sda2手動掛載起來

clip_p_w_picpath030

判斷沒錯的,如果是幫別人排錯的話,大家可以一個一個分割槽的嘗試,直到找到為止!

開始寫/etc/fstab檔案了,由於剛才採取戰略性的偷懶了,直接mv回來就KO!

clip_p_w_picpath032###注意千萬不要加絕對路徑

重啟系統再次進入rescue模式看正常掛載到檔案系統.

clip_p_w_picpath034

再次進入救援模式

再次嘗試掛載

clip_p_w_picpath036

出現下面這個提示說明已經成功了,假系統與真系統的切換隻需要:chroot /mnt/sysp_w_picpath就可以進真系統了,exit又回到假系統,再exit就重啟.

clip_p_w_picpath038

切換到真系統df一下檔案系統

clip_p_w_picpath040

現在的思路是mbr系統載入程式grub不正常了,所以要先修復grub.由於gurb在/boot分割槽中,所以現在進入/boot分割槽檢視

clip_p_w_picpath042##ls啥都沒有,說明核心檔案也不見了

這時得先修復核心,exit回假系統,開始安裝核心.

clip_p_w_picpath044

光碟上的檔案都沒掛載上來,這時還得先把光碟掛起來

clip_p_w_picpath046

呵呵/dev/cdrom竟然找不到,在這裡要打hdc,這個就不解釋這麼深了(其實太深了俺也不會)

clip_p_w_picpath048

進入kernel所在目錄,進行安裝,引數--root是指定根位置,--force:強制安裝

clip_p_w_picpath050

再次進入真系統,查一下/boot分割槽的內容

clip_p_w_picpath052

要把RAM DISK檔案重新生成一次,以下是步驟,$(uname –r)的意思是引用命令執行的結果.

clip_p_w_picpath054

核心修復完成,開始修復grub

clip_p_w_picpath056

/boot/grub/grub.conf不會自動生成,我們需要手工製作

clip_p_w_picpath058

grub.conf修改後最終效果

clip_p_w_picpath060

這樣引導沒問題了,順便檢視以下幾個重要檔案是否存在,有時還需要檢查內容等等

tab鍵補齊是一個都沒補得出來的

clip_p_w_picpath062

這時就需要恢復了,先查它屬於哪個rpm包

clip_p_w_picpath064

很明顯,現在就找這個包 恢復這幾個檔案

clip_p_w_picpath066

clip_p_w_picpath068

rpm2cpio這個命令是把rpm包的檔案提取出來

clip_p_w_picpath070

恢復檔案

clip_p_w_picpath072

可以重啟檢視是否修復成功了

輸兩次:exit

clip_p_w_picpath074

出現Red Hat 紅色字型了 說明核心載入已經沒問題

clip_p_w_picpath076

已經進入3級別的系統了

clip_p_w_picpath078

敲個 init 5

桌面環境也正常了

clip_p_w_picpath080

檢查下服務啟動也已經正常

clip_p_w_picpath082

troubleshooting就研究在這裡!

轉載於:https://blog.51cto.com/masondong/401103