分类: LINUX
2012-12-27 16:57:02
Hint-1: 此处必须要注意的一点是,我们需要通过 SAMBA 所提供的功能来进行 Linux上文件的读写,而 Linux 文件的读写是需要取得 Linux 系统上面的 UID 与 GID 的,因此,我们登录 SAMBA 服务器时,使用的其实是 Linux 系统里面的相关账号,这也就是说,在 SAMBA 上面的使用者账号,必须要是已有的 Linux 账号中的一个。
在确保用户账号smb1已经存在于Samba服务器所在的Linux系统之后,还必须使用 pdbedit -a -u smb1 指令将smb1用户添加到samba服务器的用户/密码数据库中。添加完成后可以通过pdbedit -L 指令查看Samba服务器的用户/密码数据库中已有的用户信息。
在老的Samba版本中使用的密码管理命令smbpasswd现在仅存的功能是修改Samba服务器的用户/密码数据库中指定用户的密码。
Hint-2: 在smb.conf中通过path = /home/project设定了共享目录在Linux系统上的路径之后,必须要注意的一个问题是该目录的读写属性。在上述例子中,因为是要开放权限给 users 工作组的,而共享工作组的权限值通常是“2770”这个含SGID 的特殊值,因此需要通过执行mkdir /home/project,chgrp users /home/project,chmod 2770 /home/project三条指令才能在客户端实现该目录的共享,否则将会报权限错误。
Hint-3: 如果想要和Client进行SMB2协议的通信,在smb.conf的 [global] 节中设置 security 时, 不能设置为 security = share ,否则即使Smb Client(例如Windows 7)发起SMB2通信,Smb Server也将以SMB协议进行回复,之后的双方通信也都将以SMB/CIFS协议进行通信。
Hint-4: 通过Windows使用用户A的认证信息访问Samba服务器之后,Windows会将A用户的认证信息作为一条凭据自动保存下来,下一次再访问Samba服务器时会自动以A用户认证信息进行登录,除非Windows当前用户注销重登陆,这就为想要在Windows下使用不同用户信息登录Samba服务器带来了不便。
最方便的解决办法是:在Windows的cmd方式下输入net use * /delete /y 就可以不必注销,重启而以另一个用户的身登陆samba服务器了