Непонятки с правами на Share

Доброго времени суток!

CDS-11.9-r3
CLDG-11.9-r1

Имеется странная проблема с правами на файлы, создаваемыми пользователями в Share.
При создании файла в каталоге share полностью игнорируются права группы на запись. При этом если уже созданный файл скопировать то права у него выставляются правильные, согласно smb.conf.

s -la ~/Share/test/
итого 20
drwsrws---+  3 tester4 Unix_Domain_Users     0 Ноя 23 18:07 .
drwxrwx--x+ 21 tester4 Unix_Domain_Users     0 Ноя 23 14:28 ..
drwxrws---+  2 tester4 Unix_Domain_Users     0 Апр 20  2011 iii
-rw-r-----+  1 tester4 Unix_Domain_Users     8 Ноя 23 18:06 nano.txt
-rw-rw----+  1 tester4 Unix_Domain_Users     5 Ноя 23 15:09 root
-rw-rw-r--+  1 tester4 Unix_Domain_Users 10752 Окт 13 15:27 коммер.предлож.-2 (1).xls
-rw-rw-r--+  1 tester4 Unix_Domain_Users     0 Ноя 23 16:11 новый файл

Где “новый файл” создан в дом. каталоге и скопирован через drag&drop gnom’а. а файл nano.txt создан непосредственно в Шаре.

[share]
    path = /var/calculate/server-data/samba/share
    comment = Share Files
    browseable = yes
    writable = yes
    hide unreadable = yes
    security mask = 777
    create mask = 666
    force create mode = 666
    directory mask = 777
    force directory mode = 777

(такие права поставил временно для нахождения проблемы). При этом на изменение последнего разряда (“для других”) система реагирует.
Ни изменение ACL, ни смена umask на локальной машине ничего не дает.

tester4@Buh5 ~ $ umask 0002
tester4@Buh5 ~ $ nano ~/Share/test/nano1.txt
tester4@Buh5 ~ $ ls -la ~/Share/test/
итого 20
drwsrws---+  3 tester4 Unix_Domain_Users     0 Ноя 23 18:14 .
drwxrwx--x+ 21 tester4 Unix_Domain_Users     0 Ноя 23 14:28 ..
drwxrws---+  2 tester4 Unix_Domain_Users     0 Апр 20  2011 iii
-rw-r-----+  1 tester4 Unix_Domain_Users     6 Ноя 23 18:14 nano1.txt
-rw-r-----+  1 tester4 Unix_Domain_Users     8 Ноя 23 18:06 nano.txt
-rw-rw----+  1 tester4 Unix_Domain_Users     5 Ноя 23 15:09 root
-rw-rw-r--+  1 tester4 Unix_Domain_Users 10752 Окт 13 15:27 коммер.предлож.-2 (1).xls
-rw-rw-r--+  1 tester4 Unix_Domain_Users     0 Ноя 23 16:11 новый файл

При создании файла в каталоге share полностью игнорируются права группы на запись. При этом если уже созданный файл скопировать то права у него выставляются правильные, согласно smb.conf.

При создании файла в unix происходит наложение маски umask (которая у вас скорее всего равна 022), поэтому удаляются права на запись всем и группе. Причем это происходит на стороне сервера. Попробуйте запустить samba службу с umask 002.

Попробуйте запустить samba службу с umask 002.
Если под этим понимается выставление umask на сервере 002 и перезапуск самбы, результаты получились следующие:

Клиент:

tester4@Buh5 ~ $ umask
0002
tester4@Buh5 ~ $ nano ~/Share/test/client_002.txt
tester4@Buh5 ~ $ ls -la ~/Share/test/
итого 12
drwsrws---+  3 tester4 Unix_Domain_Users     0 Ноя 24 09:24 .
drwxrwx--x+ 21 tester4 Unix_Domain_Users     0 Ноя 23 14:28 ..
-rw-r-----+  1 tester4 Unix_Domain_Users    10 Ноя 24 09:24 client_002.txt
drwxrws---+  2 tester4 Unix_Domain_Users     0 Апр 20  2011 iii
-rw-rw-r--+  1 tester4 Unix_Domain_Users 10752 Окт 13 15:27 коммер.предлож.-2 (1).xls

Теперь логинимся пользователем на сервере:

