おそらく私が達成したいことを達成するためのより良い方法があるかもしれないので、全体の問題を説明します。私のディレクトリ/
と/home
ディレクトリは別々のLVにあります。問題が発生し、/
LVにスペースがなくなりました。その後、バックアップし/home
てサイズ変更できるように削除してみました/
。ただし、root tty にログインしてマウントを解除しようとすると、論理ボリュームが使用中である/home
というlvchange -a n /dev/trixxxy-vg/home
メッセージが表示されます。
Logical volume trixxxy-vg/home contains a filesystem in use.
私のディレクトリ.emacs.d
と.bashrc
ディレクトリは/root
関連リンク/home/user/
なので問題の原因になる可能性があると思いましたが、削除した後も何も変わりませんでした。
現在、特定の論理ボリュームを使用しているファイルが何であるかを確認する方法があるようです。それとも、そのようなパーティションを削除するために力を使用できますか?
答え1
通常、fuser
または同じツールを使用して、現在lsof
使用されているファイルを確認できます。ここに私が使用する例がありますlsof
。
背景
これには次の設定があります。
$ mount | grep lvm
/dev/mapper/lvm--raid-lvm0 on /export/raid0 type ext3 (rw)
lsof
したがって、そのインストールを見つけるためにgrepを実行すると、次のようになります/export/raid0
。
$ lsof | grep '/export/raid0'
$
私たちは何も得ません。しかし、もし私たちはcd /export/raid0
:
$ lsof | grep '/export'
bash 32083 root cwd DIR 253,2 4096 2 /export/raid0
これで、BashシェルがLVMにアクセスしていることがわかります。今はvi afile
まだディレクトリにあります/export/raid0
。
$ lsof | grep '/export'
bash 32083 root cwd DIR 253,2 4096 2 /export/raid0
vi 32140 root cwd DIR 253,2 4096 2 /export/raid0
vi 32140 root 3u REG 253,2 4096 278612 /export/raid0/.afile.swp
そして、lsof
これらの訪問も見ることができます。