CentOS 7安装Samba 4.6 版本步骤及错误解决方法

首先通过这次教训,让我养成一个好习惯:备份  备份  备份      不管做什么配置或者更改什么东西之前先做好备份! 还有我本身的一个坏毛病:眼高手低!

工厂有一台服务器,由以前的运维装的Samba ,因为系统中病毒了,所以我直接重装系统了,想着好配置呢   事先也没有看配置文件,也没有备份配置文件,结果最后在权限这一块吃了大亏,耗了两天多!

首先我们工厂内网需求很简单:就是共享就行 没有用户目录权限设置 都可以随便读写

1、下面是安装命令:

  yum -y install samba samba-client samba-common

  还会有一些依赖包 会自动安装

2、然后进入/etc/samba/ 目录下 会有三个文件

  

3、所有的配置选项都在smb.conf里面,下面是我的配置文件内容截图

  

  

详细配置选项
[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                  //是否设置为只读

4、然后通过testparm检测下smb.conf配置文件的正确性

5、这个地方是会出错的第一个地方:用testparm检测配置文件的正确性,有可能会出现下面的错误

  rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) 

  解决方法:编辑配置文件    vim /etc/security/limits.conf  在里面加入一行配置

  root            -       nofile          16384

  root指root用户   如果想都所有用户生效,把root替换为 *  即可!我是设置的 *  下面是配置文件内容

  

6、创建共享目录

  mkdir /home/resource

7、给共享目录赋予各种权限(这里设置好了 就没有权限问题了!)

  chmod 777 /home/samba

  chown 777 /home/samba

8、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

9、selinux这里也是容易出现错误的地方

  setsebool -P samba_export_all_rw on  添加这一条

10、启动samba服务

  systemctl start smb    //启动smb服务

  systemctl stop smb    //停止smb服务

  systemctl restart smb   //重启smb服务

  systemctl status smb   //查看smb服务状态

11、over 现在可以尽情的使用啦!

原文地址:https://www.cnblogs.com/fqszywz/p/8127423.html