Samba + Windows:允许不同用户进行多个连接吗?


23

我有一台运行带有Samba的Ubuntu的计算机,该计算机用于与本地网络中家人的Windows计算机共享内容。当前,他们与一个用户访问电影/音乐/等内容的共享。

我想将他们作为其他用户(例如,用户“ goytacaz”)连接到另一个共享。

当我尝试连接到该新共享时,Windows提示我“错误1219”,并抱怨同一用户的多个连接。

如何使我的机器接受同一用户的多个连接?


您是否只是想使用samba进行连接?Samba已经支持此AFAIK。
重载2010年

Answers:


24

在桑巴?应该不会有任何问题。只要用户名和密码正确,两个连接都应正确进行。

更新: re:“错误1219”。这是一个客户端错误-Windows仅允许您一次以一个用户身份连接到服务器。(请参阅KB938120的Microsoft文档。)这意味着Windows计算机已经以其他用户身份连接,因此,您以正确的用户身份再次尝试连接失败。

您需要先断开第一个连接,然后才能重新连接。我知道有两种方法可以做到这一点:

  • 从该服务器上断开所有登录时重新连接的网络驱动器。重启。重新连接到服务器,并确保输入正确的用户名和密码。

  • 在Windows的命令外壳中使用net use / delete命令(开始->运行-> cmd;在提示符下键入命令;您可能需要指定共享名)。

更新2:如果用户已经与一个用户连接到服务器,则将无法让他们与另一个用户连接。您必须重新考虑您的共享策略,并重新配置Samba以遵循该策略。(这不是您的错;我责怪Windows。)

就个人而言,我会坚持每个人的个人用户,并考虑使用组来控制对共享的访问。如果您有一些共享,希望每个人都具有读写权限,而另一些共享(除了少数几个用户之外)都希望是只读的,则此方法很好。

更新3:上面链接的MS文档提供了这两种解决方法,以使能够以独立用户的身份连接到服务器。通常的想法是,使Windows认为它使用不同的名称连接到其他服务器

  1. 使用第二个用户名连接时,请使用服务器的IP地址。(\\ServerName\sharename以第一个用户身份连接时使用,但\\X.X.X.X\sharename以第二个用户身份连接时使用。)

  2. 为服务器创建一个或多个DNS别名,以便在与第二(,第三,第四...)用户名连接时使用。(\\ServerName\sharename以第一个用户身份连接时使用,但\\ServerAlias1\sharename以第二个用户\\ServerAlias2\sharename身份连接时使用,以第三个用户身份连接时使用,等等。)


1
感谢您的回答。我遇到了同样的问题,第二次连接使用服务器的IP地址而不是DNS名称进行连接。
本·托雷尔

10

这是Windows 7的解决方案(尽管它也可能适用于其他版本)

  1. 以管理员身份打开记事本(或任何文本编辑器)
    (您必须右键单击并说“以管理员身份运行”)

  2. 查找:c:\ WINDOWS \ system32 \ drivers \ etc \ hosts(您不仅需要显示.txt,还需要显示所有文件)

现在,例如:
-您有3个samba用户:tom fred jon-
您的samba服务器上有3个samba共享(即IP:192.168.0.100):docs stuff pics-
您想将tom连接到docs,将fred连接到东东作为乔恩的照片

现在将以下行添加到主机文件:

192.168.0.100   tomsdocs   tomsdocs
192.168.0.100   fredstuff  fredstuff
192.168.0.100   jonspics   jonspics

关闭并保存后,您可以像这样“映射网络驱动器”:

\\tomsdocs\docs as user tom
\\fredstuff\stuff as user fred
\\jonspics\pics as user jon

请注意,上面的名称完全由您决定...映射网络驱动器时,无论您放入主机文件中的内容如何,​​都将需要调用服务器。

之所以起作用,是因为Windows需要认为它正在连接到不同的服务器。可以说,您也可以设置自己的家庭DNS服务器,但是我更喜欢在hosts文件中伪造一堆条目(在Windows计算机向DNS寻求帮助之前,该文件会进行评估)。
由于整个问题都是客户端Windows问题,因此我更喜欢这样做。

希望这可以帮助。


这就像一个魅力!在服务器上使用samba共享进行了一个小时的摆弄,直到我找到了-谢谢:)
lorem monkey

这次真是万分感谢。我讨厌不得不解决Microsoft出现的新问题,但是如果不是愚蠢的话,这很优雅……效果很好!
SuperJames

1
不过很好奇,双名是错字吗?为什么同一IP会两次使用完全相同的IP?
布雷萨纳克

8

如果您不愿意摆弄每个客户端来解决服务器问题,则可以使用smb.conf文件来设置服务器的名称别名。这具有每个别名在Windows网络中显示为不同服务器的附加好处。

编辑您的smb.conf文件,并在[global]部分中添加以下条目:

[global]
...
netbios aliases = alias1 alias2 readonly


重新启动samba之后(记住要重新启动smbd和nmbd!),您应该能够使用Windows资源管理器中的UNC表示法访问新的服务器别名。
请注意,在samba重新启动后大约1分钟,可能需要一些时间才能在我的网站上正常工作。
别名显示在Windows网络中后,您肯定可以使用。


2

我只是有同样的问题。

对于一个用户,我使用:\ 192.168.xx <-另一用户的ubuntu服务器的IP:\ server-name <-ubuntu服务器的主机名。

这使我可以使用不同的登录名与Windows计算机连接。



1

使用netbios别名samba选项:

netbios name = share1
netbios aliases = share2

Windows将“查看” 2个不同的samba服务器,并且您可以使用不同的用户身份验证连接到这两个共享

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.