SAMBA 发展缘由,可以看出, SAMBA 最初发展的主要目就是要用来沟通Windows 与 Unix Like 这两个不同的作业平台。最大的好处就是不必让同样的一份数据放置在不同的地方,搞到后来都不晓得哪一份资料是最新的!而且也可以透过这样的一个档案系统让Linux 与 Windows 的档案传输变得更为简单!也就是说,可以透过『网络上的芳邻』来进行Linux 与 Windows 档案的传输。那么 SAMBA 可以进行哪些动作呢?
①分享档案与打印机服务;
②提供使用者登入 SAMBA 主机时的身份认证,以提供不同身份者的个别数据;
③进行 Windows 网络上的主机名称解析 (NetBIOS name)
④进行装置的分享 ( 例如 Zip, CDROM.。。 )
主要部分
两个守护程序:smbd 和 nmbd(对客户端提供NetBIOS名服务)
配置文件:/etc/smb.conf
使用工具:smbclient,smbstatus,smbmount,smbumount,smbprint,smbprint.sysv,smbrun
samba的启动脚本在/etc/rc.d/init.d/smb
BTW,不要把smb与smp(对称多处理器)搞混了,更不要把NetBIOS名与DNS里的主机名搞混淆了! samba缺省 是把主机名设置成NetBIOS名,这样通常会超出NetBIOS名的长度限制(16个字符)。
如何添加Samba用户
Window系统连上我们的开发机Linux,自然需要在Samba里添加一个新用户。
linux-06bq:/usr/local/services/samba/bin # 。/smbpasswd -a sunjing
New SMB password:
Retype new SMB password:
Failed to add entry for user sunjing.
百度给出的结论是”添加的Samba用户首先必须是Linux用户”,一下子豁朗开郎。
linux-06bq:/etc/samba # useradd sunjing
linux-06bq:/usr/local/services/samba/bin # 。/smbpasswd -a sunjing
New SMB password:
Retype new SMB password:
Added user sunjing.
接下来在Windows机器上【控制面板】→【凭证管理器】中添加Windows凭证:
网络地址:xxx.xxx.xxx.xxx(即需要连接的Linux开发机的IP)
用户名:sunjing
密码:给Samba添加sunjing用户时设置的密码
最后,在【资源管理器】里直接【映射网络驱动器】,连上开发机即可。
smbpasswd命令的常用方法
smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
smbpasswd -d 冻结用户,就是这个用户不能在登录了
smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n 把用户的密码设置成空。
要在global中写入 null passwords -true
smbpasswd -x 删除用户
samba 查看用户信息
#samba用户信息查询
##条件:必须在穿件用户前 修改 /etc/samba/smb.conf 文件
#将注释掉 passwdb backend = tdbsam //backen 阻碍
#添加一行新的代码 smb password file = /etc/samba/smbpasswd
###查看方式。进入文件 smbpasswd 查询或者用命令 pdbedit —L查询
//////////////////////////////////////////////
[global]中的passdb backend = tdbsam说明:passdb backend就是用户后台的意思。
目前有三种后台:smbpasswd、tdbsam和ldapsam。(sam应该是security account manager(安全账户管理)的简写。)
1.smbpasswd:该方式是使用smb自己的工具smbpasswd来给系统用户(真实用户或者虚拟用户)设置一个Samba密码,客户端就用这个密码来访问Samba的资源。smbpasswd文件默认在/etc/samba目录下,不过有时候要手工建立该文件。
2.tdbsam:该方式则是使用一个数据库文件来建立用户数据库。数据库文件叫passdb.tdb,默认在/etc/samba目录下。passdb.tdb用户数据库可以使用smbpasswd –a来建立Samba用户,不过要建立的Samba用户必须先是系统用户。
我们也可以使用pdbedit命令来建立Samba账户。
pdbedit命令的参数很多,我们列出几个主要的。
pdbedit –a username:新建Samba账户。
pdbedit –x username:删除Samba账户。
pdbedit –L:列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit –Lv:列出Samba用户列表的详细信息。
pdbedit –c “[D]” –u username:暂停该Samba用户的账号。
pdbedit –c “[]” –u username:恢复该Samba用户的账号。
3.ldapsam:该方式则是基于LDAP的账户管理方式来验证用户。首先要建立LDAP服务,然后设置“passdb backend = ldapsam:ldap://LDAP Server”
评论
查看更多