我无论如何也无法弄清楚这一点。
我在 ubuntu 机器上安装并设置了 samba,在 Win7 机器上我可以看到我创建的所有共享。
我在 ubuntu 上创建了两个用户,它们映射到 Windows 中的用户。在 ubuntu 上,他们都是管理员,用户 A 和 B 在 Windows 上,用户 A 是管理员,用户 B 是高级用户。
用户 A 可以看到两个共享并对其进行访问,但用户 B 可以看到所有内容,但只能访问主目录,另一个目录会引发错误。
我在 Ubuntu 中有两个驱动器,这是 smb.config 文件(我是 samba 新手):
[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
wins support = no
dns proxy = yes
name resolve order = lmhosts host wins bcast
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
; usershare max shares = 100
usershare allow guests = yes
以下是分享部分:
用户 A 和 B 都可以从 Windows 访问。没问题。
[homes]
comment = Home Directories
browseable = no
writable = yes
用户 A 和 B 都可以看到此共享,但只有用户 A 可以访问它。用户 B 会抛出错误。
[stuff]
comment = Unixmen File Server
path = /media/data/appinstall/
browseable = yes
;writable = no
read only = yes
hosts allow =
media/data/appinstall/ 的权限如下:
appInstall 属性:
share name: stuff
Allow others to create and delete files in this folder is cheeked
Guest access (for people without a user account) is checked
权限:
Owner: user A
Folder Access: Create and delete files
File Access: ---
Group: user A
Folder Access: Create and delete files
File Access: ---
Others
Folder Access: Create and delete files
File Access: ---
我很茫然,需要做这项工作。有什么想法吗?
目标是拥有这样的设置。Windows 计算机上有 3 个用户。数据驱动器上的每个用户都有自己的个人文件夹,只有他们才能访问该文件夹,然后是另一个文件夹,其中 2 个用户拥有只读权限,另一个用户拥有完全访问权限。
我以前在 Windows 上进行过此设置,但是发生那件事之后,我永远不会再使用 Windows,所以我会继续使用 Unix!
我真的陷入困境。我正在运行 Ubuntu 11。如果这样可以让生活更轻松,我可以重新格式化并安装版本 10。我从周三下午 3 点开始就一直在处理这个问题。
谢谢。
答案1
我在 Windows 7 上遇到了同样的问题,为了解决这个问题,我所要做的就是更改 smb.conf
在终端运行
sudo gedit /etc/samba/smb.conf
然后改变
wins support = no
name resolve order = lmhosts host wins bcast
到
wins support = yes
name resolve order = wins lmhosts host bcast
然后重启 samba
sudo service smbd restart
答案2
如果共享文件夹位于 FAT32 卷(例如闪存卡)上,并且 Ubuntu 无法添加权限供 samba 检查,则可能会发生这种情况。我不确定在这种情况下定义访问权限的正确方法是什么,但简单的解决方法是将文件夹移动到 ext4 卷并从那里共享。