Моя настройка следующая: у меня есть веб-приложение, которое создает записи пользователей в каталоге LDAP. Затем он вызывает скрипт, который делает созданного пользователя владельцем файла.
Я настроил LDAP, и созданные пользователи показываются в getent passwd
. Тем не менее, chown
терпит неудачу, жалуясь на «недопустимого пользователя». Чего мне не хватает?
Запись LDAP:
dn: sn=rabe,ou=users,dc=example,dc=org
sambaLMPassword: 01FC5A6BE7BC6929AAD3B435B51404EE
sambaPrimaryGroupSID: S-1-5-21-3583809738-3196142711-508974553-100
displayName: Testaccount Rabe
sambaLogonScript: _rabe.bat
objectClass: top
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: sambaSamAccount
userPassword:: e1NIQX1xVXFQNWN5eG02WWNUQWh6MDVIcGg1Z3Z1OU09
uidNumber: 1004
uid: rabe
cn: rabe
sambaPwdLastSet: 1507196636
loginShell: /bin/false
sambaAcctFlags: [UX ]
gidNumber: 100
sambaPwdMustChange: 2147483647
sambaNTPassword: 0CB6948805F797BF2A82807973B89537
gecos: rabe
sambaSID: S-1-5-21-3583809738-3196142711-508974553-{uidNumber*2+1000}
description: LDAP Group
homeDirectory: /home/rabe
sambaKickoffTime: 0
sn: rabe
sambaPasswordHistory: 000000000000000000000000000000000000000000000000000000
000000000000000000
sambaLogonHours: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
structuralObjectClass: inetOrgPerson
entryUUID: 737627e0-3dfd-1037-980f-b9017388453e
creatorsName: cn=admin,dc=example,dc=org
createTimestamp: 20171005094356Z
entryCSN: 20171005094356.722950Z#000000#000#000000
modifiersName: cn=admin,dc=example,dc=org
modifyTimestamp: 20171005094356Z
Пользователь указан в getent passwd
:
me@host:~$ getent passwd|diff /etc/passwd -
40a41
> rabe:x:1004:100:rabe:/home/rabe:/bin/false
Однако, chown
не работает:
me@host:~$ touch test
me@host:~$ chown rabe test
chown: ungültiger Benutzer: »rabe“
Чего мне не хватает? Что я могу проверить дальше?
ОС: Ubuntu 16.04 Xenial
Файловая система: ext4