Назад | Перейти на главную страницу

Проблемы с режимом «Только чтение» на общей папке Samba с компьютеров Windows

У нас есть сервер Ubuntu 10.04, на котором есть несколько общих ресурсов Samba, к которым подключаются рабочие станции Windows. Каждая рабочая станция Windows имеет действительное имя пользователя / пароль для доступа к общим ресурсам, доступ к которым ограничен Samba.

Проблема, с которой мы сталкиваемся, заключается в том, что Samba, похоже, не может имитировать способ обработки атрибутов «Только для чтения» в Windows.

Скажем, у меня есть два пользователя, UserA и UserB, обе группы под названием Staff - UserA создает файл, который может читать / записывать группа (например, chmod rwxrwx ---). Если UserA затем устанавливает флаг «Только для чтения», это изменяет права доступа на r-xr-x --- (т.е. нет записи для кого-либо).

Поскольку UserB находится в той же группе, что и UserA, они должны иметь возможность удалить разрешение «Только чтение» - однако они не могут, поскольку Samba не разрешает этого.

Есть ли способ заставить Samba разрешить пользователям в одной группе удалять «Только для чтения» из файла, созданного не ими?

Редактировать:
Samba smb.conf выглядит следующим образом:

Доля определяется в smb.conf как:

[global]
    log file = /var/log/samba/log.%m  
    passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .  
    obey pam restrictions = yes  
    map to guest = bad user  
    encrypt passwords = true  
    passwd program = /usr/bin/passwd %u  
    passdb backend = tdbsam  
    dns proxy = no  
    netbios name = ubsrv  
    server string = ubsrv  
    unix password sync = yes  
    os level = 20  
    syslog = 0  
    usershare allow guests = yes  
    panic action = /usr/share/samba/panic-action %d  
    max log size = 1000  
    pam password change = yes  
    workgroup = workgroup  

[Projects]  
    valid users = @Staff   
    writeable = yes  
    user = @Staff  
    create mode = 0777  
    path = /srv/samba/Projects  
    directory mode = 0777  
    store dos attributes = Yes  

Сама папка выглядит так:

ls -l /srv/samba/
drwxrwxrwx 2 nobody Staff 4096 2010-11-04 10:09 Projects

Заранее спасибо,
Мэтт

Нам нужна дополнительная информация о том, как настраиваются акции. Распечатка определений акций может помочь. Вы используете ACL или определяете разрешения для общего ресурса из определения общего ресурса? Что вы имеете в виду под «установкой флага только для чтения»? Вы имеете в виду щелкнуть правой кнопкой мыши по файлу и установить флажок "Только чтение"? Если так, то это не лучший способ, и вам следует изучить возможность реализации ACL. Файловая система Windows XP сильно зависит от них, и SAMBA может отлично с ними работать.

Если вы не хотите заставлять всех подключаться как одного пользователя, вы можете принудительно установить правильное членство в группе, используя строку: «force group». Людей сбивает с толку то, что пользователь уже может быть членом локальной группы Linux, но что касается SMB, то здесь важна группа, которую вы «подключаетесь как» из Windows.

ПРИМЕР:

[someshares]
        path=/path/to/someshares
        writable = yes
        browsable = yes
        valid users = @somegroup
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        **force group = somegroup**