仮想マシン ドライブの容量が不足していたため、VM をシャットダウンし、lvextend を使用してボリュームを拡張しました。パーティション (ext3) のサイズを変更した後、e2fsck を実行したところ、エラーが見つかり、修正されました。残念ながら、efsck をもう一度実行すると、修正しなければならないエラーがさらにありました。e2fsck を 3 回実行した後、手動でスペースをクリーンアップするためにマウントしてみることにしました。マウントを試みましたが、マウント プロセスがハングしました。マウント プロセスを "kill -9" しようとしましたが、終了しませんでした。親プロセスを終了しましたが、これも終了しませんでした。
不正なマウント プロセスを強制終了する方法について何かアイデアはありますか?
いくつかの証拠:
ps -l 13292 FS UID PID PPID C PRI NI アドレス SZ WCHAN TTY 時間 コマンド 4 R 0 13292 1 99 85 0 - 17964 - ? 11:27 /dev/mapper/xen7-123p3 /tmp/p3/ をマウントします
lsof -p 13292 コマンド PID ユーザー FD タイプ デバイス サイズ/オフ ノード名 マウント 13292 ルート cwd DIR 9,2 4096 25264129 /root マウント 13292 ルート rtd DIR 9,2 4096 2 / マウント 13292 ルート txt REG 9,2 61656 2916434 /bin/mount マウント 13292 ルート メモリ REG 9,2 144776 31457282 /lib64/ld-2.5.so マウント 13292 ルート メモリ REG 9,2 1718232 31457284 /lib64/libc-2.5.so マウント 13292 ルート メモリ REG 9,2 23360 31457291 /lib64/libdl-2.5.so マウント 13292 ルート メモリ REG 9,2 43808 31457783 /lib64/libblkid.so.1.0 マウント 13292 ルート メモリ REG 9,2 247496 31457331 /lib64/libsepol.so.1 マウント 13292 ルート メモリ REG 9,2 95464 31457337 /lib64/libselinux.so.1 マウント 13292 ルート メモリ REG 9,2 154640 31457491 /lib64/libdevmapper.so.1.02 マウント 13292 ルート メモリ REG 9,2 17936 31457472 /lib64/libuuid.so.1.2 マウント 13292 ルート メモリ REG 9,2 56438208 12684878 /usr/lib/locale/locale-archive マウント 13292 root 0u CHR 136,11 0t0 13 /dev/pts/11 (削除済み) マウント 13292 ルート 1u CHR 136,11 0t0 13 /dev/pts/11 (削除済み) マウント 13292 root 2u CHR 136,11 0t0 13 /dev/pts/11 (削除済み)
アンマウント -f /tmp/p3/ umount2: 無効な引数 umount: /tmp/p3/: マウントされていません
答え1
あらゆる可能性を試した後、最終的に再起動することにしました。残念ながら、このマウント プロセスを解放できなかったため、「shutdown -r」はハングしました。今後の参考までに、このように IO プロセスがハングしたときに強制的に再起動するには、次の操作を実行します。
エコー 1 > /proc/sys/kernel/sysrq エコー b > /proc/sysrq-trigger
答え2
umount -lf (lazy force) は機能するはずです。それでも機能しない場合は、マシンを再起動する以外に解決策はないと思います。
答え3
ジョン、チェックhttp://en.wikipedia.org/wiki/Magic_SysRq_keyB を sysrq-trigger にエコーする前に、データの損失を避けるために完全な REISUB を実行することをお勧めします。