尝试从Windows客户端连接时出现Samba身份validation问题

我有一台运行Ubuntu和Samba的Linux服务器。 我在Samba中创build了两个指向由用户“cameron”拥有的目录的共享。

当我试图连接到Windows 7上的这些共享连接,并允许我看到这些文件,但它们是只读的。 这是来宾用户所需的操作,而不是经过身份validation的用户。

我在Windows客户端上的用户是“Cameron”,并且与Linux用户“cameron”具有相同的密码。

我不认为我的Windows用户已经对Linux用户进行了authentication。 我甚至创build了一个users.map文件来将用户cameron(linux)映射到Cameron(windows),但是仍然不起作用。

这是我的桑巴configuration文件(更新)

[global] server string = %h server (Samba, Ubuntu) map to guest = Bad User passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . username map = /etc/samba/users.map syslog = 0 log file = /var/log/samba/log.%m max log size = 1000 os level = 65 preferred master = Yes dns proxy = No wins support = Yes usershare allow guests = Yes panic action = /usr/share/samba/panic-action %d valid users = cameron write list = cameron [www] path = /usr/local/apache2/htdocs write list = @www-data force group = www-data guest ok = Yes [cameron] path = /home/cameron write list = @www-data force group = www-data guest ok = Yes 

  • Samba日志中是否有authentication错误?
  • 磁盘上的文件是否具有适当的权限? 如果一个文件只能在磁盘上读取,不pipe你告诉samba。

另外,如果您的Windows和Linux用户名相同,则不需要将用户添加到用户映射文件中。

我通过注意到我共享的文件夹的属性解决了我的服务器上的问题。 我有pipe理员作为组和Bj作为用户。

所以,我在我想分享下面的部分进入configuration文件:force group = admin force user = Bj

现在我的networking上的所有计算机都可以读取和写入该文件夹。

您还没有告诉Samba如何进行身份validation。 如果这是您自己的小型服务器,则可以使用用户安全性。

添加security = user并将encrypt passwords = yes到全局部分,然后运行“smbpasswd cameron”为Samba设置密码。 密码不一定要匹配你的Unix或Windows密码,但是匹配你的Windows密码会使生活更轻松。

然后重新启动桑巴,你应该可以login。

当我删除只读选项时,问题自行解决。 虽然从我的用户在写入列表中阅读文档应该已经覆盖这个设置。