SAMBA连接过程中的常见错误解析

通过SAMBA可以让Linux服务器成为Windows域中的一员,也可以让Windows客户端通过网上邻居来访问Linux服务器。不过Windows与Linux毕竟是两个不同的操作系统平台。即使SAMBA服务器提供了双方沟通的一个平台,但是在联机过程中仍然会出现一些问题。我今天就这些常见的问题进行一些说明,并提供一些解决措施。希望这些内容可以帮助系统管理员解决日常工作中遇到的难题。

  一、XP客户端可以登录,2000客户端却不可以。

  笔者刚开始采用SAMBA服务器的时候,遇到过一个奇怪的问题。那时企业中客户端还没有完全统一,主要有2000客户端与XP客户端。在部署SAMBA应用的时候,却发现一个奇怪的问题,只有XP客户端可以通过网络邻居来访问Linux服务器;而其他客户段却不行。经过一系列的措施后,我终于发现了问题所在。

  这主要是Windows操作系统与Linux操作系统在密码的处理机制上不同。目前主流的Windows操作系统都已经使用加密的方式来发送密码。而在SAMBA服务器上,则系统管理员可以决定是否要指定用户密码必须以加密的形式发送到SAMBA服务器,利用encrypt passwords选项来确定。如果这个选项设置为NO,则所有的Windows客户端都将不能够登陆到Linux服务器上。为此,笔者把这个选项设置为YES后,即指定用户密码必须以加密的形态发送到SAMBA服务器。然后所有的Windows客户端就都可以正常登陆到了Linux系统服务器了。

  那么为什么以前只有XP客户端可以登陆,而2000客户端不能够登陆了?查找了相关的资料并经过测试后,发现如果把以上这个选项设置为NO的话,则必须要通过修改客户端的配置来实现。如需要把SAMBA服务器软件包中的一个文件复制到客户端上。只有如此,在没有启用encrypt passwords的基础上,Windows客户端才可以正常连接到Linux服务器上。

  如上图所示,在SAMBA安装目录下有Registry这个文件夹。这个文件加中存储着一些密码处理文件。如果把选项encrypt passwords设置为NO的情况下,则需要把这些文件复制到对应的Windows客户端下,否则的话就不能够正常登陆。笔者把Win2000这个注册表文件复制到2000客户端,并双击直接把注册表的值倒入到注册表中。重新启动客户端后,2000系统就可以顺利访问Linux服务器了。

  为此我觉得大部分情况下还是把encrypt passwords选项设置为YES好。如果有特殊的需要(如出于访问控制的需要等原因),则可以把这个选项设置为No。然后把这些注册表文件复制到对应的客户端上,以保证需要访问的客户段可以正常连接到Linux服务器上。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyfxxd.html