Привязывание монтируемых SSD под /home с помощью fstab, вы можете использовать путь /proc/mount?

У меня в системе три 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//Storage. в /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
0
задан 10 March 2021 в 01:28

1 ответ

Я не вижу проблемы и причины сложности этого вопроса.

Поведение, которое я хотел бы реализовать, заключается в том, что в разделе /home у меня есть каталог, который "выглядит" как мой накопитель. То есть, если я открою каталог, в котором отображаются все те же подкаталоги и файлы. присутствует на диске; любые изменения, сделанные в этом каталоге автоматически одновременно происходит на накопителе/данных. Таким образом, я могу работать с /home вместо того, чтобы переходить в другой каталог.

Это именно то, чего вы просто добиваетесь с помощью сим-ссылки. Создание сим-ссылки под /home, указывающей на точку монтирования вашего диска хранения, сделает это именно так.

Симлинки просты, и первый вариант здесь. Они работают как обычные папки для любых практических целей. Для особых требований, когда симлинк не обрезает его, существует также опция mount --bind, позволяющая привязать любую папку на смонтированном томе к другой папке. Таким образом, при желании вы можете эффективно подключить диск хранения во втором месте в каталоге /home.

1
ответ дан 18 March 2021 в 23:27

Другие вопросы по тегам:

Похожие вопросы: