我在ubuntu中使用samba创建了一个共享文件夹,以便Windows机器可以使用以下命令访问它:
$ sudo net usershare add documents /home/developer/documents "Developer documents" everyone:F guest_ok=y
我对该文件夹授予777权限:
$ sudo chmod 0777 /home/developer/documents
然后我检查我做了什么
$ sudo net usershare info --long
当我想查看该文件夹是否在所有Windows机器上都可见时,您可以看到。但是,您无法访问该文件夹并收到以下错误:"权限被拒绝"
/var/log/samba/log.ip-domain
中的消息是:
process_usershare_file: stat of /var/lib/samba/usershares/backuparsac failed. Permission denied
然后,我尝试向smb.conf
[documents]
comment = Documents for Developers
path = /home/developer/documents
browseable = yes
writable = yes
read only = yes
guest ok = yes
directory mask = 0777
但是Permission denied的错误不断出现。还有什么我需要做的吗?我需要这个文件夹可以被所有Windows机器访问。
注意:我使用的是Ubuntu 14.04
答案 0 :(得分:11)
原因是Samba不会将其用户与系统同步。 这解决了我的问题,在Kubuntu 14.10:
sudo apt-get install libpam-smbpass
sudo service samba restart
如果您不想将用户与PAM同步,只需将用户添加到Samba的密码数据库:
sudo smbpasswd -a <user>
之后,用户将能够在Samba机器上打开共享文件夹。
答案 1 :(得分:5)
您的配置文件似乎没问题。
我认为您的父文件夹中可能存在权限问题。
我建议您检查/ home和/ home / developer都有755而不是750权限。
然后检查sudo -u nobody ls / home / developer / documents。
如果ls成功,samba可能也会按预期工作