了解samba:

Samba是著名的开源软件项目之一,它在Linux/UNIX操作系统中实现了微软公司的SMB/CIFS网络协议,从而使平台的文件共享变得更加容易,选用Samba可以很好地解决不同操作系统之间的文件互访问题。

一,Samba软件的组成

1.Samba软件包的构成:

Samba大部分软件包已经在CentOS系统中安装好了,用户可以通过以下操作查询系统中samba相关软件包的安装情况。

[root@localhost ~]# rpm -qa | grep "^samba"
samba-common-4.4.4-9.el7.noarch
samba-common-libs-4.4.4-9.el7.x86_64
samba-libs-4.4.4-9.el7.x86_64
samba-client-libs-4.4.4-9.el7.x86_64
samba-common-tools-4.4.4-9.el7.x86_64
samba-4.4.4-9.el7.x86_64

2.Samba服务的程序组件

Samba服务器提供smbd,nmbd两个程序,分别完成不同的功能。其中,smbd负责为客户端提供服务器中共享资源(目录和文件等)的访问;nmbd负责提供基于NetBIOS协议的主机名称解析,以便windows网络中的主机提供查询服务。

安装完samba软件包后,管理员可以通过systemctl工具来控制samba服务器的启动,中止,开机自启。

[root@localhost ~]# systemctl start smb
[root@localhost ~]# systemctl start nmb
[root@localhost ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@localhost ~]# systemctl enable nmb
Created symlink from /etc/systemd/system/multi-user.target.wants/nmb.service to /usr/lib/systemd/system/nmb.service.

二,主配置文件smb.conf

1.smb.conf配置文件

Samba服务的配置文件位于/etc/samba/目录中,其中smb.conf是主配置文件。

[root@localhost ~]# grep -v "#" /etc/samba/smb.conf[global]workgroup = SAMBAsecurity = userpassdb backend = tdbsamprinting = cupsprintcap name = cupsload printers = yescups options = raw[homes]comment = Home Directoriesvalid users = %S, %D%w%Sbrowseable = Noread only = Noinherit acls = Yes[printers]comment = All Printerspath = /var/tmpprintable = Yescreate mask = 0600browseable = No[print$]comment = Printer Driverspath = /var/lib/samba/driverswrite list = rootcreate mask = 0664directory mask = 0775

在smb.conf文件中存在三个特殊的配置段。

[global]全局设置:这部分配置项的内容对整个Samba服务器都有效。

[homes]宿主目录共享设置:设置Linux用户的默认共享,对应用户的宿主目录。当用户访问服务器中与自己用户名同名的共享目录时,通过验证后将自动映射到该用户的宿主文件夹中。

[printers]打印机共享设置:如果需要共享打印机设备,可以在这部分进行配置。

 2.testparm工具

Samba服务器提供了一个配置文件检查工具——testparm工具可以对smb.conf配置文件的正确性进行检查,如果发现错误将会进行提醒。

[root@localhost ~]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_STANDALONEPress enter to see a dump of your service definitions# Global parameters
[global]workgroup = SAMBAprintcap name = cupssecurity = USERidmap config * : backend = tdbcups options = raw

默认安装的主配置文件中内容较少,关于smb.conf文件中的更多配置项,可以执行“man smb.cnf”命令查阅帮助或参考“/etc/samba/smb.conf.example”。

三,构建文件共享服务器

一,需要用户验证的共享

1.建立Samba用户数据库 :执行pdbedit -a -u vina命令可以添加一个名为vina的Samba共享用户,其中的-a选项表示添加,-u选项用于指定用户名称

[root@localhost ~]# useradd vina
[root@localhost ~]# pdbedit -a -u vina

执行pdbedit -L 命令可以列出所有的Samba共享用户,结合-v选项可以输出更详细的内容。

[root@localhost ~]# pdbedit -L
vina:1000:

当指定的Samba用户不在使用时,结合-x选项并指定samba用户名称,删除指定的samba账号。

[root@localhost ~]# pdbedit -x -u vina
[root@localhost ~]# pdbedit -L vina
Username not found!

2.设置用户访问权限

创建共享用户vanko,hunter,确认共享目录:

