Ham*_*ner 19 filesystem delete mount
刚刚写了一个关于将 /usr 移动到新分区的答案后,我想知道一旦安装了新分区就删除文件。使用问题中的示例,是否可以挂载一个新分区/usr,然后删除/usr根分区下的所有文件以释放根分区上的空间。
Nic*_*ght 26
不是直接的,但有一种解决方法:mount --bind是你的朋友:
# Existing directory with a couple files in it
root@nkubuntu1004:~/test# ls testdir
bar foo
# Mount a filesystem over existing directory
root@nkubuntu1004:~/test# mount -o loop testfs testdir
root@nkubuntu1004:~/test# ls testdir
lost+found
# Bind mount root filesystem to another directory
root@nkubuntu1004:~/test# mount --bind / bindmnt
# Can now get to contents of original directory through the bind mount
root@nkubuntu1004:~/test# ls bindmnt/root/test/testdir/
bar foo
# Remove a file
root@nkubuntu1004:~/test# rm bindmnt/root/test/testdir/bar
root@nkubuntu1004:~/test# ls bindmnt/root/test/testdir/
foo
root@nkubuntu1004:~/test# ls testdir
lost+found
# Unmount filesystem
root@nkubuntu1004:~/test# umount testdir
# Observe the change having taken effect
root@nkubuntu1004:~/test# ls testdir
foo
root@nkubuntu1004:~/test#
Run Code Online (Sandbox Code Playgroud)
另请参阅man mount-- 搜索“绑定安装”。