У меня повреждена установка 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
Попробуйте umount
их -ing.
Слой VFS в Linux позволяет "привязывать-монтировать" файлы и каталоги к другому месту. Результат действительно выглядит как жесткая ссылка, но на самом деле не существует на диске – привязываемые монтирования находятся в памяти, как и обычные монтирования.
Эта функция также означает, что одна файловая система может быть смонтирована в нескольких местах одновременно. Например, она /dev/sda1
может быть смонтирована в/mnt/usbdrive
ина /var/lib/lxd/mnt-usbdrive
.
Всех таких магических ездовых животных можно увидеть, запустивfindmnt
или mount
.
(Windows и FreeBSD также имеют схожие функции, например, nullfs.)