Как смонтировать раздел с удаленного компьютера без прав sudo
Я хочу, чтобы пользователи моей группы, не имеющие прав sudo, могли подключить раздел на удаленном компьютере. Представьте, что у пользователя есть учетная запись на нескольких компьютерах, но большой объем данных лежит на жестком диске конкретного компьютера.
Есть ли способ, которым он может смонтировать этот раздел на своем текущем компьютере? Также пользователю не следует предоставлять права sudo.
Могу ли я сделать запись в /etc/fstab
что автоматически монтирует удаленный раздел в случае, если конкретный пользователь входит в систему на компьютере?
1 ответ
Проще всего было бы использовать NFS Share (на "сервере") и автомонтирование (autofs) на "клиентах".
Я предполагаю, что NFS установлен на сервере и клиенте в соответствии с первым комментарием от Дориана.
Скажем, раздел для совместного использования находится в /mydata, добавьте запись в файл /etc/exports на вашем сервере:
/mydata *(rw,sync,no_subtree_check)
(варианты зависят от ваших требований). После звонка sudo exportfs -a
раздел должен быть экспортирован (проверить с showmount -e
). То же самое должно быть верно после каждого перезапуска сервера.
На каждом клиенте установите autofs:
sudo apt-get install autofs
Отредактируйте файл /etc/auto.master, чтобы удалить знак комментария из строки для /net:
#
# Sample auto.master file
# This is a 'master' automounter map and it has the following format:
# mount-point [map-type[,format]:]map [options]
# For details of the format look at auto.master(5).
#
#/misc /etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
# "nosuid" and "nodev" options unless the "suid" and "dev"
# options are explicitly given.
#
/net -hosts
После перезапуска службы autofs (sudo service autofs restart
), вы должны иметь доступ к экспортированной файловой системе (системам) через
/net/<servername_or_ip>/<exportname>
Например, если имя вашего сервера "myserver", а экспортируемая файловая система - "/ mydata", вы можете ввести
ls /net/myserver/mydata
чтобы увидеть содержимое каталога.
Есть несколько преимуществ перед статической записью в /etc/fstab:
- Общий ресурс NFS монтируется только при доступе и будет отключен через некоторое время бездействия. Это экономит много ресурсов и пропускную способность сети.
- Если вы добавляете вторую папку на вашем сервере (скажем, "/myotherdata"), вам не нужно добавлять какую-либо запись на клиенте. Просто получить доступ к пути
/net/myserver/myotherdata
- Если вы добавите второй сервер с другим общим ресурсом (скажем, "/ moredata" на "secondserver"), путь будет
/net/secondserver/moredata
без каких-либо действий на клиента - Вы можете использовать один и тот же путь (/net/...) на каждом клиенте, даже на самом сервере, если вы установили и настроили autofs на сервере.
Если вы не хотите всегда вводить /net/...., просто добавьте ссылку, например, в свой домашний каталог:
ln -s /net/myserver/mydata .
Предостережение:
NFS сопоставляет пользователей / группы через UID/GID. Таким образом, "один и тот же" пользователь должен иметь одинаковый UID на всех компьютерах, что также относится к группам (GID). В противном случае права доступа искажены / повреждены. Нет проблем, если у вас есть централизованное управление пользователями.