維護筆記:一次生產(chǎn)環(huán)境 Linux 文件系統(tǒng)損壞的修復記錄
今天分享一個Linux文件系統(tǒng)損壞的恢復案例。
一、現(xiàn)象
值班人員突然收到服務器宕機的緊急告警通知,然后告知我。嘗試通過堡壘機進入服務器查看狀態(tài),結(jié)果無法進入,服務器應該是掉線了。
接著我通過云平臺登錄到后臺界面,看到下面的界面:
然后我輸入密碼嘗試回車,出現(xiàn)下面的界面:
從報錯可以判斷:文件系統(tǒng)壞了。而且涉及兩個分區(qū):/dev/vda5和/dev/vdb1,其中vda5是系統(tǒng)盤。
二、修復過程
說明一下:操作系統(tǒng)是CentOS7.6 ,分區(qū)格式是ext4。
1. 進入單用戶模式
后臺重啟服務器,開機啟動時出現(xiàn)下圖界面時,按e鍵:
在后面輸入: init=/bin/sh,并按 ctrl x 執(zhí)行:
2. 手動執(zhí)行 fsck
進入單用戶模式后,使用 lsblk 確認分區(qū)掛載情況后,先對/dev/vda5系統(tǒng)盤進行修復:
fsck -y /dev/sda5
幸運的是,系統(tǒng)能自動修復這些問題,數(shù)據(jù)損失極少。
接著就是通過同樣的命令修復/dev/vdb1:
fsck -y /dev/vdb1
-y參數(shù)是確認所有修復項,如果不添加則會逐項確認。
【溫馨提示】如果是xfs文件系統(tǒng)使用xfs_repair修復:
# xfs 不支持 fsck
xfs_repair /dev/sdX
3. 重啟并驗證服務
退出單用戶模式重新啟用:
exec /sbin/init
最后,順利登錄到操作系統(tǒng)。進入系統(tǒng)需要檢查數(shù)據(jù)完整性,業(yè)務都順利啟動,還好數(shù)據(jù)沒有丟失。
三、注意事項
- 定期備份是救命稻草,修復有風險,需要先做快照
- 強烈建議關(guān)鍵分區(qū)獨立掛載
- 出問題就寫筆記,下次就不慌
系統(tǒng)故障不可怕,可怕的是不知道怎么應對。一次次實踐、總結(jié)和反思,是運維工程師不斷成長的關(guān)鍵。