一、安装前准备
1、使用Samba服务器需要防火墙开放以下端口或者直接关闭防火墙
UDP 137
UDP 138
TCP 139
TCP 445
vi /etc/sysconfig/iptables #配置防火墙端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
/etc/rc.d/init.d/iptables restart #重启防火墙,使规则生效
2、关闭SELinux(PS:这步比较重要,如果没有关闭会导致无法读写)
vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq 保存,关闭。
shutdown -r now重启系统
二、安装Samba
1、检查Samba服务包是否已安装
rpm -qa | grep samba
samba-common-3.6.9-169.el6_5.x86_64
samba-client-3.6.9-169.el6_5.x86_64
samba4-libs-4.0.0-23.alpha11.el6.x86_64
samba-winbind-clients-3.6.9-169.el6_5.x86_64
samba-winbind-3.6.9-169.el6_5.x86_64
samba-3.6.9-169.el6_5.x86_6
说明samba已经安装,如果没有安装,运行下面命令安装
yum install samba
2、配置samba
chkconfig smb on #设置 Samba开机自动启动
service smb start #启动Samba服务
chkconfig nmb on #设置Samba别名服务自动启动
service nmb start#启动Samba别名服务
/etc/init.d/smb restart #重启
/etc/init.d/smb stop #停止
/etc/init.d/nmb restart #重启
/etc/init.d/nmb stop #停止
备份:cp /etc/samba/smb.conf /etc/samba/smb.confbak
恢复:cp /etc/samba/smb.confbak /etc/samba/smb.conf
vi /etc/samba/smb.conf
[global] #找到这一行(全局设置标签),在此行下面添加如下行:
workgroup = WORKGROUP #工作组名称改为 Windows 网络所定义的工作组名
server string = Samba Server #设置samba服务器的主机名称
security = user #设置samba服务器安全级别为user,即以账号和口令访问
netbios name = SambaServer #设置Samba服务器访问别名
#在配置文件的末尾添加以下自定义内容,定义公共目录
[public] #在Windows网上邻居中看到的共享目录的名字
comment = Public Stuff #在Windows网上邻居中看到的共享目录的备注信息
path = /data/samba #共享目录在系统中的位置
public = yes #公开目录
writable = yes #共享目录可以读写
保存配置
建立共享文件专用目录
mkdir -p /data/samba
chown -R nobody. /data/samba
chmo 777 /data/samba
3.将用户test添加入到Samba用户数据库,并设置登录共享目录的密码为:123456
例:创建一个test账号,且宿主目录为/data/test
useradd test -d /data/test
smbpasswd -a test
New SMB password: 输入该用户用于登录Samba的密码
Retype new SMB password: 再次确认输入该密码
Added user SambaServer.
#特别注意:这里设置的密码是用户登录Samba共享目录的密码,不是用户登录linux系统的密码
4.重启Samba服务器
/etc/init.d/smb restart
5.
在Windows客户端输入
\\ip
或者
\\SambaServer #服务器别名
回车之后,会跳出来登录框,输入账号test 密码123456
即可访问共享目录
三.配置samba回收站
#所有通过网络登陆Samba服务器的用户在删除文件或目录后,被删除的文件或目录会自动转移到指定的回收站里
编辑/etc/samba/smb.conf文件,在[homes]和[public]共享目录下添加以下内容
[public]
comment = Public Stuff
path = /data/samba
public = yes
writable = yes
vfs object = recycle
recycle:repository = /data/recycle/public/%U
recycle:keeptree = yes
recycle:versions = yes
[homes]
comment = Home Directories
browseable = yes
writable = yes
vfs object = recycle
recycle:repository = /data/recycle/%U
recycle:keeptree = yes
recycle:versions = yes