1. 程式人生 > >一次意外情況出現邏輯壞塊的處理

一次意外情況出現邏輯壞塊的處理

完成 tex shadow 多種方式 系統修復 col 硬盤 pro 重新安裝

項目是一個政府內部辦公應用,環境是這樣的,兩個節點,配合深信服的負載均衡器,組成高可用,掛載宏衫存儲。 準備做一次應用更新,手動備份應用,出現了根目錄只讀。 ![](http://i2.51cto.com/images/blog/201808/21/a4c6059ea312c278b7e79b1c96bca0c2.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=) 哎呦,什麽情況,這個事情不妙。因為我這直接是root用戶,不存在權限問題。 立即訪問通過IP訪問應用,發現應用仍然正常!有點摸不著頭腦了,第一反應是,立即查看硬盤情況,如下圖中,空間還是很富裕的。 ![](http://i2.51cto.com/images/blog/201808/21/af0a86fed91c93631240c0936182eb4b.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=) 這個情況也有可能是掛載情況,查掛載看看,發現存儲掛載正常,而且讀寫權限正常顯示! 那麽問題就奇怪了,掛載點的權限正常,為什麽不能寫數據呢?帶著這個疑問,我在其他的掛載點創建了其他文件,包括存儲的掛載點,均正常。 既然這樣,我心裏有個思路,根目錄出問題了,那問題出在哪裏呢。 沒有弄明白,不做其他的操作,是運維最大的保證。在操作前做好應用備份到掛載的存儲。 先重啟服務器看看。 啟動好,我後悔了,如果掛載不上,系統會無法啟動。 真讓我料到了,系統無法啟動,堡壘機等一系列通過ssh登錄的系統均無法連接。沒有辦法了,只能聯系系統管理員通過虛擬機管理端登錄,系統界面報掛載錯誤。通過修復模式,進入shell 界面,查看MESSAGE日誌,發現出現根目錄區域報邏輯塊錯誤。 ![](http://i2.51cto.com/images/blog/201808/21/87c15f8d09e4760e4d584b96235acfb6.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=) 掛載根目錄後,系統完成啟動,SSH服務恢復。 重新掛載系統,完成了掛載後,問題仍然存在,重啟後,沒有解決掛載問題。 那麽問題就出在邏輯壞塊上,查找了幾篇問題處理類似的問題,均是通過重新掛載,或者重新安裝系統解決問題。 聯系一個系統內核高手,得到的消息是,系統在加載掛載點時,當發現了系統壞塊後,把掛載點直接變成了可讀文件系統,但不改系統掛載配置,也就是看到的FSTAB文件以及掛載信息都很正常。 既然知道了問題出在哪裏,那好解決了,處理邏輯壞塊有多種方式,選擇哪種根據自己的情況而定。 一般,處理壞塊,都是進行標註,讓系統自己檢查,然後把壞塊進行標註,系統在使用過程中不再進行讀寫。或者通過第三方工具進行修復。就操作難度來說,第一種更合適。同時,還能避免對系統繼續寫入數據造成更多的壞塊。 這裏畢竟情況特殊,選擇系統修復。 如果這個辦法無法解決那麽在找其他方法修復。避免二次破壞。 ![](http://i2.51cto.com/images/blog/201808/21/c3bd7c726deb968c1a6b546ea6eb5d9d.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=) 修復完成後,系統重啟。錯誤修復成功。 總結:應用在非正常關機,或者存儲硬件問題都會出現壞塊問題,或者文件系統問題。遇到此類問題,首先一定要穩住心態,戒急戒躁。沒有定到問題所在不可做大的修改,和數據的繼續寫入。首先應該,最打限度的保存現有數據,然後才是修復文件系統。這裏我是先停掉應用,備份數據。然後選擇修復,同時選擇工具時,也要避免對當前情況的最小話的破壞。 同時註重基礎知識的學習,FSCK命令使用的很少,出問題了,一般很難想到。建議熟練使用系統工具。

一次意外情況出現邏輯壞塊的處理