/dev/sdcでfsck -fを実行しようとしましたが、成功しませんでした。
umount -l /var/hadoop/zookeper
lsof /var/hadoop/zookeeper/
fsck -f /dev/sdc
fsck from util-linux 2.23.2
e2fsck 1.42.9 (28-Dec-2013)
/dev/sdc is in use.
e2fsck: Cannot continue, aborting.
どうすればいいですか?
ディスクがマウントされておらず、lsofから何も得られません。
では、なぜ/dev/sdcを使用するのですか? ??
fsck -nf /dev/sdc
fsck from util-linux 2.23.2
e2fsck 1.42.9 (28-Dec-2013)
Warning! /dev/sdc is in use.
Warning: skipping journal recovery because doing a read-only filesystem check.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (4206042, counted=4212201).
Fix? no
Free inodes count wrong (1310644, counted=1310641).
Fix? no
/dev/sdc: 76/1310720 files (55.3% non-contiguous), 1036838/5242880 blocks
。
fsck -pvcf /dev/sdc
fsck from util-linux 2.23.2
/dev/sdc is in use.
e2fsck: Cannot continue, aborting
答え1
問題はjbd2カーネルスレッドです。たとえば、
# lsof | grep sdc
jbd2/sdc- 261 root cwd DIR 8,0 4096 2 /
jbd2/sdc- 261 root rtd DIR 8,0 4096 2 /
jbd2/sdc- 261 root txt unknown /proc/261/exe
あなたができることは、ディスクがマウントされないようにfstabからディスクを取り外すことです。再起動。これにより、これらのカーネルスレッドは決して開始されません。