我的 Ubuntu 服务器上有一个 Samba 共享,我将其映射为 Windows 7 Professional 计算机上的网络驱动器。
每次重新启动后,它都会显示驱动器已断开连接,并且要访问它,我必须输入密码,即使每次输入密码时我都会选中“记住我的凭据”框。
有没有办法让 Windows 7 在重启/关机时记住凭据,还是仅在每个会话中记住它们?
答案1
这个问题困扰了我很久。最终修复了这个问题的方法是:
- 断开所有现有的映射驱动器
- 映射新驱动器;选中“重新连接”和“使用不同的凭据”复选框
- 出现提示时,输入 SERVER\USERNAME 作为用户名。例如,如果您的服务器名称是 SHIRE,用户名是 Baggins,则输入 SHIRE\Baggins 作为用户名。
- 照常输入密码。
- 勾选“记住凭证”框。
如果我理解正确的话,某些古怪的安全策略会抹去凭据,因为您没有针对 Windows 域进行身份验证。添加服务器名称会诱使 Windows 认为那里有一个域,因此它会忠实地记住密码。或者其他什么。
为此,向微软致以最崇高的敬意。干得好。/讽刺
http://alinconstantin.blogspot.com/2009/10/windows-7-cannot-access-smb-shares-on.html
http://alinconstantin.blogspot.com/2010/03/network-shares-on-smb-server-could-not.html
不管怎样,在此之前我尝试过其他几种方法,但我不知道它们是否有效果。有关详细信息,请参阅以下博客文章:
答案2
事实证明您不能同时使用密码、/user 和 /savecred。因此您需要执行以下操作:
网络使用 S:\\192.168.1.22\myshare /SAVECRED /PERSISTENT:YES
它会要求您输入用户名和密码。请确保使用域\用户名语法作为用户名!(在 IP 地址前使用 2 个反斜杠字符。)
答案3
我遇到过这个问题,我已经通过将登录凭据添加到控制面板/存储的用户名和密码来解决了(这适用于 Windows XP/Windows Server 2003 主机。Windows 7/Windows Server 2008 中也有同样的东西,但可能叫法有点不同,比如只是“用户和密码”。遗憾的是我目前没有英文版 Windows 7 主机)。
您还可以使用命令行获得相同的结果net use
。例如,如果您需要将名为 SHIRE\Baggins 的共享(@Will Martin 很好的例子!:))添加到名为 S: 的设备,请输入:
net use S: \\SHIRE\Baggins <password> /USER:<domain>\<user> /SAVECRED /PERSISTENT:YES
(<password> <domain>
显然<user>
只是实际登录数据的占位符。)
这应该安装共享并将登录凭据添加到“存储的用户名和密码”控制面板小程序。
我希望这有帮助。
答案4
我也必须解决这个问题。以下是我的环境和解决方案。
环境:
- Ubuntu 12.04 上的 samba 共享
- Ubuntu 服务器与公司网络上的其他计算机不在同一域中
- 由于上述限制,无法创建 DNS 条目
- 由于不在域中且无法连接到企业身份验证协议,因此身份验证必须在 Ubuntu 服务器本地进行
- 由于我们需要在许多 Windows 7 企业计算机上映射驱动器,因此解决方案必须采用脚本形式
解决方案:
- 包含以下两个语句的 bat 文件(以 $ 开头的文本是需要替换的变量)
cmdkey /add:$serverIP /user:$serverIP\$unixAccoutnName /pass:$password
净使用$驱动器号:/d
网络使用 $driveLetter:\$serverIP\$shareName /savecred /persistent:yes
您需要重新启动或注销,然后重新登录以获取凭据。