Linux虛擬機文件系統突然變成只讀問題解決

重新安裝虛擬機並checkout代碼,也很容易出現這個問題。宿主系統運行任務比較多,系統比較慢。有一次svn checkout出錯,在宿主系統(Ubuntu)用iotop看進程IO狀況,發現updatedb.mlocate寫入速度很大,達到10M/s以上。

這個頁面解析了原因:High I/O causing filesystem corruption

當宿主系統和虛擬機的IO都比較繁忙時,虛擬機的IO請求得不到及時的響應。虛擬機Linux不知道自己運行在虛擬機裡面,會認為是磁盤IO錯誤,為了保護磁盤數據會remount分區為只讀。

解決方法見上面的鏈接,不過都比較高級(使用直接IO、修改內核參數、使用LVM分區等)。

簡單解決辦法:

1) 不要在宿主系統和虛擬機同時運行高IO任務(別以為你的i7電腦很厲害);

2) 備份虛擬機(複製vmdk文件或使用VirtualBox快照),就算出錯了也容易恢復。


分享到:


相關文章: