Ошибка сопоставления идентификатора пользователя с nfs и ldap

Ошибка сопоставления идентификатора пользователя с nfs и ldap

У меня есть экспорт NFS4 (из файловой системы FreeBSD ZFS) с отключенным root_squash (-maproot=root).

До недавнего времени я без проблем монтировал этот диск на нескольких машинах (в основном на сервере Ubuntu 12.04), но внезапно я столкнулся с этой странной проблемой:

На трех ОС, которые я пытался настроить (Mint 15, Ubuntu 13.04, Ubuntu 12.04 client), я делаю конфигурацию ldap и nfs и монтирую диски, и все выглядит нормально. Я вижу соответствующие имена пользователей и групп, сопоставленные с идентификаторами. Но если я пытаюсь chown любого из этих файлов любому другому пользователю, он всегда устанавливает их в nobody:nobody.

Обратите внимание, что на старых машинах этого не происходит. Я даже скопировал точные конфигурации (/etc/idmapd.conf, /etc/ldap*, /etc/pam.d/*) со старых машин Ubuntu 12.04 на новую, и это все равно не работает! Кроме того, похоже, что это в основном ограничено chown. Я могу трогать новые файлы как любой пользователь, и у них есть правильный владелец. Я понятия не имею, что происходит.

Единственная подсказка, которую я мог получить, это то, что сломанные машины выдают эту ошибку в системном журнале (после увеличения детализации в idmapd):

Sep 10 16:58:48 cabernet rpc.idmapd[1009]: nfs4_name_to_uid: calling nsswitch->name_to_uid
Sep 10 16:58:48 cabernet rpc.idmapd[1009]: nss_getpwnam: name '[email protected]' domain 'test.com': resulting localname '5000'
Sep 10 16:58:48 cabernet rpc.idmapd[1009]: nss_getpwnam: name '5000' not found in domain 'test.com'

В то время как рабочие машины дают:

Sep 10 17:03:44 node-2 rpc.idmapd[2906]: nfs4_uid_to_name: calling nsswitch->uid_to_name
Sep 10 17:03:44 node-2 rpc.idmapd[2906]: nfs4_uid_to_name: nsswitch->uid_to_name returned 0
Sep 10 17:03:44 node-2 rpc.idmapd[2906]: nfs4_uid_to_name: final return value is 0
Sep 10 17:03:44 node-2 rpc.idmapd[2906]: Client 18: (user) id "5000" -> name "[email protected]"

Похоже, по какой-то причине сломанные машины пытаются использовать идентификатор в качестве имени пользователя.

Любой совет?

решение1

Это было решено с помощью следующей настройки вhttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=500778

/etc/idmapd.conf
[General]
Cache-Expiration = 10

Вы можете посетитьhttp://permalink.gmane.org/gmane.linux.nfs/44754

Связанный контент