Linux系統修復 -- FS修復

        今天客戶電腦因跳電造成 mail server無法開機,towns 看到的訊息是 hdb1 FS損壞,這是SuSE系統,towns 是走RH系統的說,看到臉都綠了 = =,還好,FS修復的指令是相同的 ^O^

環境:
OS:SuSE Linux 8.2

損壞部分:
hdb1的FS

        開機後,系統自動進入了安全模式(mount 所有的FS,並設為唯讀),towns做的流程是比較繁鎖的,他可以更簡化
1. 重新掛載 根,並可以寫入
  mount -n -o remount, rw / <==這一段系統有提示
2. 卸離 hdb1的FS,並重新啟動
  vi /etc/fstab <==設定開機不掛載hdb1
  #/dev/hdb1            /area                ext2       defaults              1 2
3. 重新啟動系統,可以正常運作了
4. 修復 hdb1的FS
  fsck /dev/hdb1 <==約執行了30分鐘,完成
5. 重新掛載 hdb1至指定磁區
  mount /dev/hdb1 /area
6. 將2的#,取消,完成所有設定

        在這個過程中,towns並不敢保證,修復後,系統是否能正常運作(還好,到目前為止都正常),不過,towns 不喜歡做這種事情,因為沒人能保證每次都能這樣修復。towns 下一個測試,要做出當UPS在底電壓時,系統會自動執行關機的機制。


        今天towns 收到一封由系統smart寄出來的信件,信中提到Device: /dev/hda, 7 Currently unreadable (pending) sectors,towns一看到就知道,慘了硬碟要出問題了,這是towns 管理的一台 mail server,而後進入系統後出現了journal commit I/O error 的錯誤,系統就被鎖住了,mail server 無回應了,透過 Rescue Mode,執行了fsck暫時解決了硬碟的問題,在修復過程中,有幾個重點, towns 必需記下來,以免忘記

1. 該系統使用 LVM 做磁區分割,如何找出LVM 磁區是第一個重點
 1.1. 使用光碟片登入 Linux Rescue Mode
 1.2. 確認硬碟的切割方式,必須看到LVM 的patiton,接下來才有用
         fdisk -l /dev/hd*
 1.3. 使用 lvm vgscan 掃瞄 volume groups中的FS
 1.4. 啟用掃到的volume groups,lvm vgchange -ay
 1.5. 使用lvm lvs,確認volume groups中的FS名稱
 1.6. 使用e2fsck /dev/mapper/[FS名稱]
不過 towns 使用e2fsck 仍無法辨視,最後是使用 fsck 指令才完成修復
資料來源:http://blog.yam.com/gavint/article/27391379
參考資料:
http://docs.hp.com/zh_tw/5992-4591/ch04s06.html
http://www.longticlub.com/space-14160-do-blog-id-97263.html
http://tonychou.posterous.com/lvm

補充1:在使用Linux Rescue Mode時,在掛載舊FS說明時,請選skip,不然,就無法執行修復了
補充2:使用64bit系統,必需使用64bit的Linux 光碟開啟Linux Rescue Mode,才能正常進入,而32bit就得用32bit的Linux 光碟開啟

GTW大的文章
http://blogger.gtwang.org/2014/05/linux-fsck-examples.html

留言

這個網誌中的熱門文章

zimbra 安裝、管理、設定

Fortigate 100D -- 管理、設定

IT 隨手記6