У меня на ресурсе Samba такая ситуация:
$ ls -lha total 12K drwxr-xr-x 3 hka Domain Users 4.0K Jan 11 17:07 . drwxrwxrwt 19 root root 4.0K Jan 11 17:06 .. drwxr-xr-x 2 hka Domain Users 4.0K Jan 11 17:07 dir A -rw-r--r-- 1 hka Domain Users 0 Jan 11 17:07 file A
Как я могу изменить это на следующее, используя только клиент Windows SMB / CIFS (можно использовать сторонние приложения)
$ ls -lha total 12K drwxr-xr-x 3 hka Domain Users 4.0K Jan 11 17:07 . drwxrwxrwt 19 root root 4.0K Jan 11 17:06 .. drwxr-xr-x 2 hka ntpoweruser 4.0K Jan 11 17:07 dir A -rw-r--r-- 1 hka ntpoweruser 0 Jan 11 17:07 file A
Я использую списки ACL POSIX для общих ресурсов Samba. Вместе с acl group control
для Samba это позволяет мне делегировать управление разрешениями разным пользователям в зависимости от членства в группах.
Дело в том, что когда я создаю новый файл в общей папке Samba, я не могу указать его основную группу (ту, которая дает разрешение на изменение своих разрешений). Он настроен на мою основную группу (Пользователи домена) или группу, установленную с помощью force group
вариант в smb.conf
поделиться определением.
Удаление всех групп в окнах, кроме той, которую я хочу стать новой основной группой, не работает. Я могу изменить это, используя chgrp group folder/
как обычный пользователь через оболочку, но это неоптимально (не все пользователи являются пользователями * nix).
Попытка установить нового владельца для группы из окна разрешений файла Windows приводит к тому, что Samba возвращает отказ в разрешении со следующей записью в журнале:
[2012/01/05 21:13:03.349734, 3] smbd/nttrans.c:1899(call_nt_transact_set_security_desc) call_nt_transact_set_security_desc: file = projects/project A/New folder, sent 0x1 [2012/01/05 21:13:03.349774, 3] smbd/posix_acls.c:1208(unpack_nt_owners) unpack_nt_owners: unable to validate owner sid for S-1-5-21-4526631811-884521863-452487935-11025 [2012/01/05 21:13:03.349804, 3] smbd/error.c:80(error_packet_set) error packet at smbd/nttrans.c(1909) cmd=160 (SMBnttrans) NT_STATUS_INVALID_OWNER
Идентификатор безопасности правильный и принадлежит к группе, указанной в графическом интерфейсе пользователя.
Windows вообще не имеет понятия «первичная группа». Другими словами, пользователи домена просто имеют «Пользователи домена» в качестве своей основной группы, вероятно потому, что это первая группа, которую нужно вернуть в Samba.
Тем не менее, в Windows есть средства для указания «основной группы» для совместимости с Unix; в основном вам нужно было установить определенный атрибут схемы AD.
Если вы действительно хотите установить основную группу для пользователей Windows, вам нужно было сделать следующее:
Обдумывая это.
Итак, если пользователь домена создает файл / каталог, в чем проблема? Вы сказали, что он унаследовал gid от smb.conf, установленного группой force, что и должно быть. Итак, проблема в том, что когда пользователь домена создает файл, он не устанавливает файл / каталог для этого пользователя gid, а устанавливает gid для пользователей домена?
Может быть, не предусмотрены соответствующие райды? сопоставление групп smb