Доброго утра страна!!!
Вот решил поставить самбу да не просто поставить а что бы раздавать права на папки\файлы можно было из windows но вот беда при добавление пользователя "доступ закрыт" . Самбу собрал с поддержкой ACL при
smbd -b | grep ACL
выдает
HAVE_SYS_ACL_H
HAVE_POSIX_ACLS
из консоли права могу расскидывать без проблем но из винды как и писал ДОСТУП ЗАКРЫТ
вот мой конфиг
[global]
netbios name = dfs
workgroup = DFS
server string = Files Server
smb passwd file = /usr/local/samba/private/smbpasswd
encrypt passwords = Yes
security = user
log file = /usr/local/samba/var/log.%m
socket options = IPTOS_LOWDELAY TCP_NODELAY
domain master = Yes
local master = Yes
preferred master = Yes
os level = 255
dns proxy = Yes
name resolve order = lmhosts host bcast
bind interfaces only = True
interfaces = eth0 192.168.0.6
hosts deny = ALL
hosts allow = 192.168.0. 127.0.0.1
debug level = 1
level2 oplocks = True
read raw = no
domain logons = yes
logon home = \\dfs\%U
logon path = \\dfs\%U
unix charset = koi8-r
dos charset = cp866
preserve case = yes
short preserve case = yes
use sendfile = no
keepalive = 30
smb ports = 139
acl compatibility = auto
nt acl support = yes
Есть дельные советы по этому поводу?
Надо смонтировать файловую систему(ext2/ext3) с опцией acl.Если добавить при сборке ядра опции (если не установлены)
#для ext2
CONFIG_EXT2_FS_XATTR
#для ext3
CONFIG_EXT3_FS_XATTR
а при монтировании опцию user_xattr
то станет возможным использовать нижеследующие опции (IMHO очень полезно)
map acl inherit = yesmap hidden = no
map system = no
map archive = no
store dos attributes = yes
>Надо смонтировать файловую систему(ext2/ext3) с опцией acl.
>
>Если добавить при сборке ядра опции (если не установлены)
>#для ext2
>CONFIG_EXT2_FS_XATTR
>#для ext3
>CONFIG_EXT3_FS_XATTR
>а при монтировании опцию user_xattr
>то станет возможным использовать нижеследующие опции (IMHO очень полезно)
>map acl inherit = yes
>
>map hidden = no
>map system = no
>map archive = no
>store dos attributes = yes
Сделал все как ты написал результат тот же :((
>>Надо смонтировать файловую систему(ext2/ext3) с опцией acl.
>>
>>Если добавить при сборке ядра опции (если не установлены)
>>#для ext2
>>CONFIG_EXT2_FS_XATTR
>>#для ext3
>>CONFIG_EXT3_FS_XATTR
>>а при монтировании опцию user_xattr
>>то станет возможным использовать нижеследующие опции (IMHO очень полезно)
>>map acl inherit = yes
>>
>>map hidden = no
>>map system = no
>>map archive = no
>>store dos attributes = yes
>
>
>Сделал все как ты написал результат тот же :((А она вобще может изменять acl когда сома выступает вроли PDC?
>А она вобще может изменять acl когда сома выступает вроли PDC?
Да. Разница в том, что PDC предоставляет возможность входа в домен (domain logons = yes), является главным броузером домена (domain master = yes, local master = yes)Все должно работать. В чем выражена проблема? Проверить что acl и user_xattr задействованы для файловой системы можно выполнив команду mount
должно быть что-то типа:
/dev/sda1 on /mnt/samba type ext3 (rw,noatime,acl,user_xattr)
Еще некоторые дополнения:
> bind interfaces only = True
> interfaces = eth0 192.168.0.6
в interfaces надо явно прописать 127.0.0.1Возможно тебе поможет опция
dos filemode = yes
>Еще некоторые дополнения:
>> bind interfaces only = True
>> interfaces = eth0 192.168.0.6
>в interfaces надо явно прописать 127.0.0.1
>
>Возможно тебе поможет опция
>dos filemode = yes
Вот вывод mount
/dev/sda3 on /mnt/samba type ext3 (rw,acl,user_xattr)
Не помагло опять при попытке добавить пользователя доступ закрыт
Через консоль все оки с помощю setfacl могу разграничить как угодно и
кому угодно а вот из винды не получается
>>Еще некоторые дополнения:
>>> bind interfaces only = True
>>> interfaces = eth0 192.168.0.6
>>в interfaces надо явно прописать 127.0.0.1
>>
>>Возможно тебе поможет опция
>>dos filemode = yes
>Вот вывод mount
>/dev/sda3 on /mnt/samba type ext3 (rw,acl,user_xattr)
>Не помагло опять при попытке добавить пользователя доступ закрыт
>Через консоль все оки с помощю setfacl могу разграничить как угодно и
>
>кому угодно а вот из винды не получается
Да в логе пусто
Все должно работать. Надо смотреть логи. Можно поставить более расширенное ведение логов по acl, например так
log level = acls:1и дальше повышать цифру, пока не станет видно проблему. Вот часть конфига с работающего сервера, относящаяся к acl:
nt acl support = yes
acl compatibility = auto
map acl inherit = yesmap hidden = no
map system = no
map archive = no
store dos attributes = yesdos filemode = yes
Можно еще попробовать
acl compatibility = win2k
>Можно еще попробовать
>acl compatibility = win2kВот кусок лога
[2005/10/12 14:00:44, 3] smbd/posix_acls.c:convert_canon_ace_to_posix_perms(2501)
convert_canon_ace_to_posix_perms: Too many ACE entries for file hhh to convert to posix perms.
[2005/10/12 14:00:44, 3] smbd/posix_acls.c:set_nt_acl(3144)
set_nt_acl: failed to convert file acl to posix permissions for file hhh.
Что такое ACE?
>>Можно еще попробовать
>>acl compatibility = win2k
>
>Вот кусок лога
>[2005/10/12 14:00:44, 3] smbd/posix_acls.c:convert_canon_ace_to_posix_perms(2501)
> convert_canon_ace_to_posix_perms: Too many ACE entries for file hhh to convert
>to posix perms.
>[2005/10/12 14:00:44, 3] smbd/posix_acls.c:set_nt_acl(3144)
> set_nt_acl: failed to convert file acl to posix permissions for
>file hhh.
>Что такое ACE?
Я в отчаение не фига не понятно что делать консоль мне конечно нравиться
можно написать воспамогательные скрипты для удобства но хочется использовать более удобные средства
smbd/posix_acls.c:convert_canon_ace_to_posix_perms(2501)
>> convert_canon_ace_to_posix_perms: Too many ACE entries for file hhh to convert
>>to posix perms.
>>[2005/10/12 14:00:44, 3] smbd/posix_acls.c:set_nt_acl(3144)
>> set_nt_acl: failed to convert file acl to posix permissions for
>>file hhh.
>>Что такое ACE?ACE - это access control entry(запись), то из чего состоит ACL.
Уже вся нужная информация есть: искать по гуглу
"convert_canon_ace_to_posix_perms" "Too many ACE entries"
IMHO надо попробовать выставлять из винды права на таких файлах/каталогах, на которые не выставлены ACL в линуксе: между POSIX ACL и NT ACL нет прямого соответствия, т.е. возможны ситуации, когда одни права нельзя без потерь преобразовать в другие (подробно можно прочитать в доке по cygwin - там расписано с примерами). И еще "Too many ACE entries" наводит на мысли, что их действительно много, стОит раздавать права на группы. Права на отдельных пользователей - это исключительная ситуация и в основном в таком случае применяется немного ACE.
Нужен ли для добавления пользователя winbindd?
>Нужен ли для добавления пользователя winbindd?winbind нужен, если планируется подключение к самбе из нескольких доменов с разными SID, а также для для поддержания единого UID/GID пространства на машинах через nsswitch.conf
"для добавления пользователя"??? для добавления куда? если в систему(как пользователя самбы), посредством графических утилит винды, то IMHO нет. Дальше, я долго-долго писал, но понял, что не смогу в двух словах описать механизмы. В доке, которая идет с самбой все это описано.
Та же проблема,пишет отказано в доступе,не могу понять как исправить это...(