Как предоставить разрешения на запись в Samba?

13

У меня проблемы с разрешениями на чтение / запись на моем сервере Samba. Как мне исправить мои smb.conf и права доступа к файлам, чтобы иметь более унифицированный доступ?

smb.conf

[global]
workgroup = workgroup
netbios name = LnxNAS
server string = %h
wins support = no
dns proxy = no
security = user
encrypt passwords = yes
panic action = /usr/share/samba/panic-action %d

[homes]
comment = Home Directories

[Video]
path = /data/eric/Videos

[Music]
path = /data/eric/Music

[Pictures]
path = /data/eric/Pictures

[data]
path = /data
writeable = Yes

мой ls -l of / data / eric / картинки

drwxrwxrwx 2 ericfoss root     4096 2011-03-13 22:09 Android Projs
drwxrwxrwx 3 ericfoss root     4096 2011-03-13 22:09 Automotive
-rwxrwxrwx 1 ericfoss root     2439 2010-12-17 17:03 BDD reduction.png
-rwxrwxrwx 1 ericfoss root     2722 2010-12-17 16:55 BDD Tree.png
-rwxrwxrwx 1 ericfoss root     7341 2010-12-17 16:46 BDD Tree.xcf
-rwxrwxrwx 1 ericfoss root    72421 2007-11-22 22:59 Bum Ninja.jpg
-rwxrwxrwx 1 ericfoss root    32152 2010-12-17 21:25 cell transition.png
-rwxrwxrwx 1 ericfoss root    40212 2010-12-17 17:55 control graph.png
drwxrwxrwx 2 ericfoss root     4096 2011-03-13 22:09 Crap
-rwxrwxrwx 1 ericfoss root       82 2010-09-20 17:18 desktop.ini
ericfoss@SERVER:~$

Выход из перезапуска samba4

sudo /etc/init.d/samba4 restart
 * Stopping Samba 4 daemon samba              [ OK ]
 * Starting Samba 4 daemon samba
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"
Unknown parameter encountered: "writeable"
Ignoring unknown parameter "writeable"
Unknown parameter encountered: "valid users"
Ignoring unknown parameter "valid users"
                                              [ OK ]

Я не могу удалять, переименовывать или создавать файлы ...

Эрик Фоссум
источник

Ответы:

15

Samba имеет свой собственный уровень контроля доступа для каждого ресурса. Есть два основных варианта

  • read only: по умолчанию каждый ресурс доступен только для чтения, независимо от разрешений файловой системы,
  • writeable: для того, чтобы разрешить доступ для записи, вы должны установить writeable = Yes.

Этого должно быть достаточно для решения проблемы. Но если вы хотите узнать больше о разрешениях Samba, например, о том, как установить umask, включить гостевую учетную запись или контролировать доступ для отдельных пользователей / групп, то прочитайте краткое руководство по разрешениям Samba .

Адам Быртек
источник
Проблема в том, что мой файл smb.conf не отвечает ожидаемому результату ... см. Обновление моего вопроса
Eric Fossum
Не могли бы вы объяснить мне, почему мои настройки не вступают в силу до перезапуска? (Да, я знаю о перезапуске sudo /etc/init.d/samba4)
Эрик Фоссум
5

Поскольку вам, кажется, не требуется интеграция с Active Directory, вам, вероятно, лучше установить Samba 3 (в пакете "samba"), а не Samba 4, который еще не выпущен.

«writeable = yes» является псевдонимом «read only = no» в Samba 3. Псевдоним был удален в Samba 4.

Jelmer
источник
1
Просто примечание для будущих читателей: приведенная выше информация была верна в прошлом, но устарела. Samba 4 теперь поддерживает "writeable = yes" (я использую Samba 4.3.11, и она работает нормально).
Blendenzo
3

У меня просто была такая же проблема, как у ОП. Конфигурация Samba была настроена правильно, но я все еще не мог писать файлы.

Моя проблема заключалась в том, что каталог, которым я хотел поделиться, был создан пользователем root, поэтому мне пришлось обращаться к chownэтому каталогу моему обычному пользователю, и все работает нормально. Я могу создавать /deleteи /modifyфайлы и папки сейчас.

Ljudotina
источник