在某公司已有的windowsPDC环境中,添加一台linux文件服务器,用windowsPDC中的用户名帐号就可以访问文件服务器,,每个用户都有自己的主目录。
我们的分析一下,在这个项目中,由于是使用windowsPDC服务器对用户进行认证,那么可以将samba server运行在server级别上。
但是还有一个问题,windowsPDC已有的用户帐号与linux用户的帐号不同,而samba帐号又必须基于系统帐号,这意味着我们需要在linux系统上建立所有同名的windowsPDC上的帐号,再将这些帐号一一转成samba的帐号。
为了减少samba server上用户帐号配置的工作量,我们可以考虑在smb.conf配置文件中使用username map参数,这个参数可以设置一个用于用户名映射的文件,这个文件默认的/etc/samba/smbusers--我们现在又接触到了一个新的关于 samba配置文件;这个文件相当于给samba用户帐号设置一个别名,别名和windowsPDC帐号相同。例如,windowsPDC有帐号 administrator,而在linux中设定系统帐号是root,转换成samba用户帐号也仍是root,而在映射文件中,我们可以将samba 用户帐号root的别名指定为administrator。
好的,问题解决了,下面可以进行配置,WindowsPDC的域名是tail,主机名是pig,用户帐号有administrator、user1、user2、user3,首先,我们在linux系统上建立几个和win2000域用户帐号对应的系统用户帐号root、smbuser1、smbuser2、smbuser3,然后将它们一一转换为samba用户帐号。
在/etc/samba/smbusers文件中做映射,映射的格式是:
真实samba帐号 = 帐号别名
确保有以下内容:
         root = administrator
         smbuser1 = user1
         smbuser2 = user2
         smbuser3 = user3
注意,左边写smb用户的名称,右边写对应的win2000域用户的名称。
修改smb.conf配置文件:
[global]
         workgroup = TAIL
         netbios name = redflag
         security = server
         password server = pig.tail  #samba运行在server或domain级别时,对帐号进行验证的的服务器netbios名
         username map = /etc/samba/smbusers  #帐号映射文件
接着,再建立各个用户的主目录
[homes]
         comment = User's Home Directories
         browseable = no
         valid users = %S
         writable = yes
这样就满足了最基本的功能,如果还需要其他权限的目录,既可以继续添加。

运行在server