it-swarm-ja.com

別のファイルシステムがパスにマウントされているときにファイルを削除することは可能ですか?

/ usrを新しいパーティションに移動する についての答えを書いたばかりなので、新しいパーティションがマウントされたらファイルを削除することを考えていました。質問の例を使用するには、/usrに新しいパーティションをマウントし、ルートパーティションの/usrの下にあるすべてのファイルを削除して、ルートパーティションのスペースを解放することができます。

17
Hamish Downer

直接ではありませんが、それを回避する方法があります:mount --bindはあなたの友達です:

# Existing directory with a couple files in it
[email protected]:~/test# ls testdir
bar  foo

# Mount a filesystem over existing directory
[email protected]:~/test# mount -o loop testfs testdir
[email protected]:~/test# ls testdir
lost+found

# Bind mount root filesystem to another directory
[email protected]:~/test# mount --bind / bindmnt

# Can now get to contents of original directory through the bind mount
[email protected]:~/test# ls bindmnt/root/test/testdir/
bar  foo

# Remove a file
[email protected]:~/test# rm bindmnt/root/test/testdir/bar
[email protected]:~/test# ls bindmnt/root/test/testdir/
foo
[email protected]:~/test# ls testdir
lost+found

# Unmount filesystem
[email protected]:~/test# umount testdir

# Observe the change having taken effect
[email protected]:~/test# ls testdir
foo
[email protected]:~/test#

man mountも参照してください-「バインドマウント」を検索してください。

23
Nicholas Knight