2009年11月10日 星期二

[系統] Linux fstab 設定錯誤 導致無法開始 出現 /dev/hdxx

因為不小心設定錯誤 /etc/fstab or hdd 出現問題時大致上會出現

Give root password for maintenance
輸入root 的密碼

提示 (repair filesystem) 1 #
就會進入 lever 1模式 ,進行修復動作....
此模式下,是唯讀模式,不可以修改檔案.....

所以要輸入 mount -n -o remount,rw /
重新載入 / ,並給於 寫入讀取權限,再將所設定錯誤的檔案修改回來。

由於此例子,是winner 將強制將 ext3 使用 xp 開機光碟,轉換成 NTFS
所以所導致 /etc/fstab 讀取錯誤。
所以應該先將 /etc/fstab 中的 hdb1 錯誤partition 給先拿掉,不要讀取它。

vi /etc/fstab 拿掉 hdb1 拿掉.....
:wq 存檔離開....並重新開機

參考文獻:http://linux.vbird.org/linux_basic/0510osloader.php#solution_config
電子檔下載


因設定錯誤而無法開機:

如果因為設定錯誤導致無法開機時,要怎麼辦啊?這就更簡單了! 最容易出錯的設定而導致無法順利開機的步驟,通常就是 /etc/fstab 這個檔案了, 尤其是使用者在 實作 Quota 時,最容易寫錯參數, 又沒有經過 mount -a 來測試掛載,就立刻直接重新開機,真要命,無法開機成功怎麼辦? 不要緊啦!利用上個小節提到的以 run level 1 的方法進入 Linux 系統,然後:
  • 利用『 mount -n -o remount,rw / 』重新掛載根目錄, 之後將剛剛設定錯誤的地方修改一下,就可以重新開機啦!
但萬一是因為不正常關機,導致開機時進行 fsck 無法成功,而出現類似這樣的幾行字:

/home contains a file system with errors,check blocks.
/home:Group 81's inode table at 2654219 conflicts with some other fs blocks.
/home: UNEXPECTED INCONSISTENCY ; RUN fsck MANUSLLY
(i.e. , without –a or –p options)
*** An error occurred during the file system check.
*** Dropping you to a shrll ; the system will reboot
*** when you to leave shell....
Give root password for maintenance(or type Control-D for normal startup):


這表示你的 filesystem 可能有磁區錯亂的情況,一般來說,這樣的磁區錯亂應該不是實體硬碟錯誤, 比較可能是由於不正成關機造成filesystem 的不一致 (Inconsistent) 所造成的。 造成這個問題之後,我們必須要輸入 root 的密碼,進入 run level 1 , 然後以 fsck /dev/hd[a-d][1-16] 來修復磁碟。例如,假設上面的案例中, /home 掛載在/dev/hda6 上面,那我就『 fsck /dev/hda6 』,不要加上任何參數。 等到系統發現錯誤,並且出現『clear[Y/N]』時,輸入『 y 』吧!

這個過程可能會很長,而且如果你的 partition 上面的 filesystem 有過多的資料損毀時, 即使 fsck完成後,可能因為傷到系統槽,導致某些關鍵系統檔案資料的損毀,那麼依舊是無法進入 Linux
的。此時,就好就是將系統當中的重要資料複製出來,然後重新安裝,並且檢驗一下, 是否實體硬碟有損傷的現象才好!不過一般來說,不太可能會這樣啦~
通常都是 fsck 處理完畢後,就能夠順利再次進入 Linux 了。

轉載地: http://blog.yam.com/invite19/article/10622880

沒有留言:

張貼留言