2

У меня сломана установка lxd, и я хочу полностью удалить ее и начать заново, но есть проблема. /var /lib /lxd /devices /desktop содержит множество подкаталогов, связанных с каталогами в других местах файловой системы (даже на разных дисках), таких как

drwxr-xr-x 28 karl   karl       4096 Apr 11 15:40 disk.shareName.home-karl
drwxr-xr-x  4 nobody nogroup    4096 Apr 14 12:07 disk.thor.mnt-thor
drwxr-xr-x  2 root   root       4096 Mar 29 14:02 disk.usbdrive.mnt-usbdrive

Например, если я удаляю файл из disk.thor.mnt-thor, он также удаляется из /home /storage (обе директории указывают на одно и то же место). disk.usbdrive.mnt-usbdrive показывает все содержимое моего usb-диска, смонтированного в /mnt /usbdrive. Оба каталога показывают его содержание, а изменения в одном отражаются в другом.

Но теперь, если я хочу удалить эти каталоги, у меня возникает проблема, потому что я просто хочу удалить эти каталоги в lxd, а не фактические каталоги, на которые они указывают, а не их содержимое. Я попытался использовать unlink , но он не работает с каталогами.

1 ответ1

1

Попробуйте umount их.

Слой VFS в Linux позволяет «монтировать» файлы и каталоги в другое место. Результат действительно похож на жесткую ссылку, но на самом деле не существует на диске - привязные монтирования находятся в памяти, как обычные монтирования.

Эта функция также означает, что одна файловая система может быть смонтирована в нескольких местах одновременно. Например, тот же /dev/sda1 может быть смонтирован в /mnt/usbdrive и в /var/lib/lxd/mnt-usbdrive .

Все такие магические маунты можно увидеть, запустив findmnt или mount .

(Windows и FreeBSD также имеют схожие функции, например, nullfs.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .