版本
» cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
» uname -a
Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
配置
-
Samba服务rpm包,在这个版本上初始时缺少配置rpm包:samba-4.2.3-10.el7.x86_64.rpm
传入rpm包然后rpm -ivh samba-4.2.3-10.el7.x86_64.rpm即可
» groupadd sambaHu #新建用户组,删除为groupdel sambaHu
» useradd sambaHu -g sambaHu -s /sbin/nologin #新建非登陆用户和所属组,删除用户为userdel sambaHu
» cat /etc/passwd | grep sam #查看新建用户sambaHu信息
» smbpasswd -a sambaHu #设置sambaHu用户samba服务登陆密码 -
修改/etc/samba/sam.conf配置
-
测试配置
» testparm #测试配置是否正常
-
重启samba服务便可。
» systemctl restart smb #重启
» systemctl start smb #开启
» systemctl stop smb #停止
» systemctl status smb #查看状态
» systemctl enable smb #设置为开机启动
» smbclient //localhost/mrlog # 本机测试访问,登陆不需要密码,匿名访问登陆。 -
Window上访问测试目录,\ IP地址便可看到用于共享目录和用户主目录。
-
添加mrlog所属文件夹,详细命令说明:
详细命令说明:
comment---------注释说明
path------------分享资源的完整路径名称,除了路径要正确外,目录的权限也要设对
browseable------是yes/否no在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取
printable-------是yes/否no允许打印
hide dot ftles–是yes/否no隐藏隐藏文件
public----------是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)
guest ok--------是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)
read only-------是yes/否no以只读方式共享当与writable发生冲突时也writable为准
writable--------是yes/否no不以只读方式共享当与read only发生冲突时,无视read only
vaild users-----设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名)
invalid users—设定只有此名单内的用户不能访问共享资源(拒绝优先)(用户名/@组名)
read list-------设定此名单内的成员为只读(用户名/@组名)
write list------若设定为只读时,则只有此设定的名单内的成员才可作写入动作(用户名/@组名)
create mask-----建立文件时所给的权限
directory mask–建立目录时所给的权限
force group-----指定存取资源时须以此设定的群组使用者进入才能存取(用户名/@组名)
force user------指定存取资源时须以此设定的使用者进入才能存取(用户名/@组名)
allow hosts-----设定只有此网段/IP的用户才能访问共享资源
allwo hosts = 网段 except IP
deny hosts------设定只有此网段/IP的用户不能访问共享资源
allow hosts=本网段指定IP指定IP
deny hosts=指定IP本网段指定IP
个人心得
两次在centos7上搭建samba服务,遇到的困难两次一直不能正常访问,第一次在虚拟机中搭建一直无法访问,导致原因是没有重启过系统,第二次远程协助安装一直无法访问原因是docker容器映射的目录权限被修改,普通用户没有权限访问。