Ubuntu
如何檢查 /dev/xvda1?
在登錄 EC2 (Ubuntu) 實例時,我看到
*** /dev/xvda1 should be checked for errors ***
我不能
fsck /dev/xvda1
因為它已安裝,並且sudo umount /dev/xvda1
因為它正在使用而失敗。lsof
節目jbd2/xvda 172 root cwd DIR 202,1 4096 2 / jbd2/xvda 172 root rtd DIR 202,1 4096 2 / jbd2/xvda 172 root txt unknown /proc/172/exe
並且
kill -SIGKILL 172
是無效的。該怎麼辦?
現在大多數 Linux 應該在系統上存在 /forcefsck 文件時在引導時執行強制 fsck。如果您可以重新啟動 VM,請執行
touch /forcefsck
然後在您方便時重新啟動
對於我們的 ec2 ubuntu 實例,上述答案並不完全有效。
在 Ubuntu 上,預設情況下, rcS文件中未啟用檢查。所以
- 編輯 rcS 文件 sudo vi /etc/default/rcS
線以下
#FSCKFIX=no
添加
FSCKFIX=yes
- 編輯 fstab 文件。須藤 vi /etc/fstab
查找 / 的記錄,如果最後一位為“0”,則將其更改為“1”。最後一個欄位是 fsckorder,fsck 使用它來決定檢查磁碟的順序。如果值為“0”,則跳過該磁碟。
例如,
LABEL=cloudimg-rootfs / ext4 defaults,discard 0 0
到
LABEL=cloudimg-rootfs / ext4 defaults,discard 0 1
- 創建 /forcefsck 文件
須藤觸摸/forcefsck
從 ec2 控制台重新啟動。
在 /etc/fstab 中將 fsckorder 值從 ‘1’ 恢復為 ‘0’ 刪除該行
FSCKFIX=yes
以將 rcS 文件恢復到原始狀態。希望能幫助到你。