tester4@lin-valentine / $ umask
0002
tester4@lin-valentine / $ ls -la /var/calculate/server-data/samba/share/test
итого 40
drwsrws---+  3 root    Buh   4096 Ноя 24 09:24 .
drwxrwx--x+ 21 root    root  4096 Ноя 23 14:28 ..
-rw-r-----   1 tester4 Buh     10 Ноя 24 09:24 client_002.txt
drwxrws---+  2 root    Buh   4096 Апр 20  2011 iii
-rw-rw-r--   1 tester4 Buh  10752 Окт 13 15:27 коммер.предлож.-2 (1).xls
tester4@lin-valentine / $ nano /var/calculate/server-data/samba/share/test/server_002.txt
tester4@lin-valentine / $ ls -la /var/calculate/server-data/samba/share/testитого 44
drwsrws---+  3 root    Buh   4096 Ноя 24  2011 .
drwxrwx--x+ 21 root    root  4096 Ноя 23 14:28 ..
-rw-r-----   1 tester4 Buh     10 Ноя 24 09:24 client_002.txt
drwxrws---+  2 root    Buh   4096 Апр 20  2011 iii
-rw-rw----   1 tester4 Buh     11 Ноя 24  2011 server_002.txt
-rw-rw-r--   1 tester4 Buh  10752 Окт 13 15:27 коммер.предлож.-2 (1).xls

и получается что берутся вообще непонятные правила присвоения прав (660) (!).

и получается что берутся вообще непонятные правила присвоения прав (660) (!).

А какие у вас ACL права на /var/calculate/server-data/samba/share/test ?

getfacl /var/calculate/server-data/samba/share/test
tester4@lin-valentine / $ getfacl /var/calculate/server-data/samba/share/test
getfacl: Removing leading '/' from absolute path names
 # file: var/calculate/server-data/samba/share/test
 # owner: root
 # group: Buh
 # flags: ss-
user::rwx
group::rwx
group:Buh:rwx
group:IT:rwx
mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group:Unix_Domain_Users:rw-
default:group:Buh:rwx
default:mask::rwx
default:other::---

сам пользователь:

id tester4
uid=1010(tester4) gid=313(Unix_Domain_Users) группы=313(Unix_Domain_Users),1011(Buh),314(TerminalUser)

в кач-ве эксперимента создал test2:

getfacl /var/calculate/server-data/samba/share/test2
getfacl: Removing leading '/' from absolute path names
 # file: var/calculate/server-data/samba/share/test2
 # owner: root
 # group: root
user::rwx
group::rwx
group:Unix_Domain_Users:rwx
mask::rwx
other::r-x
default:user::rwx
default:group::rwx
default:group:Unix_Domain_Users:rwx
default:mask::rwx
default:other::r-x

при создании файла всё тоже самое…

tester4@lin-valentine / $ ls -la /var/calculate/server-data/samba/share/test2
итого 20
drwxrwxr-x+  2 root    root              4096 Ноя 24  2011 .
drwxrwx--x+ 22 root    root              4096 Ноя 24 09:47 ..
-rw-r--r--   1 tester4 Unix_Domain_Users    5 Ноя 24  2011 cl_002.txt
-rw-rw-r--   1 tester4 Unix_Domain_Users    5 Ноя 24  2011 server_002.txt

А как Вы запускаете samba службу с umask 002 ?

 А как Вы запускаете samba службу с umask 002 ?

в /etc/profile выставил 002 и для надежности перезагрузил сервер.
это не правильно?

Попробуйте установить umask в /etc/conf.d/samba для параметров smbd_start_options="-D -k 002" и nmbd_start_options="-D -k 002".

К сожалению:

* samba -> start: smbd ...

Invalid option -k: unknown option

* samba -> start: nmbd ...

Invalid option -k: unknown option

Попробуйте добавить -k 002 для параметров "smbd_start и nmbd_start перед --.

добавил, перезапустил самбу, но никаких изменений не увидел.

я уже думаю: может это связано с опциями монтирования каталога Share?
Ведь на самом сервере параметры umask работают, на локальной машине (например создать файл в /tmp) тоже. Не работает, точнее где-то, как мне кажется, накладывается “маска” только в примонтированном каталоге Share.
Но:

tester4@Buh5 ~ $ mount
--------
//lin-valentine.valentine.loc/remote on /var/calculate/remote type cifs (rw,mand)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
//lin-valentine.valentine.loc/share on /home/tester4/Share type cifs (rw,mand)
//lin-valentine.valentine.loc/unix on /home/.tester4 type cifs (rw,mand)
//lin-valentine.valentine.loc/homes on /home/tester4/Home type cifs (rw,mand)
----

никаких указаний на маску я не вижу.

Тем, не менее, спасибо большое за помощь!