|
<一>SAMBA服务器包含两部分:smbd和nmbd;
smbd是samba的内核,是建立对话,验证客户和提供文件系统和打印服务的基础;
nmbd则实现了网络浏览的功能,它的任务是向局域网广播Samba服务器所提供的服务,Nmbd使得Samba服务器显示在windows操作系统的网络邻居中,允许用户浏览可以通过samba使用的资源。
首先在suse下启动smb服务:
1,su - root
2,cd /etc/init.d
3,输入命令启动smb: ./smb start
启动smb服务之后,我们在windows下网络邻居中通过搜索ip就可以找到samba服务器,这时候该samba已经完全可以提供局域网内网络共享服务了。但是这个服务器没有直接显示出来,是因为我们现在还没有启动nmbd服务。
然后在suse下启动nmbd服务:
1,前两步跟启动smb服务相同
2,输入命令启动nmbd服务: ./nmb start
<二>samba用户的添加过程,例:给samba添加一个user1用户
首先判断一下系统用户中有没有user1,可以利用cat/etc/passwd来查看显示的内容中有没有user1,如果没有的话,需要新建user1系统用户[由于suse中利用命令建立新用户比较麻烦,所以推荐大家利用管理员身份在yast2中新建用户]。在终端上输入cd/etc/samba进入samba目录,命令smbadduseruser1:user1_group,并且输入user1的 samba密码,该密码尽量不要跟user1的系统密码相同。
到此为止,我们已经完成了samba用户的添加工作。[此后可以用smbpasswd user1来更改user1的samba密码。]
<三>samba的共享方式,主要用到的有两种,share和user,这里主要讲一下share方式,user方式在下一部分着重讲解。
实例说明
在smb.conf中的[global]设置
security = share
guest ok = yes
guest account = user1
采用share方式,用户不需要输入帐号和密码就可以登陆samba服务器,可以指定用户登陆的默认帐号,这里用户就是通过默认的user1来登陆的。用户登陆之后,可以看到所有系统共享文件和user1所共享的文件。其他用户共享的文件能够看得到,但是不一定能够使用或者进的去。如果不设置guest account的话,则用户就以默认的nobody进行登陆,只能够使用系统设置的共享文件。其他用户设置的文件不一定能够使用。
<四>samba用户和linux用户
linux 系统用户跟samba用户是相互联系而又相互独立的:首先samba用户必须是linux用户,这就是我们利用 smbaddusergroup:member来创建samba用户的原因了,group是linux系统的组,而member是属于该组的linux系统用户,添加samba用户的前提是该组和成员在系统中已经存在;其次对于同一个用户来说,samba密码和系统密码不必一定相同,换句话说samba的用户只是用来提供网络共享服务的,在这里与操作系统用户没有什么大的关系。
实例说明:
在smb.conf中的[global]中设置
security = user
guest ok = yes
guest account = user1
[home]设置
comment = Home Directories
valid users = %S
browseable = No
read only = No
create mask = 0640
directory mask = 0750
效果:在windows下的网络邻居中进入samba服务器时。
< 1>如果输入的用户名和密码都是空的,那么用户仍然可以进入samba服务器,不过这时候进入时候的身份就是samba的user1的身份,可以看得到用户user1所有共享的文件或者文件夹,至于权限则是根据系统用户user1设置的这些共享目录的对应权限。
<2>如果输入的用户名是user2,密码是user2的系统密码,则用户就会进入user2的目录/home/user2/,里面所有文件都可以看到,并且拥有对这些文件的所有权限。
<3>如果用户输入的用户名是user2,密码是user2的samba密码,则用户就能够看到系统用户user2共享的目录。 |
|