Рейтинг:0

Монтировать nfs при запуске от имени конкретного пользователя и разрешить размонтировать?

флаг fr

Я использую:

$ lsb_release -a
Нет доступных модулей LSB.
Идентификатор дистрибьютора: Ubuntu
Описание: Ubuntu 20.04.2 LTS
Релиз: 20.04
Кодовое название: фокальный

$ приятель-о --версия
Среда рабочего стола MATE 1.24.0

... как клиент NFS.

У меня есть общий ресурс nfs4 на сервере; мой вход в /etc/fstab на клиенте так:

172.16.0.5:/mydata/media/user/mydata_nfs nfs4 nosuid,nodev,nofail,x-gvfs-show,rw,relatime,user,noauto,uhelper=udisks2 0 0

Я вручную создал /медиа/пользователь/mydata_nfs, который при запуске имеет следующие разрешения:

$ ls -la /медиа/пользователь/
всего 20
drwxr-x---+ 5 root root 4096 25 июля 15:56 .
drwxr-xr-x 3 root root 4096 19 июля 18:43 ..
...
drwxr-xr-x 2 пользователя пользователя 4096 25 июля 12:11 mydata_nfs

Приведенная выше запись fstab позволяет не монтировать общий ресурс при запуске, поэтому мне приходится вручную щелкать в графическом интерфейсе «проводника» (здесь каха), чтобы сделать это; однако, как только общий ресурс смонтирован, право собственности (и временная метка) меняется:

$ ls -la /медиа/пользователь/
всего 20
drwxr-x---+ 5 root root 4096 25 июля 15:56 .
drwxr-xr-x 3 root root 4096 19 июля 18:43 ..
...
drwxrwxrwx 6 root root 4096 29 июля 06:15 mydata_nfs

На NFS-сервере no_root_squash включен; насколько я понимаю, в этом случае UID/GID от клиента-пользователя распространяется на сервер, а так как на сервере у меня тоже пользователь с uid:gid 1000:1000 (как на клиенте), это отлично работает для меня (когда я создаю файлы и т. д. внутри общего ресурса из командной строки на клиенте, владение пользователь хранится на общем ресурсе) - за исключением точки монтирования на клиенте, принадлежащей пользователю root (что вызывает у меня проблемы: некоторые программы, установленные щелчок даже не укажет общий ресурс как каталог).

Кроме того, даже с приведенной выше строкой fstab (которая требует от меня монтирования вручную), когда я пытаюсь размонтировать из графического интерфейса, я не могу и получаю диалоговое окно с:

Не удалось размонтировать mydata_nfs
Ошибка поиска объекта для блочного устройства 0:56

Итак, что я хотел бы иметь:

  • Общий ресурс NFS автоматически монтируется при запуске — с пользователь владение долей
  • Разрешить пользователю размонтировать общий ресурс из графического интерфейса

Возможно ли это вообще - и какой должна быть правильная строка fstab для этого?


Обратите внимание, что жидкость Параметр fstab (который в противном случае делает такое сопоставление для ntfs) здесь не работает — системный журнал будет жаловаться:

29 июля 07:03:49 монтирование mypc [1148]: mount.nfs4: указан неверный параметр монтирования
29 июля, 07:03:49 ядро ​​mypc: [17.179641] nfs4: неизвестный параметр «uid»
29 июля, 07:03:49 mypc systemd[1]: media-user-mydata_nfs.mount: процесс монтирования завершен, код = завершен, статус = 32/н/д
29 июля, 07:03:49 mypc systemd[1]: media-user-mydata_nfs.mount: Ошибка с результатом «код выхода».
29 июля, 07:03:49 mypc systemd[1]: не удалось смонтировать /media/user/mydata_nfs.

Также allow_other неизвестный параметр для NFS.

Рейтинг:0
флаг fr

Хорошо, немного дальше, это то, что я пробовал:

После /медиа/пользователь/mydata_nfs монтировался вручную (от каха GUI) и появился как принадлежащий пользователю root (как в ОП), я сделал:

sudo chown пользователь: пользователь /media/user/mydata_nfs

... и действительно, это изменило право собственности, которое, как я ожидал, сначала будет временным (только для текущего сеанса). Поскольку я не могу размонтировать из графического интерфейса, я перезагрузился, а затем при следующей загрузке смонтировал раздел вручную (из каха графический интерфейс) снова. Я был очень удивлен, увидев, что об этом вспомнили, так что теперь в списке у меня есть:

$ ls -la /медиа/пользователь/
всего 20
drwxr-x---+ 5 root root 4096 25 июля 15:56 .
drwxr-xr-x 3 root root 4096 19 июля 18:43 ..
...
drwxrwxrwx 6 пользователь пользователь 4096 29 июля 08:05 mydata_nfs

Так что по какой-то причине это изменение владельца смонтированного раздела NFS сохраняется, что хорошо, поскольку подходит для моего варианта использования.

Затем я просто удалил нетавто от /etc/fstab запись - и теперь у меня есть раздел, смонтированный при загрузке, с пользователь показан как владелец - именно так, как я этого хочу.

Однако оказывается, что этого недостаточно для установки программного обеспечения щелчок использовать его - как указано в Приложение Snap не видит файлы из другого раздела :

Снапы обычно ограничены. По умолчанию снимки не имеют доступа ни к чему, кроме своих собственных областей для записи, но они могут получать разрешения через интерфейсы. Есть два интерфейса, которые обеспечивают возможность доступа к файлам помимо стандартного: дом интерфейс, и съемные медиа интерфейс. ...

Так что в этом случае у меня сработало монтирование с привязкой, как ответил в этом посте:

$ mkdir ~/mydata_nfs
$ sudo mount --bind /media/user/mydata_nfs ~/mydata_nfs

... и затем указывая на щелчок программа для чтения/записи файлов в ~/mydata_nfs.


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

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.