一、前提
在CentOS上装一个Samba服务,这样就可以很方便的与Windows文件共享了。
二、安装Samba
- 直接用yum安装
yum install samba samba-client
- 设置开机启动
systemctl start smb.service
systemctl enable smb.service
三、设置防火墙
防火墙中默认有samba服务配置,直接添加服务就可以了。
firewall-cmd --permanent --zone=public --add-service=samba firewall-cmd --zone=public --add-service=samba
四、设置Selinux
设置sebool属性,允许samba有文件读写权限
setsebool -P samba_export_all_rw=1
五、创建用户和目录
- 首先创建/data/share目录
mkdir /data/share
- 创建一个名为sambashare的用户组
groupadd sambashare
- 将 /data/share目录组所有权设置为sambashare
chgrp sambashare /data/share
- 创建用户
创建一个samba访问的用户guoke
useradd -M -d /data/share -s /usr/sbin/nologin -G sambashare guoke
-M-不创建用户的主目录。
-d /data/share-将用户的主目录设置为/data/share。
-s /usr/sbin/nologin -禁止该用户访问shell。
-G sambashare -将用户添加到sambashare组。
设置目录权限
chown guoke:sambashare /data/share
chmod 2770 /data/share
六、添加Samba用户
- 将系统用户guoke添加到Samba数据库,这里候要输入samba访问的密码
smbpasswd -a guoke
七、配置Samba共享
打开Samba配置文件添加共享目录
vim /etc/samba/smb.conf
[share]
path = /data/share
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare guoke
- [share]-登录时将使用的共享名称。 此时可以用
\\ip\share
访问/data/share
目录 - path -分享的途径。
- browseable -是否应在可用共享列表中列出该共享。设置为no,其他用户将看不到共享。
- read only -valid users列表中指定的用户是否能够写入此共享。
- force create mode -设置此共享中新创建文件的权限。
- force directory mode -设置此共享中新创建目录的权限。
- valid users -允许访问共享的用户和组的列表。组以@符号为前缀。
配置完成后重启服务
systemctl restart smb.service
systemctl restart nmb.service
八、测试
在windows中运行栏直接输入 \\ip\share
就会弹出输入账号密码框,输入guoke和设定的密码就可以访问了。