CentOS8 中 Samba环境搭建(满足Linux和Windows系统之间文件共享传输)

Samba服务器通信协议(Server Messages Block)就是是为了解决局域网内的文件或打印机等资源的共享服务问题,让多个主机之间共享文件变成越来越简单

一、前置条件

  1.Linux和Windows系统之间网络能互通

    [root@samba ~]# ping 192.168.205.89

  2.检查linux系统版本

    [root@samba ~]# cat /etc/redhat-release
    CentOS Linux release 8.3.2011

  3.检查selinux状态

    [root@samba ~]# getenforce
      Disabled ---->(
此状态为关闭状态,若不是请按如下操作)
    ① 关闭SELINUX:
      [root@bogon ~]# vim /etc/sysconfig/selinux

      

    ② 重启系统
      [root@bogon ~]# reboot

  4.检查firewall状态

    [root@samba ~]# firewall-cmd --state

    

    否则,按照下述操作关闭防火墙
      #关闭防火墙
         systemctl stop firewalld
      #开机禁用防火墙
         systemctl disable firewalld

二、安装samba服务端

  1.检查linux系统是否安装了Samba

    [root@samba ~]# rpm -qa|grep samba

    

  2.安装Samba

    [root@samba ~]# yum install -y samba

三、配置samba服务端

  1.创建smb的访问账户和密码

    [root@samba home]# adduser myshare
    [root@samba home]# smbpasswd myshare
 2.设置文件所有者和文件关联组的,-R : 处理指定目录以及其子目录下的所有文件
    [root@samba home]# chown -R myshare /home/myshare/
 3.变更文件或目录的所属群组
    [root@samba home]# chgrp -R myshare /home/myshare/
 4.控制用户对文件的权限的命令
    [root@samba home]# chmod -R 777 /home/myshare/
 5.修改/etc/samba/smb.conf文件,配置共享文件
    [root@samba myshare]# vim /etc/samba/smb.conf

      # See smb.conf.example for a more detailed config file or
      # read the smb.conf manpage.
      # Run 'testparm' to verify the config is correct after
      # you modified it.
      [global]

        config file = /etc/samba/smb.conf.d/%U.smb.conf  #自定义配置文件路径

        workgroup = SAMBA
        security = user

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw

      [printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No
      [print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @printadmin root
        force group = @printadmin
        create mask = 0664
        directory mask = 0775

    [root@samba myshare]# vim /etc/samba/smb.conf.d/u1.smb.conf

      [global]
          #添加软连接共享
          follow symlinks = yes
          wide links = yes
          unix extensions = no

      [u1]
          comment = This is smb u1
          path = /usr/share-user/u1/
          browseable = yes
          writable = yes
          public = no
          writable = yes
          Create mode = 0777
          directory mode = 0777
          # invalid users = root #不可登陆用户
          valid users = u1 #可登录用户
          write list = u1

  6.增加共享目录文件的操作

    [root@samba opt]# mkdir Download
    [root@samba opt]# chown -R myshare /opt/Download/
    [root@samba opt]# chgrp -R myshare /opt/Download/
    [root@samba opt]# chmod -R 777 /opt/Download/
    [root@samba myshare]# vim /etc/samba/smb.conf
      
    【操作过程基本与上述一致,增加更多以此类推】

四、启动smb

  1.启动smb

    [root@samba ~]# systemctl start smb

  2.enable开机自动启动

    [root@samba ~]# systemctl enable smb

  3.查看服务是否启动:Active:active(running)代表启动成功

    [root@samba ~]# systemctl status smb


五、验证

  1.打开WIN + R

    输入“\\192.168.205.89”

六、卸载 samba

  第一、 首先检查Samba服务包

    rpm -qa | grep samba

    
  第二、逐个删除,输入命令#rpm -e samba

    [root@samba ~]# rpm -e samba-common-tools-4.13.3-3.el8.x86_64

  第三、逐个删除,输入命令#rpm -e samba

    [root@samba ~]# rpm -e samba-libs-4.13.3-3.el8.x86_64
  第四、剩下的可能删不掉,则使用rpm -e --nodeps去删除

    [root@samba ~]# rpm -e --nodeps samba-client-libs-4.13.3-3.el8.x86_64

    [root@samba ~]# rpm -e --nodeps samba-common-libs-4.13.3-3.el8.x86_64

    [root@samba ~]# rpm -e --nodeps samba-common-4.13.3-3.el8.noarch
  samba已经不存在了
    


★ samba参数详细说明
一、linux samba 如何实现指定用户看见此文件夹,而其他用户无法看见
  方法1:

    [global]

      config file = /etc/samba/%U.smb.conf

  方法2:

    [global]

      include = /etc/samba/%U.smb.conf

  config file和include的区别是:
    使用configfile时,当以tomyang的身份访问Samba服务器,只能浏览到smbtest,其他在smb.conf中定义的共享资源都无法查看;
    当以tonyzhang的身份访问Samba服务器,只能浏览到smbtest1,其他在smb.conf中定义的共享资源都无法查看。

    使用include时,当以tomyang的身份访问Samba服务器,除了可以浏览到smbtest,其他在smb.conf中定义的共享资源也可以浏览到;
    当以tonyzhang的身份访问Samba服务器,除了可以浏览到smbtest1,其他在smb.conf中定义的共享资源也可以浏览到。

二、linux samba 实现A用户创建文件及文件夹后B用户可访问编辑等此文件或文件夹

  ①  create mode 和create mask
    Create mode=0664 //定义用户在此共享资源中创建的文件的权限。 此例中为:拥有者和拥有者组有读和写的权限,而其他用户仅为读的权限(r=4,w=2,x=1)。

  ② directory mode 和directory mask
    Directory mode =0775 //在共享文档中创建的文件夹的权限。 此例为拥有者和组有读写执行的权限,其他用户只有读和执行的权限。

  ③ force create mode =0755

    //即强制性规定在共熟文档下创建的文件至少拥有755的权限。即最低权限的设定。

    可以覆盖 create mode 设定的权限。当create mode中的权限与此处设定的权限相冲突时,取两者中权限高的。

    如果此处设定的权限比较低,而create mode中设定的权限比较高(假如为777),将以create mode中定义的777权限为准。

  ④ force directory mode =775  //此项与上面的意思一样,只是此处定义的是创建文件夹的最低权限。

  ⑤  force group 和force user

    //规定创建的文件或文件夹的拥有者和组拥有者是谁 。一般这两个值为空,则表示拥有者和组拥有者为创建文件者。

       如设定值,如force group=khp,Force user=khp,则不管是谁创建的文件和文件夹,拥有者都为khp和khp组。

  ⑥ public = yes //是否允许匿名访问

  ⑦ Max connections =10  //设置此共享资源的最大连接数。此例为10个用户。

三、软链接共享

    ① 在配置文件的“[global]”节的最后,加上下面三条设置:

      follow symlinks = yes

      wide links = yes

      unix extensions = no

    ② 重启smb 服务(“systemctl restart smb”)。

 

Linux-samba共享的更多相关文章

  1. win7无法登陆linux samba共享

    网上查了一下资料,总共有以下几种做法: 1.防火墙 2. Open the Run command and type "secpol.msc". Press "conti ...

  2. Linux网络共享管理(ssh,nfs,samba)

    OpenSSH服务器: ssh协议:提供安全的ssh环境用于远程管理,默认端口:22: 服务名称:sshd openssh-server包的安装文件: 使用ssh客户端程序: 连接目标主机: ssh ...

  3. Linux下安装部署Samba共享盘的操作手册

    简述 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的 ...

  4. Linux:SAMBA共享、NFS共享、Autofs自动挂载

    SAMBA.NFS共享区别 NFS开源文件共享程序:NFS(NetworkFile System)是一个能够将多台Linux的远程主机数据挂载到本地目录的服务,属于轻量级的文件共享服务,不支持Linu ...

  5. 如何通过Samba共享Linux文件夹

    https://blog.csdn.net/stu059074244/article/details/77766155   Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Window ...

  6. linux之SAMBA共享目录服务端架设

    samba 共享目录 1.SAMBA服务概述 协议 监听端口137 架构   samba:Linux系统的一种文件共享程序服务 通常在主机文件共享的应用场景中,由于文件系统的差异化,Windows和L ...

  7. windows怎么访问linux的samba共享目录

    windows怎么访问linux的samba共享目录 听语音 原创 | 浏览:6976 | 更新:2018-07-31 13:20 | 标签:LINUX WINDOWS 1 2 3 4 5 6 7 分 ...

  8. linux --> ubuntu和mac通过samba共享

    ubuntu和mac通过samba共享 如果想快速配置,直接跳到第五步. 一.安装smb 执行下列命令 sudo apt-get install samba sudo apt-get install ...

  9. Linux安装配置Samba共享文件系统

    Samba共享文件系统搭建与配置: 1.Samba服务端:yum install samba samba-client cifs-utilscd /etc/samba/cp smb.conf smb. ...

  10. Linux主机共享目录给Windows主机的方法

    Linux主机共享目录可以通过samba来实现 首先,来看下百科上关于samba的介绍: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Ser ...

随机推荐

  1. C# File、FileInfo、Directory、DirectoryInfo

    本文主要介绍文件类.文件信息类.目录类.目录信息类的常用属性和方法 1.File(文件类) // 1.判断文件是否存在 bool isFileExist = File.Exists(@"D: ...

  2. Networking && Internet 计网学习笔记一

    Networking && Internet 计网学习笔记一 参考书籍: James F. Kurose, Keith W. Ross. 计算机网络-自顶向下方法 (7th). 机械工 ...

  3. 五:spring boot

    五.spring boot 通过springboot可以快速的搭建一个基于ssm框架的Java application,简单配置,自动装配. JavaConfiguration用java类来替代xml ...

  4. Centos7系统编译Hadoop3.3.4

    1.背景 最近在学习hadoop,此篇文章简单记录一下通过源码来编译hadoop.为什么要重新编译hadoop源码,是因为为了匹配不同操作系统的本地库环境. 2.编译源码 2.1 下载并解压源码 [r ...

  5. spark数据清洗

    spark数据清洗 1.Scala常用语法 运用maven创建项目,需要导入如下依赖: <dependency> <groupId>org.apache.spark</g ...

  6. 了解舵机以及MG996R的控制方法

    了解舵机以及MG996R的控制方法 1.舵机基础知识: 舵机是遥控航空.航天模型控制动作,改变方向的重要组成部件,舵机是一种位置(角度)伺服的驱动器. 舵机主要适用于那些需要角度不断变化并可以保持的控 ...

  7. CF1367E Necklace Assembly

    题目传送门 思路 提供一种比现有的两篇题解都简单的方法. 我们枚举答案,发现最终的答案数组一定是由多个完全相同的块组成的,并且块长必定是 \(k\) 的因数. 然后我们考虑枚举答案 \(i\),那么此 ...

  8. uni-app:获取当前经纬度解决方案+如何布置全局组件

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 一.布置全局组件 在我们开发的过程中,会碰到一个现象,就是在页面里面引入组件,总算要写import,components才能引用,这里给大 ...

  9. Android:LitePal 在第一次创建表之后第二次创建新的表不生效

    因为业务需求的增长,后续需要继续创建新的表,有可能代码没有任何报错,同时数据库也没有任何新的表加入进来. 修改 litepal.xml 的 version,如果之前是 1,那么修改为 2,总之比之前 ...

  10. 【C#异步】异步多线程的本质,上下文流转和同步

    引言 net同僚对于async和await的话题真的是经久不衰,这段时间又看到了关于这方面的讨论,最终也没有得出什么结论,其实要弄懂这个东西,并没有那么复杂,简单的从本质上来讲,就是一句话,async ...