У меня в системе три SSD-диска. Первый, физически находящийся в аппаратном обеспечении (если это имеет значение), - это моя установка Windows, второй - установка Ubuntu 20.04, а третий - диск для хранения данных NTFS. Я пытаюсь легче взаимодействовать с накопителем.
Поведение, которое я хотел бы реализовать, заключается в том, что в разделе /home
у меня есть каталог, который "выглядит" как мой диск хранения. То есть, если я открываю каталог, он отображает все те же подкаталоги и файлы, что и диск; любые изменения, сделанные в этом каталоге, автоматически происходят одновременно на диске/данных хранилища. Таким образом, я могу работать с /home
вместо того, чтобы переходить в другой каталог.
Я просматриваю этот ответ Ask Ubuntu и кажется, что он предоставляет частичное решение. Оригинальные вопросы спрашивают, как обеспечить сохранение привязки после перезагрузки системы. Ответ дает решение для ввода записи fstab
, аналогичной
# <device> <dir> <type> <options> <dump> <pass>
UUID=288a84bf-876c-4c4b-a4ba-d6b4cc6fc0d2 /mnt/device ext4 defaults,noatime,nofail 0 2
/mnt/device /srv/binded_device none bind
, где устройство, адресованное его UUID, монтируется на /mnt/device
, а затем /mnt/device
привязывается к /srv/binded_device
. Хотя я не совсем понимаю, как это применить к моей ситуации.
Поэтому мое устройство /dev/nvme2n1p2
(раздел NTFS, охватывающий весь диск) подключено к /media/
. в /proc/mounts
dev/nvme2n1p2 /media/<user>/Storage fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096 0 0
But I can also gather both UUID
and PARTUUID
via sudo blkid
dev/nvme2n1p2: LABEL="Storage" UUID="8E7C25407C252485" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="880d93fe-65da-45d9-b7ec-322bc51cdd52"
EDIT: Я только что понял, что другие ответы Ask Ubuntu дают решение этого первого вопроса.
Мой первый вопрос, должен ли я следовать шаблону, представленному связанным ответом , должен ли я использовать UUID
или PARTUUID
в fstab
?
Аналогично (в случае использования PARTUUID
)
# <device> <dir> <type> <options> <dump> <pass>
UUID=880d93fe-65da-45d9-b7ec-322bc51cdd52 /mnt/storage ntfs defaults,noatime,nofail 0 2
/mnt/storage /home/StorageBind none bind
Второе и третье, снова следуя из связанного ответа, где и как я должен называть местоположение монтировки? Могу ли я просто назвать его /mnt/storage
? Должен ли я изменить тип /тип
в fstab
на ntfs
, какие еще варианты я должен включить/удалить?
Скорее, могу ли я просто обратиться к диску в fstab
как к месту монтирования из /proc/mount
? По сути, это позволит мне обойти первые три вопроса...
Аналогично
# <device> <dir> <type> <options> <dump> <pass>
/media/<user>/Storage /home/StorageBind none bind
Дополнительные вопросы, которые могут повлиять на ответ для моего конкретного случая использования (хотя я думаю, что вопрос все еще имеет общую цель).
Этот накопитель содержит некоторый код, который создает различные файлы результатов. Код должен быть запущен в контейнере Docker, который может быть запущен только под инсталляцией linux (nvidia-docker
), хотя я все еще неразрывно связан с использованием Windows для различных задач администрирования по результатам. В прошлом, или когда я не использую накопитель, я буду использовать опцию Docker's bind-mount для монтирования каталога хоста внутри контейнера (содержащего мою кодовую строку).
Поэтому меня особенно беспокоит/интересно, если эта привязка будет работать так, как нужно, и как описано выше, смогу ли я смонтировать дополнительный docker --mount
/docker -- volume
привязку к диску с хранилищем?
docker <...> -v /home/StorageBind/<codebase>:/code
Я не вижу проблемы и причины сложности этого вопроса.
Поведение, которое я хотел бы реализовать, заключается в том, что в разделе /home у меня есть каталог, который "выглядит" как мой накопитель. То есть, если я открою каталог, в котором отображаются все те же подкаталоги и файлы. присутствует на диске; любые изменения, сделанные в этом каталоге автоматически одновременно происходит на накопителе/данных. Таким образом, я могу работать с /home вместо того, чтобы переходить в другой каталог.
Это именно то, чего вы просто добиваетесь с помощью сим-ссылки. Создание сим-ссылки под /home, указывающей на точку монтирования вашего диска хранения, сделает это именно так.
Симлинки просты, и первый вариант здесь. Они работают как обычные папки для любых практических целей. Для особых требований, когда симлинк не обрезает его, существует также опция mount --bind
, позволяющая привязать любую папку на смонтированном томе к другой папке. Таким образом, при желании вы можете эффективно подключить диск хранения во втором месте в каталоге /home.