Чи можливо видалити файли, коли інша файлова система встановлена ​​на шляху?


18

Щойно написавши відповідь про переміщення / usr до нового розділу, мені було цікаво видалити файли, коли буде встановлений новий розділ. Щоб використовувати приклад із запитання, чи можна встановити новий розділ на, /usrа потім видалити всі файли /usrв кореневому розділі, щоб звільнити місце на кореневому розділі.

Відповіді:


24

Не безпосередньо , але є спосіб, як це: 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#

Дивіться також man mount- пошук "прив’язати кріплення".


Відмінна відповідь - я просто додам посилання на Інтернет-версію сторінки Mount Man .
Гаміш Даунер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.