无法访问Samba共享


8

我的本地主目录中有三个共享文件夹,也就是说,在我的Ubuntu桌面的/ home / me /上。所有这些都是使用Nautilus的右键菜单中的“共享选项”设置的。标准的“音乐”和“视频”文件夹的配置相同:选中“访客访问”框,但未选中“允许其他人创建和删除”。第三个文件夹称为“共享”,配置为不允许来宾访问,但允许其他人修改文件。我没有/etc/samba/smb.conf手动更改,仅使用了“共享选项”来创建和修改这些所谓的“共享”。

我的室友有两台Windows 7计算机和一台Ubuntu Netbook Remix上网本。我有上述运行10.04的台式机和笔记本电脑。这些机器均无法访问任何共享。尝试访问访客共享会导致出现消息

\\machine\directory is not accessible. The network name could not be found.

这是由运行Windows 2000的VM生成的错误消息。其他Windows计算机也生成类似的错误。Ubuntu笔记本电脑给出了错误Unable to mount location: Failed to mount Windows share。Hurrah,再次提供信息错误消息。这确实有很大帮助。

尝试从笔记本电脑浏览名为“共享”的文件夹时,遇到密码对话框。此行为与我在这种情况下尝试过的所有计算机相同。输入共享帐户的用户名和密码后,密码对话框会短暂消失,并被一个相同的对话框取代。没有错误消息(有用或无用)出现。

尝试使用VM浏览该文件夹时,结果相同,只是密码对话框会提示“错误的用户名或密码”。我的假设是,所讨论的用户名和密码是拥有共享的用户的用户名和密码。我尝试了在这种情况下可用的所有其他用户名和密码组合,结果是相同的。

我希望能够共享文件。与Windows计算机共享它们是一个不错的功能,或者如果可用的话也可以。实际上,我考虑在具有相同版本的相同操作系统的两台计算机之间共享文件,这是网络可用性的最低条件。

桑巴(Samba)上一次为我可靠地工作是十多年前。从那时起,我一直尝试断断续续地使用它,但仅取得了间歇性的成功。

哦,“首选项”菜单中的“个人文件共享”不会在位置→网络→我的服务器中输入任何内容。实际上,旧条目“ MY-SERVER”消失了,并由“ my-server上的koanhead的公共文件”代替,当我尝试从笔记本电脑打开它时,它给出了“ DBus.Error.NoReply:未收到消息”回答。”

我知道我来这里是很多关于Ubuntu的话题,但是另一方面,我每天花费数小时试图修复Ubuntu中的问题。这是一个追求卓越的好系统,这就是为什么这样的事情

  1. 需要工作; 要么

  2. 进行充分记录。

理想的情况是两者都是。无论如何,大声疾呼。希望有人会对这个问题有所了解。感谢所有为您的时间而烦恼阅读此墙文字的人。


1
这确实不是解决问题的好方法,但这是一种解决方法。只要/etc/samba/smb.conf中有map to guest = bad user在全球部分和份额有guest ok = yes那么如果你把在一个不正确的用户名和密码(但在这两个领域不是空白,只是把垃圾),事情似乎工作。我知道这很丑陋,我希望有人能提供更好的答案,所以我也可以修复我的设置。
— 杰里米

1
您是否考虑过使用scp?将winscp放在Windows机器上,并在机器上运行ssh服务器。设置和管理非常简单。应该不惜一切代价避免Windows文件共享协议,它们甚至不能很好地在Windows机器之间工作。我很早以前就放弃了桑巴舞。
— Unix管理员

@Jeremy,谢谢您的建议,我将在接下来的两天内进行尝试,并将结果发布在此处。@ user5883,是的,我经常使用sshfs并偶尔使用scp-,但由于Ubuntu已将其用作“官方”文件共享方法,所以我不能放弃Samba,并且我需要能够帮助他人。
— koanhead 2010年

@ Jeremy,smb.conf的全局部分中已经存在“映射到来宾=坏用户”的信息。添加来宾ok =是没有明显的效果。
— koanhead 2010年

