/ をアンマウントするにはどうすればいいですか?忙しいです

/ をアンマウントするにはどうすればいいですか?忙しいです

私は zerofree を使用しようとしていますが、これがこの問題の答えのようです:VM サイズを縮小するにはどうすればいいですか?

/dev/sda1 を正常にアンマウントし、zerofree が正常に動作して、約 37 GB が解放されました。

しかし、/dev/mapper/mypc-root をアンマウントまたは読み取り専用として再マウントすることはできないようです。次のように表示されます。

umount: / is busy

または

mount: / is busy

使用されたコマンドは次のとおりです。

$ umount /dev/mapper/mypc-root
$ mount -no remount,ro -t ext2 /dev/mapper/mypc-root /

私はシングルユーザーモードに入っています。「init 1」で入りました。

ゲスト SO は、暗号化された LVM とホームを備えた Ubuntu 12 です。

何か案は?

答え1

//システム自体によって使用されているため (そのため、メッセージが表示されます)、システムからアンマウントできません。

この手順は Live CD から実行する必要があります。

答え2

これは通常、ルート ファイルシステム上のファイルを削除したが、まだ開いている場合に発生します。一部のプロセスがファイルへの参照を保持しており、ファイルを閉じるまでディスク上で解放できません。システム ライブラリを更新すると、このような状況が発生する可能性があります。

クリーンな状態のファイルシステムに削除されたが解放されていないファイルが含まれる可能性はないため、カーネルはファイルシステムを読み取り専用で再マウントすることを拒否します。

これらのプロセスを再起動すると役立ちます。これにより、カーネルがファイルを解放し、ファイルシステムを正常にアンマウントできるようになります。

別のオプションとしては、SysRq キーを使用して読み取り専用の再マウントを強制する方法があります。

echo u > /proc/sysrq-trigger

これは安全ですが、次のマウント/実行時にカーネル/fsck がエラーを報告します。

答え3

この投稿をフォローできます: https://unix.stackexchange.com/questions/42015/mount-is-busy-when-trying-to-mount-as-read-only-so-that-i-can-run-zerofree

私の場合、プロセスの強制終了について心配したくありませんでした。VirtualBoX に 2 つの仮想マシンがあったので、圧縮する必要のある VM のディスクを他の VM にマウントし、そのマシンからゼロ解放しました。

関連情報