[root@localhost ~]# useradd vanko    #创建系统用户
[root@localhost ~]# useradd hunter
[root@localhost ~]# pdbedit -a -u vanko    #创建Samba共享用户
[root@localhost ~]# pdbedit -a -u hunter
[root@localhost ~]# mkdir /opt/mytools    #新建本地测试目录
[root@localhost ~]# touch /opt/mytools/test.txt    #新建测试文件

修改smb.conf配置文件,添加名为tools的共享目录配置段:

[root@localhost ~]# vi /etc/samba/smb.conf[tools]comment = you can get software tools from herepath = /opt/mytoolsread only = yesvalid users = vanko,hunterwrite list = hunter

重载加载smb.conf文件中的配置,或重启smb服务器:

[root@localhost ~]# systemctl reload smb

四,用户映射及访问地址限制

进一步提供Samba共享服务的安全性,除了可以对指定的共享目录设置用户授权以外,还可以采取用户映射,访问地址限制等措施。

1.共享账号映射(别名)

[root@localhost ~]# vi /etc/samba/smbusers
vanko = sunboy player

设置完成共享用户的别名以后,若要正常启用账号映射功能,需要修改主配置文件/etc/samba/smb.conf,添加全局配置项“ username map = /etc/samba/smbusers ”,然后重新加载配置即可生效。

[root@localhost ~]# vi /etc/samba/smb.conf[global]username map = /etc/smbusers
.......[root@localhost ~]# systemctl reload smb

2.访问地址限制

 [root@localhost ~]# vi /etc/samba/smb.conf[global]hosts allow = 192.168.2.
........
[root@localhost ~]# systemctl reload smb

注:当通过共享目录上传文件,创建子目录的默认权限,分别使用配置项directory mask和create mask进行指定。

[tools].........directory mask = 0755    #上传的目录的默认权限为755create mask - 0644        #文件默认权限为644

五,Linux系统如何访问共享文件夹

        1.安装samba客户端工具

[root@localhost ~]# yum -y install samba-client        #安装samba客户端

      2.查询目标主机的共享资源列表

[root@localhost ~]# smbclient -L 192.168.2.1 -U hunter
Enter hunter's password:
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]Sharename       Type      Comment---------       ----      -------print$          Disk      Printer DriversIPC$            IPC       IPC Service (Samba 4.4.4)tools           Disk      you can get software tools from herehunter          Disk      Home Directories
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]Server               Comment---------            -------LOCALHOST            Samba 4.4.4Workgroup            Master---------            -------SAMBA                LOCALHOST

         3.登录并访问共享文件夹

选项:-U:指定经过授权的共享用户名称(或映射的别名),并输入正常密码。需要通过“ //主机名/共享名 ”的形式指定共享文件夹的位置。

[root@localhost ~]# smbclient -U sunboy //192.168.2.1/tools -U hunter
Enter hunter's password:
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]
smb: \>

在smb:\>环境中,使用特定的命令可以对共享目录进行列表,上传,下载,例:ls用于列表目录,pwd命令查看当前路径,get命令和mget命令用于下载文件,put命令和mput命令用于上传文件。?和 help命令在线帮助。

六,使用mount挂载共享文件夹

1.挂载samba服务器中的tools共享目录挂载到本地

[root@localhost ~]# mount -o username=hunter //192.168.2.1/tools /smbdir
mount: //192.168.2.1/tools 写保护,将以只读方式挂载

注:samba共享服务的常用属性本人了解了这些,欢迎大家来补充 !!!