2
我为这个答案提供了赏金,这不是因为Samba现在可以正常工作,而是因为我不想让它过期。据我所知,Ubuntu中的文件共享仍然无法解决。自2006年以来,它从未为我工作过。Samba在Caldera OpenLinux(早在1999年)和Fedora Core 2下都只能令人满意地工作。在这两种情况下,都花了几天的时间进行研究,试验和出错。发布这个问题的目的不是我需要Samba来工作,而是Ubuntu需要它来工作。这是Bug#1的破坏者,使我无法推荐Ubuntu。
— koanhead 2010年

Answers:


7

我在想他没有任何Samba用户。

sudo smbpasswd -a <username>  
gksu gedit /etc/samba/smbusers  

1
这曾经使我感到困惑……没有整合samba用户和系统用户,但这是有原因的。
— RobotHumans

在smbpasswd手册页中:“此外,仅当将Samba设置为使用加密密码时,smbpasswd命令才有用。” 我还没有设置samba来手动进行设置,而且我也不知道Ubuntu是否默认以这种方式设置它。另外,smbpasswd手册页没有引用smbuser。它暗示'smbpasswd -a'命令足以添加用户,但是为什么smbusers文件存在?为什么这甚至与共享级身份验证有关?共享应该是没有密码即可全局读取的。为什么Samba仅可用于Samba专家?
— koanhead 2010年

我通过“ smbpasswd -a”添加了一个用户,并重新启动了smbd,但没有立即见效。在对上面提到的smb.conf进行一些更改并回滚之后,随着相关smbd的重新启动,现在可以通过我设置的密码从笔记本电脑访问一个名为“ shared”的文件夹。因此,用户级别的访问权限现在可以运行,但是共享级别的访问权限无法正常运行,而这正是我真正想要的。用户级别的访问权限对我来说不是很有用,因为我为此使用了sshfs,但是您的答案是最接近正确的答案(唯一实现任何积极变化的答案),因此我将向您颁发赏金。
— koanhead 2010年

我感谢您的检查...并理解了挫败感。很久以前,我偶然发现使用用户提供共享级别权限(我什至忘记了情况,但现在感觉就像您现在所做的那样)。解决方法是,使用过的用户在驱动器安装中使用某种“身份验证为”选项映射驱动器。这不是真正的共享级别权限,但是它为我提供了一个免费的实现,可以按需工作。
— RobotHumans

我做到了 没有帮助。顺便说一句,没有这样的文件gksu gedit / etc / samba / smbusers,所以我保存了它,所以它是新的空的。有什么用?这个答案如何被接受?它不起作用。
— 袋鼠

3

这不是答案,而更像是评论,因为我似乎还没有发表评论的特权。我的室友使用Windows 7并不感到惊讶,有时在Windows XP和Windows 7之间共享文件时遇到麻烦。

我曾经在Windows XP计算机上工作,而Ubuntu在VMware中运行,并且通过Samba共享来传输文件。当我在Windows 7上尝试相同的设置时,没有任何乐趣。

似乎Windows 7中有一些更改。因此,除非您在与Windows XP共享时遇到问题,否则我不能确切地说10年前Samba更可靠。

请在这里参考和/或尝试获取较新版本的Samba

http://wiki.samba.org/index.php/Windows7


1
感谢您的答复,我怀疑自己Windows 7可能是造成此问题的原因。但是,我也无法从与服务器(Ubuntu 10.04)或本地Win2k VM运行同一操作系统的另一台计算机连接。不幸的是,附近没有XP机器可供我测试。我对扩展的看法是,在Ubuntu中,Samba应该是Just Work(tm),因为它是“官方”文件共享方法。在Arch甚至Fedora中都可以破解某些东西以使其正常工作,但Ubuntu则不行。顺便说一句,当我想实际使用远程文件时,我使用sshfs。
— koanhead 2010年

它甚至无法连接到另一台Ubuntu计算机?您的Ubuntu 10.04可以完美地看到另一台计算机吗?我知道您可能已经检查过,但是这些计算机是否在同一组中?
— hansioux

