安装软件,并设置为自启动
yum -y install samba
systemctl restart smb
systemctl enable smb
samba账号管理
samba用户:
- 提前建立同名的系统(本设置中用户名使用了root)
管理工具:pdbedit
- 添加用户:-a
- 查询用户:-L
- 删除用户:-x
useradd username //因为本设置中使用的是root用户,实际上没有进行创建用户这一步
pdbedit -a username //添加与系统同名的samba用户,接下来系统会提示输入密码
pdbedit -L //查看samba用户列表,大致会显示如下
user:1001
配置文件参数
vim /etc/samba/smb.conf
添加如下内容
[cluster]
path = /cluster/
readonly = no
browseable = yes
guest ok = yes
writeable = yes
valid users = root
write list = root
其中[cluster] 是最后在windows端连接成功,显示的连接名。
path =/cluster/ 定义的是共享目录
valid users 和 write list 定义的是操作用户,write list 可以定义一个数字,用“,”隔开
修改用户对目录的读写权限
setfacl -m u:username:rwx /cluster
SELinux对samba共享的保护
**用getseboolbool查看selinux开关**
getsebool -a | grep samba_export // 输入命令
samba_export_all_ro --> off
samba_export_all_rw --> off
**用setsebool控制SELinux开关**
setsebool -P samba_export_all_rw=on
setsebool -P samba_export_all_ro=on
关闭防火墙?
网上有很多人说要关闭防火墙,但是我没有关闭防火墙,依然能在windows访问。
在windows端进行访问获取共享文件目录
在文件资源管理器的“此电脑上”右键单击,选择“添加一个网络位置”,根据提示进入如下页面
输入centos7 所在ip与共享目录组成的地址。但是很奇怪,这里我最后使用的是
\\ip\root
才成功,据了解,正常情况下应该是
\\ip\cluster \\ \cluster是我要共享的目录
我把原因归咎于,因为太过暴力使用了root用户
接下来,在文件资源管理器->网络位置就可以看到如下图所示,出现一个ip
单击进去,之后应该可以看到有文件目录,右键单击文件夹,选择“映射网络驱动器”,按照提示操作完成即可。