1. 修改samba的配置文件
sudo vim /etc/samba/smb.conf
添加如下内容(根据个人需求适当修改):
[show_name]
comment = my_share
path = /home/my_doc
public = yes
writeable = yes
browseable = yes
guest ok = yes
共享目录为:/home/my_doc
共享目录对外名称为:show_name 即在Windows看到的目录名称。
设置共享目录权限:chown -R user:group /home/my_doc
2. 启动或者重启smb服务
重启smb服务:
(ubuntu 系统)
sudo /etc/init.d/smbd restart
或
service smb restart
或
systemctl restart smb
测试smb.conf配置是否正确
testparm
3. 增加samba用户
Linux的用户密码和samba的用户密码不一样,但是samba的用户必须是Linux的用户,因此需要将用于登录samba的账户添加到samba的用户数据库,执行如下命令:
smbpasswd -a your_account
此时会提示设置your_account在samba中的密码,输入两次密码后即可添加该账户到samba成功。
如果需要新创建一个linux用户,可执行下述命令:
sudo useradd -d /home/your_account -m -s /bin/bash -g root your_account
sudo passwd your_account
参数说明:
-c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。
-d<登入目录> 指定用户登入时的启始目录。
-D 变更预设值。
-e<有效期限> 指定帐号的有效期限。
-f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
-g<群组> 指定用户所属的群组。
-G<群组> 指定用户所属的附加群组。
-m 自动建立用户的登入目录。
-M 不要自动建立用户的登入目录。
-n 取消建立以用户名称为名的群组。
-r 建立系统帐号。
-s<shell>指定用户登入后所使用的shell。
-u<uid> 指定用户ID。
4. 查看samba服务器中已拥有哪些用户:
pdbedit -L
删除samba服务中的某个用户:
smbpasswd -x 要删除的用户名
5. samba共享中的其他问题
5.1 Windows访问共享目录,但是没有写权限
通过以下方式修改防火墙设置。
将Linux smb服务添加到防火墙的例外中,以root用户执行setup命令
setup
弹出…重启生效。
如果不想重启,用以下命令直接关闭防火墙:
setenforce 0
5.2 windows7 访问samba 提示未知用户或者错误的密码解决方法
在smba.conf中增加下面配置:
lanman auth = yes
ntlm auth = yes