是的,两台Ubuntu计算机将显示在彼此的“位置”->“网络”中。实际上,所有涉及的计算机都可以看到对方,但是没有人可以访问Ubuntu盒子托管的共享,也没有Ubuntu盒子可以访问任何共享(我在Windows计算机上没有帐户,因此我不希望最初,两台Ubuntu计算机是一个单独的工作组的一部分,但我对此进行了更改,以使本地网络上的所有计算机都位于“ WORKGROUP”上。
— koanhead 2010年

3

我通常通过编辑conf文件来做到这一点。我这样做了:sudo nano /etc/samba/smb.conf,并将其添加到文件末尾。

[Shared]
     comment = My Files
     path = /home/me
     read only = yes
     write list = koanhead
     guest ok = yes

在“写列表”中,提及您的系统用户名,以便您仅具有写权限。在Windows机器上,在运行时键入以下命令:\\ ip-of-samba-pc \ shared。在ubuntu机器上,打开文件浏览器,然后在位置栏输入smb://ip-of-the-samba-pc/shared


感谢您的建议,我将在接下来的两天内进行尝试并提出报告。
— koanhead 2010年

将引用的文本添加到/etc/samba/smb.conf会导致所有共享从Nautilus“我的服务器上的Windows共享”窗口中消失。
— koanhead 2010年

3

您说您能够进行用户级访问。在我看来,这仅仅是错误的您的samba配置。在过去,我会说清楚samba.conf并制作一个适合您需要的简单文件,一个合适的samba.conf可能不需要超过10行。

无论如何,从那时起,出现了一个更简单的解决方案:安装system-config-samba

sudo apt-get install system-config-samba

在开始之前,您可能需要将samba.conf重置为其原始状态。为了确保在所有故障排除过程中都没有发现任何“隐藏”语法错误

控制面板非常简单:

  • 点击“ +”号
  • 选择目录
  • 使可见(可写?)
  • 转到“访问”标签
  • 选择“允许任何人访问”

另一种(更合适的)方法:

  • 创建一个* nix用户,命名为:guest(或您喜欢的任何对象)
    • 出于安全原因,请确保“ guest”具有/bin/false登录外壳程序(除非您也希望访客也可以通过ssh等登录)
  • 在“首选项”菜单中:选择“ Samba用户”
  • 确保“ guest”在列表中:如果未创建。

然后

  • 在“首选项”菜单中:选择“服务器设置”
  • 在“安全”选项卡上:通过“来宾帐户”,选择“来宾”

现在,任何尝试匿名登录的人都将被分配给用户“ guest”,因此将拥有“ guest”所拥有的任何权利。

  • 现在,按照前面所述创建共享,除了选择“允许所有人”外,不要选择“允许所有人访问”。

确保* nix用户的“来宾”具有足够的权限来读取和/或写入共享文件夹。

祝好运!

/ B2S


2

为了使新的 Windows系统访问当前/旧的Ubuntu Samba共享,您需要启用密码加密(在smb.conf中加密密码= yes)。

Windows 7中发生的变化是,他们对加密Samba密码提出了安全要求。如果您已安装KB2536276,则XP中也是如此。

我在工作中的网络上不停地处理这个问题,直到找到解决方案,将加密密码的“ no ” 更改为“ yes ”。这仍然适用于所有人都无需密码即可进行读/写访问的广泛共享-即使您没有密码,它仍然必须告诉Windows不存在的密码已加密,以便Windows可以访问。

这个答案是假设您已经配置了Samba使其正常运行的所有其他功能,例如用户(或缺少用户)和权限设置。

对于没有密码等的开/易共享,确保你有security = share,guest account = nobody和/或map to guest = Bad User在conf。


1

不好意思告诉我,但是我遇到了同样的问题,在局域网中无法检测到我的计算机,之后我重新安装了系统(清除后以完整格式重新安装),并且一切正常。



1

共享主文件夹的一个简单解决方案是取消注释[homes]/etc/samba/smb.conf部分中的行(删除“;”)。


0

我相信应该检查是否有阻止它的防火墙/ iptables规则。如果您不确定最简单的方法是安装ufw,并且(将来还会管理iptables)

sudo ufw allow samba
sudo ufw enable

ufw已配置为允许samba。
— koanhead 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.