首先经过此次教训,让我养成一个好习惯:备份 备份 备份 无论作什么配置或者更改什么东西以前先作好备份! 还有我自己的一个坏毛病:眼高手低!linux
工厂有一台服务器,由之前的运维装的Samba ,由于系统中病毒了,因此我直接重装系统了,想着好配置呢 事先也没有看配置文件,也没有备份配置文件,结果最后在权限这一块吃了大亏,耗了两天多!vim
首先咱们工厂内网需求很简单:就是共享就行 没有用户目录权限设置 均可以随便读写服务器
一、下面是安装命令:运维
yum -y install samba samba-client samba-commontcp
还会有一些依赖包 会自动安装编码
二、而后进入/etc/samba/ 目录下 会有三个文件spa
三、全部的配置选项都在smb.conf里面,下面是个人配置文件内容截图unix
详细配置选项
[global]
workgroup = WORKGROUP //这是工做组,能够添加本身的工做组,我用的是默认的WORKGROUP
security = user
map to guest = Bad User //这是samba 4.0版本之后必须设置为user用户,设置为share 而后用testparm检测smb.conf 会报错的 服务也启动不起来
log file = /var/log/samba/log.%m //log日志及路径 里面记载的用户的登陆操做日志
max log size = 50 //日志文件存储的文件最大的大小
unix charset = UTF-8 //在Linux服务器上面的显示编码 若是不知道本身的编码 能够查看下本身的系统编码
display charset = UTF-8 //本身服务器上面的显示编码 通常都是和unix charset查到的同样
guest account = nobody //访问的用户范围
dos charset = cp936 //Windows端显示的编码
create mask = 777 //赋予权限
directory mask = 777 //赋予权限
[resource] //这个是Windows上显示的文件夹的名字(共享文件夹)
comment = All Printers //这个是共享文件夹的说明
path = /home/resource //共享文件夹的路径
browseable = yes //是否让全部的使用者都看到这个项目
guest ok = yes //是否让来宾用户访问
writable = yes //是否为能够写入
read only = no //是否设置为只读
四、而后经过testparm检测下smb.conf配置文件的正确性rest
五、这个地方是会出错的第一个地方:用testparm检测配置文件的正确性,有可能会出现下面的错误日志
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
解决方法:编辑配置文件 vim /etc/security/limits.conf 在里面加入一行配置
root - nofile 16384
root指root用户 若是想都全部用户生效,把root替换为 * 便可!我是设置的 * 下面是配置文件内容
六、建立共享目录
mkdir /home/resource
七、给共享目录赋予各类权限(这里设置好了 就没有权限问题了!)
chmod 777 /home/samba
chown 777 /home/samba
八、firewall加入端口
firewall-cmd --zone=public --add-port=137/udp --permanent
firewall-cmd --zone=public --add-port=138/udp --permanent
firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
九、selinux这里也是容易出现错误的地方
setsebool -P samba_export_all_rw on 添加这一条
十、启动samba服务
systemctl start smb //启动smb服务
systemctl stop smb //中止smb服务
systemctl restart smb //重启smb服务
systemctl status smb //查看smb服务状态
十一、over 如今能够尽情的使用啦!