Linux-Samba文件共享服务相关推荐

  1. 搭建samba文件共享服务

    文章目录 搭建samba文件共享服务 前言 搭建及设置步骤 实验环境 Win10文件共享到Linux里面 首先创建一个共享目录 GUEST账户启用 打开本地策略 将用户权限分配里面的拒绝从网络访问这台 ...

  2. Centos 8 搭建samba文件共享服务(超详细)

    文章目录 一.samba文件共享服务简介 二.搭建及设置步骤 一.samba文件共享服务简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(S ...

  3. LinuxProbe 0x15 SAMBA文件共享服务、NFS网络文件系统、AutoFs自动挂载服务、DNS域名解析服务

    配置网络文件系统(Network File System,NFS)服务来简化Linux系统之间的文件共享工作, 通过部署NFS服务在多台Linux系统之间挂载并使用资源. 在管理设备挂载信息时,使用a ...

  4. ubuntu18.4搭建samba文件共享服务

    今天比较有空就来玩玩怎么去在ubuntu上搭建samba服务器,通过win7 ip地址去访问共享文件,这也是个windos和ubuntu共享文件一种常用方法.这里只是做笔记用,既然其他网友已经写得很好 ...

  5. samba文件共享服务详解

    内容: 1.samba的作用以及由来 2.samba的特性 3.samba的工作过程 4.samba的安装以及配置 5.samba的搭建测试 一.samba的作用以及由来 SAMBA历史溯源(摘自百度 ...

  6. Linux——SAMBA文件共享

    文章目录 一.SAMBA概念 1. 什么是SAMBA 2. SAMBA主要进程 3. SAMBA软件安装(服务器搭建) 4. smb配置文件 二.SAMBA使用案例 1. 环境准备 1)配置静态ip ...

  7. Linux 网络文件共享服务详细介绍

    Linux 网络文件共享介绍 一.常见的存储类型 1.1 DAS 类型的存储 1.2 NAS 类型的存储 1.3 SAN 类型的存储 1.4 三种存储类型的比较 二.文件传输协议 FTP 2.1 FT ...

  8. Linux网络文件共享服务(一)存储类型和文件传输协议FTP

    成功不易,加倍努力! 网络文件共享服务 本章总目录 1 存储类型 1.1 DAS存储 1.2 NAS存储 1.3 SAN存储 1.4 三种存储比较 2 文件传输协议 FTP 2.1 FTP工作原理介绍 ...

  9. Linux之文件共享服务

    本笔记来源: 文件共享服务FTP.NFS.Samba数据同步实战_哔哩哔哩_bilibili NFS服务 背景 把网络中的资源通过NFS共享出来,共享出来以后,通过挂载NFS的远程资源把它挂到本机,一 ...

  10. 主机屋linux怎么连,全网最详细的samba文件共享服务!

    了解samba: 1. samba是linux共享文件系统,将SMB(服务消息块)/CIFS(通用网络文件系统)协议在linux中进行实现,让linux.unix.windows系统之间可以相互访问文 ...

最新文章

  1. Linux Yum命令(转)
  2. [PAT乙级]1007 素数对猜想
  3. nvcc找不到的问题(Ubuntu16.04 CUDA 8.0)
  4. php正则表达式以及正则函数详解
  5. 微信公众平台开发模式背后的原理?
  6. FTP服务器常规操作
  7. 如果安卓和linux融合,今年手机厂商大吹特吹的内存融合技术,其实十年前网友就玩腻了...
  8. pass 软件_杀毒软件哪家强?今天来聊聊关于保护你电脑的杀毒软件那些事!
  9. Ubuntu常识学习之tty
  10. Cocosbuilder使用教程
  11. php 抽奖活动_php 实现活动人选抽奖功能代码
  12. 产品升级|​9月产品升级,精彩不间断!
  13. 本科毕业论文答辩ppt模板
  14. 树莓派Pico上手初体验,Hello world 双核MCU
  15. fastadmin 多表关联查询
  16. 小米4C刷LineageOS
  17. WordPress采集wordpress挂机采集插件
  18. Information Retrieval(信息检索)笔记02:Preprocessing and Tolerant Retrieval
  19. [Delaunay Triangle] [图形学] 优化方案
  20. matlab fgoalattain,MATLAB多目标优化

热门文章

  1. 安卓打开cbr文件_什么是CBR和CBZ文件,为什么将它们用于漫画?
  2. 金软Word文本抽出
  3. 1984年高考数学试题。
  4. 基于遗传算法的大规模工程优化设计方法初探
  5. oracle判断字段为空时选用别的字段_oracle中使用sql查询时字段为空则赋值默认
  6. mysql中间件研究(Atlas,cobar,TDDL) | 日志 | 果壳网 科技有意思
  7. 深度学习~模糊神经网络(FNN)
  8. python怎样使用各个日期赤纬_科学网—PyEphem基本功能介绍 - 张金龙的博文
  9. 程序员如何接私活、外包的秘技
  10. 解决通用串行总线控制器里全是叹号问题