目录
- 1. 安装samba
- 2. 配置smb.conf
- 3. 创建samba登陆用户
- 4. 创建samba共享文件夹
- 5. 重启samba服务
- 6. 访问samba共享文件夹
- 7. 参考资料
1. 安装samba
- Ubuntu/Debian:
sudo apt-get install samba
- CentOS:
sudo yum install samba
2. 配置smb.conf
- 首先备份smb.cof
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
- 然后修改smb.conf,在最后面添加如下内容:
[smbshare]
comment = smbshare home directory
path = /extdisk/disk1/smbshare
browseable = yes
public = no
writeable = yes
valid users = usmb
create mask = 0664
directory mask = 0775
force user = usmb
force group = usmb
available = yes
unix charset = UTF-8
dos charset = cp936
保存并退出
参数 | 解析 |
public | 设置是否允许匿名访问 |
path | 设置共享文件夹的路径 |
valid users | 设置允许登陆的用户名 |
force user | 设置强制设定新建文件所属用户 |
force group | 设置强制设定新建文件所属用户组 |
create mask | 设置创建文件设定的权限 |
directory mask | 设置创建文件夹设定的权限 |
security是设置samba用户认证模式。这里没有设置security参数是因为其默认值为security = user。security = user模式常用用于独立文件服务器或DC。
samba用户认证模式一共有5种,分别是share、user、server、domain、ads。
- share:所有人都可以访问这台samba服务器(不需要输入用户名和密码)。
- user:需要输入有效的用户名和密码才能访问samba服务器(身份验证由samba服务器负责)。
- server:与user相同,只是将身份验证交由指定的另一台samba服务器负责。
- domain:将身份验证交由域控制器负责。
- ads:将身份验证交由域控制器负责(比domain更为安全一点)。
3. 创建samba登陆用户
- 创建系统用户
sudo useradd -s /usr/sbin/nologin (禁止Linux用户登陆)
sudo passwd usmb
- 创建samb登陆用户
sudo smbpasswd -a usmb
4. 创建samba共享文件夹
创建samb共享文件夹并设置文件夹的权限和所属用户和用户组
mkdir /extdisk/disk1/smbshare
sudo chmod -R 775 smbshare
sudo chown -R usmb:usmb smbshare
5. 重启samb服务
sudo /etc/init.d/samb restart
或者
sudo systemctl restart smbd.service
6. 访问samba共享文件夹
1. Windows下访问samba共享文件夹
- 在Windows资源管理器地址上输入
\\+ip
(比如我的samba服务器IP地址是192.168.1.100
,则输入\\192.168.1.100
),登陆samba服务器, - 然后继续输入刚才设置的账号和密码就可以了。
2. Ubuntu 16.04下访问samba共享文件夹
- 在Ubuntu文件管理器上,按
ctrl + L
输入samb:// + ip
(比如我的samba服务器IP地址是192.168.1.100
,则输入samb://192.168.1.100
),登陆samb服务器, - 然后继续输入刚才设置的账号和密码就可以了。
7. 参考资料
- Ubuntu下配置Samba服务器
- Ubuntu 16.04安装配置Samba服务
- CentOS 7 搭建samba服务
- smb.conf官方文档