Samba文件共享服务

思维导图:

1. Samba服务概述

1.1 smb/CIFS协议

  • smb:Service Message Block
  • cifs:Common Internet Filesystem
  • smb协议也叫cifs协议

1.2 NetBIOS协议

  • NetBIOS:网络基本输入输出协议
    • 作用:主机名解析(NetBIOS所支持的主机名最长不能超过15个字符)
  • 工作方式:
    • Windows的本地网络主机名称解析服务以广播的方式在工作
    • 以广播的方式探测整个网络内有多少主机对这个协议是支持的,而后去请求解析得到对方的主机名
    • 等NetBIOS解析完毕后,才通过SMB协议实现文件系统共享

1.3 功能

  • 文件系统共享
  • 打印机共享

2. Samba程序结构

2.1 程序结构

1)服务端程序包

  • 程序包:
    • samba
    • samba-common
    • samba-libs
  • 安装:
    • yum  install  samba  -y

2)主程序

  • nmbd:
    • NetBIOS name server  实现NetBIOS协议的
  • smba:
    • SMB/CIFS services 实现文件共享

2.2 端口&配置

1)监听的端口

  • nmbd:137/udp、138/dup
  • smbd:139/tcp、445/tcp

2)主配置文件

  • /etc/samba/smb.conf
  • 由samba-common包提供

3)Unit File

  • smb.service
  • nmb.service
  • 注意:在用systemctl启用samba服务时,上面的两个服务都要启用

2.3 客户端程序

1)smbclient

  • 作用:
    • 交互式命令行客户端,类似于lftp
  • 查看Server端的共享:
    • 参数:
      • -L  netbios  可以使用netbios,也可以直接指定主机名
      • -U  username  指定以哪个用户的身份去访问,如果不指定用户名,则默认以匿名用户访问
    • 示例:
      • smbclient  -L  10.0.0.201   查看此主机上的所有smb共享,以匿名用户的身份访问
  • 登录:
    • 语法:smbclient  //主机/共享名  -U  用户名
    • 示例:smbclient  //10.0.0.201/smbuser1  -U  hgzero

2)mount.cifs

  • 直接挂载使用
  • 挂载cifs文件系统的专用命令

3)与windows主机之间实现共享

4. Samba服务的配置

4.1 配置文件

  • 配置文件:/etc/samba/smb.conf
  • 配置文件语法检测:testparm

4.2 全局配置

4.3 共享文件系统配置[ SHARED_NAME]

5. Samba用户管理

6. Samba服务共享的查看

  • 查看Server端的共享  
    • smbclient  -L  SMB_SERVER  [ -U  USERNAME ]
  • 交互式文件访问:
    • smbclient  //SMB_SERVER/SHARE_NAME  [ -U  USERNAME ]
  • 挂载访问:
    • smbclient   -t  cifs  //SMB_SERVER/SHARE_NAME   /mnt  -o  username=USERNAME,password=PASSWORD
    • 注意:挂载操作的用户,与-o选项中指定的用户直接产生映射关系,此时,访问挂载点,是以-o选项中的username指定的用户身份进行的
  • smbstatus:
    • 作用:显示samba服务的相关共享的访问状态信息
    • 参数:
      • -b:显示简要格式信息
      • -v:显示详细格式信息

 

posted @ 2020-09-16 17:22  Praywu  阅读(811)  评论(0编辑  收藏  举报