Samba服务器的搭建
特点:
可以和其他操作系统共享文件
访问不了可能受到防火墙或者setenforce影响
查看
setenforce是Linux的selinux防火墙配置命令, 执行setenforce 0 表示关闭selinux防火墙。
Windows和Linux两边的samba服务都要开启
linux共享
步骤:
1、首先关闭防火墙或者设置防火墙
#firewall-cmd --permanent --add-service=samba //设置防火墙 #firewall-cmd --reload //重新加载防火墙
2、安装并启动samba服务
yum install -y samba
已经添加了国内yum源和epel源
安装成功后启动并查看服务
3、创建访问账号
useradd -s /sbin/nologin xzusr
useradd -s /sbin/nologin gcusr
useradd -s /sbin/nologin xsusr
#smbpasswd -a xzusr #smbpasswd -a gcusr
#smbpasswd -a xsusr
【smbpasswd 选项说明:-a 添加 smb 帐号;-x 删除 smb 帐号;-d 禁用 smb 帐号;-e 启用 smb 帐号】
4、修改配置文件/etc/samba/smb.conf
默认情况下,Samba 已经配置为允许用户通过远程共享访问账号的主目录。
[company] //共享名称为
company comment = company share //共享注释
path = /home/company //指定共享路径
browseable = yes //所有人可见
guest ok = no //拒绝匿名访问
writeable = yes //支持写入数据
[company] comment = company share
path = /home/company
guest ok = no //拒绝匿名访问
valid users=xzusr,gcusr,xsusr //允许访问的用户列表
write list=xzusr //允许写入的用户列表
【注意:修改配置文件以后,必须重启服务(systemctl restart smb nmb)使更改生效】
允许组
例:
注:修改后重启smb nmb服务
5、测试samba服务器
linux登录到服务器
匿名用户
smbclient //192.168.75.151/company
注:配置文件中如果有
无法匿名访问
即使有
也无法匿名访问
samba用户访问
需要添加samba用户(如果是samba用户也是系统用户会涉及权限问题)
smbclient -u sab1 //192.168.75.151/company
然后就进入了smb服务器
Windows用户访问
windows共享
步骤:
(1)在 Windows xp 上设置一个共享目录:d:myfiles
(2)在 Linux 下安装 samba-client 客户端 # yum install samba-client
(3)安装 cifs-utils 软件包 # yum install cifs-utils
(4)在 Linux 下创建一个挂载点 # mkdir /mnt/Windows
(5)挂载 Windows 上的共享目录 d:myfiles 到 Linux 下的/mnt/Windows 目录下 # mount -t cifs -o username=Administrator //192.168.0.3/mytest /mnt/Windows Enter password: ********
例:
mount -t cifs -o username=ZYLong //192.168.64.1/public /mnt/windows
(6)如果挂载成功,则可以进入/mnt/Windows 下进行相应操作。 (7)在/etc/fstab 文件中,加入该共享目录的挂载信息 //192.168.1.123/redhat_disk /mnt/Windows cifs username=tommy,password=111111 0 0
(8)到此为止,Windows 上的共享目录//192.168.1.123/redhat_disk 就被成功挂载到了 Linux 上面了,并且 Linux 重启后,会自动挂载该目录到/mnt/Windows 目录下
还是需要开启服务
需要注意的是:
如果报错信息是
则只需在username后加,vers=2.0即可如图所示:
注:修改了配置文件要重启服务
samba服务器用户管理
pdbedit命令管理samba用户
添加、删除等操作
netstat -na | grep ESTABLISHED 查看哪些用户连接到了samba服务器
samba日志文件 /var/log/samba 可以为每个连接的samba用户设置单独的日志文件