Samba服务的功能体现在资源的共享上。它可以使linux计算机在“网络邻居”中看起来如同一台Windows计算机。Windows计算机的用户可以“登录”到linux计算机中,复制文件。
1. 保证samba服务已经安装到linux计算机中
执行 rpm -qa | grep samba 命令,如果显示下面的列表,则表示已经安装了samba。
samba-client- 3.0.7 -1.3E.1
samba-common- 3.0.7 -1.3E.1
samba- 3.0.7 -1.3E.1
samba-swat- 3.0.7 -1.3E.1
redhat-config-samba- 1.0.16 -2
建议安装linux时就将samba包选中。
2. 更改配置文件
更改samba配置文件/etc/samba/smb.conf,
在[global]中增加
security=user
guest account = pcguest #访问linux的用户
encrypt passwords=yes #使用密码
smb passwd file=/etc/samba/smbpasswd #存放密码的文件
如果需要限定只有某个网段的计算机可以访问linux计算机,可以增加语句
hosts allow=192.168.212
在[homes]中增加
wirtable = yes
然后保存配置文件。这些配置在初始的配置文件中都是用#注释掉的,直接将注释去掉并且根据实际情况修改就可以。
3. 创建访问linux的用户
我们在这里创建一个用户pcguest。用root用户登录,然后执行
useradd pcguest
passwd pcguest
接着创建该用户在samba服务器中的密码,执行
cd /etc/samba
smbpasswd pcguest
输入密码,建议和pcguest用户在linux中的密码相同。系统会自动在/etc/smaba目录下创建密码文件smbpasswd来保存用户的密码。
4. 启动smaba服务
执行命令
/etc/rc.d/init.d/smb restart
重新启动服务。使用命令testparm可以测试,可以看到生效的配置信息。
另外还要更改/home/pcguest目录的权限,执行命令
chmod o+r /home/pcguest
chmod o+w /home/pcguest
chmod o+x /home/pcguest
samba服务启动后,会把用户pcguest的home目录/home/pcguest设置为共享目录。修改权限后,其他用户就可以读写这个目录中的文件。
当然也可以建立一个专门的目录做共享目录。用root用户的身份登录,执行
cd /
mkdir myshare
chown pcguest myshare
chmod 777 myshare
然后更改配置文件,将[home]改成[myshare],并且在这段中增加
path=/myshare
browseable=yes
重新启动后,myshare目录就成为共享的目录。
5. 其他级别的配置
samaba提供了四个安全等级:share,user,server和domain。我们这里使用了user级别。share级别安全性最低建议不使用。
Server级别只需在user级别的基础上将
security=user
修改成
security=server
添加
passwd server=[主域控制器的名称,或者另一个samba server名称]
注释掉
Smb passwd file=/etc/samba/smbpasswd
这样登录访问linux的用户的帐户和密码由passwd server指定的服务器控制。
Domain级别是将linux作为一个windows工作站加入的windows域中。首先要在主域控制器或者安装目录服务的计算机上将samba server的NetBIOS名称增加到windows域中。然后再user级别的基础上将
security=user
改成
security=domain
将
workgroup=mygroup
改成
workgroup=[域名]
添加
NetBIOS=[计算机名称]
Password server=[主域控制器的名称]
注释掉
Smb passwd file=/etc/samba/smbpasswd