1.服务器需要下载samba、sambaclient包
yum install samba samba-client -y
2.客户端需要下载samba-client、cifs-utils包
yum install samba-client cifs-utils -y
3.服务器端编辑配置文件
vim /etc/samba/smb.conf
workgroup = WORKGROUP windows工作组模式
hosts allow = 127. 192.168. 白名单
#============================ Share Definitions ==============================
[samba]
comment = samba 描述信息
path = /samba 共享文件路径
browseable = no 是否可以浏览查看该samba服务
read list = samba1 只读samba用户列表
write list = samba2 读写samba用户列表
writable = no 默认所有用户是只读模式
printable = no是否是打印设备,如果是yes那么文件夹内容不能查看
public = no 是否公开,如果公开不需要samba用户也是访问共享文件
:wq
4.新建samba用户,必须是系统中存在的用户才能使用该用户创建。
useradd samba1
useradd samba2
smbpasswd -a samba1
smbpasswd -a samba2
pdbedit -L 查看所有samba用户
samba1:1001:
samba2:1002:
5.服务器端开启samba服务,这里不讨论selinux和防火墙
systemctl start smb nmb
setenforce 0
systemctl stop firewalld.service
6.新建samba共享目录,并放置共享文件,给other用户提供开启权限。
mkdir samba
cp /etc/passwd /samba/
cp /etc/issue /samba/
cp /etc/sudo.conf /samba/
chmod o+w /samba
7.客户端可以使用字符交互式访问samba服务
smbclient -L //192.168.1.126 看查看服务是否开启samba服务
smbclient //192.168.1.126/samba -U samba2
smb: > ls
. D 0 Mon Aug 7 21:32:17 2017
.. D 0 Mon Aug 7 21:31:09 2017
passwd N 2050 Mon Aug 7 21:31:49 2017
issue N 23 Mon Aug 7 21:31:58 2017
sudo.conf N 1786 Mon Aug 7 21:32:17 2017
可以使用help命令查看帮助
8.客户端还可以使用手工挂载和持久挂载的方式访问samba服务
①mount -t cifs //192.168.1.126/samba /mnt/cifs -o username=samba2,password=123
②vim /etc/fstab
//192.168.1.126/samba /mnt/cifs cifs credentials=/root/namepass.txt,defaults 0 0
vim /root/namepass.txt
username=samba2
password=123
mount -a
//192.168.1.126/samba 18G 6.5G 12G 37% /mnt/cifs
9.到此是linux之间的samba服务,linux与windows之间的samba服务由下图所示。linux访问windows共享文件的方式和步骤8类似。