Вопрос или проблема
У меня такая настройка:
Есть ПК с Debian 10 с пользователем A (uid: 1000, gid: 1000), и я хочу смонтировать NFS- compartilhar, предоставляемый сервером на TrueNAS (12.0-U8.1), который принадлежит пользователю B (uid: 1006, gid: 1008). Я должен использовать NFS, так как этот общий ресурс используется rsnapshot, который нуждается как в мягких, так и в жестких ссылках. Обе машины находятся в одной локальной сети.
Я нашел этот форумный пост, но не понимаю, как именно смонтировать общий ресурс.
Что именно я должен написать в
- /etc/fstab
- /etc/idmapd.conf
- команда монтирования
- в любой другой конфигурационный файл?
С следующими настройками я могу смонтировать общий ресурс, но не могу его изменить.
/etc/fstab:
server:/mnt/pool/backup /mnt/server/backup nfs vers=4,addr=10.0.0.X,clientaddr=10.0.0.Y,noauto,rw,_netdev,users 0 0
/etc/idmapd.conf:
[General]
Verbosity = 0
Pipefs-Directory = /run/rpc_pipefs
# укажите ваш собственный домен здесь, если он отличается от FQDN без имени узла
Domain = dom
[Mapping]
Nobody-User = nfsnobody
Nobody-Group = nfsnogroup
[Translation]
Method = static
[Static]
[email protected] = A
команда монтирования:
/sbin/mount.nfs -v -o uid=1006,gid=1008 server:/mnt/pool/backup /mnt/server/backup
IP-адреса статически назначаются маршрутизатором.
Так как kerberos не задействован, NFS будет использовать AUTH_SYS, что означает, что сервер будет использовать uid
и gids
, отправленные клиентом. Нет способов заставить клиента изменить идентификаторы на лету (если только вы не создадите на клиенте пользователя с uid/gid 1006/1008). idmapd
задействован только тогда, когда используется kerberos или когда вызов GETATTR
возвращает строковые принципы как владельцев файлов и группы владельцев.
Чтобы решить вашу проблему, у вас есть два варианта: создать соответствующего пользователя или заставить сервер сопоставить хост клиента с данной комбинацией uid/gid. На обычном NFS-сервере вы должны обновить файл /etc/exports
следующим образом:
/data 10.0.0.Y(rw,squash_all,anonuid=1006,anongid=1008)
TrueNAS, вероятно, имеет аналогичные опции.
Ответ или решение
Для того чтобы корректно смонтировать NFS-общий ресурс с учетом пользователей на сервере TrueNAS и клиенте Debian 10, вам необходимо выполнить несколько шагов. Этот процесс включает настройку конфигурационных файлов, предоставление необходимых прав доступа и использование команд для монтирования. Ниже приведен подробный план действий.
Настройка конфигурационных файлов
1. Редактирование файла /etc/fstab
Файл /etc/fstab
содержит информацию о файловых системах, которые должны быть смонтированы при загрузке системы. Вам нужно настроить этот файл так, чтобы он правильно монтировал NFS-ресурс.
Пример строки для вашего случая:
server:/mnt/pool/backup /mnt/server/backup nfs defaults,rw,noauto,_netdev 0 0
- server — замените на IP-адрес вашего TrueNAS-сервера (например,
10.0.0.X
). - /mnt/pool/backup — путь на сервере к общему ресурсу.
- /mnt/server/backup — локальная точка монтирования на вашем Debian PC.
- Опция
rw
обеспечивает возможность записи, а неro
, которая только для чтения.
2. Настройка файла /etc/idmapd.conf
Файл /etc/idmapd.conf
необходим для правильной работы с идентификацией пользователей и групп в NFS. Вам нужно удостовериться, что конфигурация отображает ваши uid и gid корректно.
Пример настройки:
[General]
Verbosity = 0
Pipefs-Directory = /run/rpc_pipefs
Domain = yourdomain.local
[Mapping]
Nobody-User = nfsnobody
Nobody-Group = nfsnogroup
[Translation]
Method = static
[Static]
1000 = A
1006 = B
Обратите внимание:
- Замените
yourdomain.local
на ваш домен. - Не забудьте актуализировать строки, чтобы сопоставить uid и gid пользователей A и B.
3. Настройка экспортов на TrueNAS
На сервере TrueNAS необходимо указать, какие пользователи имеют доступ к NFS-ресурсу. Это делается путем изменения /etc/exports
(или эквивалентного для TrueNAS).
Пример записи:
/mnt/pool/backup 10.0.0.Y(rw,squash_all,anonuid=1006,anongid=1008)
Здесь:
10.0.0.Y
— это IP-адрес вашего Debian. Это указывает TrueNAS, что данный адрес может монтировать общий ресурс с указанными uid и gid.
Монтирование NFS-ресурса
Теперь, когда все настроено, вы можете смонтировать ресурс. Используйте следующую команду:
sudo mount -t nfs -o rw server:/mnt/pool/backup /mnt/server/backup
- Необходимо заменить
server
на фактический IP-адрес вашего TrueNAS. -t nfs
фиксирует тип файловой системы.- Убедитесь, что у вас есть права на запись в локальную точку монтирования
/mnt/server/backup
.
Дополнительные рекомендации
-
Тестирование доступа: После монтирования проверьте права доступа, создав файл:
touch /mnt/server/backup/testfile
-
Автоматический монтирование: Для автоматического монтирования при старте системы, убедитесь, что вы добавили правильную строку в файл
/etc/fstab
, как указано ранее. -
Устранение ошибок: Если вы столкнулись с проблемами прав доступа, проверьте настройки экспорта на TrueNAS и файлы конфигурации. Убедитесь, что пользователи правильно сопоставлены.
Следуя этим шагам, вы сможете успешно монтировать NFS-ресурс и получить полный доступ к нему с вашего Debian 10 PC.