1. 程式人生 > 實用技巧 >Read-only file system處理

Read-only file system處理

現象

或者日誌中有 Cannot make directory:file:xxxxxxxx的資訊

當單獨建立檔案的時候報錯

mkdir:cannot make directory xxx:read-only file system

問題原因

一般是由於一下兩類問題導致:

  1. 檔案系統資料塊出現不一致導致
  2. 由於未正確關機或突然掉電導致磁碟故障

檔案系統有很強的自我修復機制。當遇到致命錯誤時,檔案系統為了保持資料一致性和安全,會暫時遮蔽掉寫操作,變為只讀的檔案系統。才出現了read-only file system的報錯

解決辦法

通過fsck手工修復檔案系統。

1、在操作前,最好解除安裝檔案系統所在的磁碟分割槽

[root@iZzm446eh1ux98Z ~]# umount /dev/vdb1
umount: /: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

無法解除安裝原因是有程序正在使用檔案系統。

2、檢查正在使用相關分割槽的程序

[root@iZzm446eh1ux98Z ~]# fuser -m /dev/vdb1
/dev/vdb1           8000

3、使用ps命令檢查8000埠的程序

4、停掉相關程序後修復檔案系統

[root@iZzm446eh1ux98Z ~]# fsck -V -a /dev/vdb1

修復的時間根據磁碟大小和檔案系統損壞程度而定。當有些資料塊無法修復時,會提示是否刪除,根據情況進行選擇。被刪除的資料塊保留在該磁碟分割槽掛載點的lost+found目錄中。

5、修復完成後重新掛載即可