nfs和samba服务

nfs:
      nfs: Network File System                      #网络文件系统
      nis:Network Information Service;  #网络信息服务
      ldap:lightweight directory access protocol; ldap over ssl/tls;


nfsd: 2049/tcp                     #nfs的守护进程,

辅助类的服务:  rpc, portmapper       #端口映射
                           rpc.mountd   :认证 ;
                           rpc.lockd       : 加锁;
                           rpc.statd        : 状态; 
      rpc: remote procedure call       #远程过程调用

NFS  Server:
        /etc/exports或/etc/exports.d/
        /PATH/TO/SOME_DIR   clients1(export_options, …)  clients2(export_options, …)
        clients:
            single host:ipv4, ipv6, FQDN;
            network:address/netmask, 同时长短格式的掩码;
            wildcards:主机名通配,例如:
.magedu.com; 
            netgroups:NIS域内的主机组;@group_name;
            anonymous:使用*通配所有主机;
            
          General Options:
            ro:只读
            rw:读写;
            sync:同步;
            async:异步;
          User ID Mapping:     #默认压缩的
             root_squash:压缩root用户,一般指将其映射为nfsnobody(来宾用户);
             no_root_squash:不压缩root用户;
             all_squash:压缩所有用户;
             anonuid and anongid:将压缩的用户映射为此处指定的用户;
             
    NFS Client:
      客户端可以使用 showmount -e  服务器端地址    #查看共享列表
      mount -t nfs servername:/path/to/share /path/to/mount_point  
      [-rvVwfnsh ] [-o options]           #挂载共享文件
      
        # exportfs -ar          #重新导出所有目录,注意不要重启服务

        # exportfs -au          #不导出某个目录


以下是nfs的具体实现:    

 一、yum 安装 

       yum -y install nfs-utils rpcbind      #rpcbind是nfs的辅助类服务

二、 nfs 的配置文件 

    配置文件目录 /etc/exports默认为空

[root@shewei ~]#vim /etc/exports

  /opt/test/ 192.168.1.0/24(rw,async,anonuid=501,anongid=501)

   共享文件目录   客户端网段 (可读,异步,默认压缩系统用户,将压缩的用户映射为此处指定的用户)

   使配置生效  :exportfs -r

三、启动 nfs 

service rpcbind start            

service nfs start         #辅助进程和nfs都要启动

chkconfig rpcbind on

chkconfig nfs on          #这里是加入开机启动

四、客户端挂载:

    NFS Client:
      客户端可以使用 showmount -e  服务器端地址    #查看共享列表
      mount -t nfs servername:/path/to/share /path/to/mount_point  
      [-rvVwfnsh ] [-o options]           #挂载共享文件
      
        # exportfs -ar          #更改后的目录需要重新导出所有目录,注意不要重启服务
        # exportfs -au          #不导出目录

关于部署共享服务,可以在服务器搭建lamp环境然后通过nfs共享出去

                             也可以把服务器当数据库,在客户端上搭建lamp环境,使用nfsg共享的文件。


samb服务:

          smb: Service message block
          cifs: common internet filesystem
  
samba:Andrew Tridgell;
    功能: 
         文件系统共享;           
         打印机共享;
         NetBIOS协议;
      
    peer/peer(workgroup model)
    domain model
    
  程序环境:
    服务端程序包:samba
    主配置文件:/etc/samba/smb.conf, 由samba-common包提供;
    主程序:
      nmbd:NetBIOS name server
      smbd:SMB/CIFS services
    Unit File:
      smb.service                 #提供文件系统共享和打印机共享
      nmb.service 

  

监听的端口:

      137/u dp, 138/udp 
      139/tcp, 445/tcp 

  客户端程序:
    smbclient:交互式命令行客户端,类似于lftp;
    mount.cifs:挂载cifs文件系统的专用命令;
    
  samba的配置文件:
             smb.conf
      
  两类配置段:
        全局配置
          [global]
            Network-Related Options
              workgroup =
              server string = 
              interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
              hosts allow = 127.  192.168.12.  192.168.13.
             Logging Options
              log file = /var/log/samba/log.%m
              max log size = 50
              Standalone Server Options
              security = user
        设定安全级别:取值有四个;
                  share:匿名共享;

                  user:使用samba服务自我管理的账号和密码进行用户认证;用户必须是系统用户,但密码非为

                           /etc/shadow中的密码,而由samba自行管理的文件,其密码文件的格式由passdb backend进行定义;

                  server:由第三方服务进行统一认证;
                  domain:使用DC进行认证;基于kerberos协议进行;
                                    passdb backend = tdbsam
                                    Printing Options
                                    load printers = yes
                                    cups options = raw
            
 共享文件系统配置
          [SHARED_NAME]
                    有三类:
            [homes]:为每个samba用户定义其是否能够通过samba服务访问自己的家目录;
            [printers]:定义打印服务;
            [shared_fs]:定义共享的文件系统; 
            
          常用指令:
            comment :注释信息;
            path    :当前共享所映射的文件系统路径;
            browseable:是否可浏览,指是否可被用户查看;
            guest ok  :是否允许来宾账号访问;
            public    :是否公开所有用户;
            writable  :是否可写
            write list:拥有写权限的用户列表;
              用户名
              @组名
              +组名
        
samba用户管理:
        smbpasswd 
          smbpasswd [options] USERNAME
            -a:添加
            -x:删除
            -d:禁用
            -e:启用
        pdbedit
          -L:列出samba服务中的所有用户;
          -a, –create:添加用户为samba用户;
            -u, –user=USER:要管理的用户;
          -x, –delete:删除用户;
          -t, –password-from-stdin:从标准输出接收字符串作为用户密码;
        
查看服务器端的共享:
        smbclient -L SMB_SERVER  [-U USERNAME]
        
交互式文件访问:
        smbclient //SMB_SERVER/SHARE_NAME [-U USERNAME]
        
挂载访问:

        mount -t cifs //SMB_SERVER/SAHRE_NAME  -o username=USERNAME,password=PASSWORD


 注意:挂载操作的用户,与-o选项中指定用户直接产生映射关系;

           此时,访问挂载点,是以-o选项中的username指定的用户身份进行,与本地用户无关,
        
smbstatus命令:
      显示samba服务的相关共享的访问状态信息;
            -b:显示简要格式信息;
             -v:显示详细格式信息; 
        

以下是samba的具体实现:

一、安装SAMBA

 [root@shewei ~]#yum -y install samba samba-client samba-common

1)、samba                      samba服务器软件包

2)、samba-client            samba客户端工具

3)、samba-common      samba通用工具和库文件

二、配置SAMBA服务器

[root@shewei ~]#systemctl start smb nmb          #提供文件系统共享和打印机共享

            监听的端口: 137/udp, 138/udp 
                      139/tcp, 445/tcp 

[root@wei ~]#smbclient -L 172.18.12.11 [user]        #可以匿名登陆,查看是否能显示出列表
[root@wei samba]#smbpasswd -a centos            #创建samba用户,需要本地有映射的用户,

                                  这里密码是samba设置的,

[root@wei ~]#smbclient -U centos //172.18.12.11/centos #访问共享的家目录,给家目录w权限可以上传和下载

samba用户管理:
        smbpasswd 
          smbpasswd [options] USERNAME
            -a:添加
            -x:删除
            -d:禁用
            -e:启用
        pdbedit                #此命令功能很强大
          -L:列出samba服务中的所有用户;
          -a, –create:添加用户为samba用户;
            -u, –user=USER:要管理的用户;
          -x, –delete:删除用户;
          -t, –password-from-stdin:从标准输出接收字符串作为用户密码;
[root@wei samba]#pdbedit -a -u fedora                    #这里添加用户也需要本地存在此用户

[root@wei samba]#smbstatus                               #显示samba服务的共享信息

                          -b  :显示摘要信息

                          -v  :显示详细信息


前面都是samba的一些使用方法;下面才是samba的具体配置

创建共享目录(假设共享/smb目录下的文件)

  # mkdir -pv /data/mydat

# vim/etc/samba/smb.conf
添加如下内容:

[mysql]
        comment = MYdate
        path = /data/mydata
        public = yes
        browseable = yes
        read only = no

保存退出后

[root@wei data]#testparm                    #使用此命令检查是否成功,会多出一个mysql列表

最后记得给对应目录的权限,此处给了公共权限,同时记得一定要有本地映射的用户,

[root@she ~]#mount -t cifs //172.18.12.11/mysql /opt/  -o username=centos,password=centos

           #在客户端挂载samba共享文件,指定文件系统cifs , -o 指定挂载使用的用户和密码

原创文章,作者:shewei,如若转载,请注明出处:http://www.178linux.com/74353

(0)
sheweishewei
上一篇 2017-04-27 19:20
下一篇 2017-04-28 10:23

相关推荐

  • vim编辑器的使用

    vim          vim是一个类似于vi的文本编辑器,不过在vi的基础上增加了很多功能,在早起vim和Emacs编辑器打的很火热,在1999年被linuxwork文本编辑分类的优胜者,而vim屈居第二,但2000年vim赢得了salashdot beanie的最佳开放源代…

    系统运维 2016-08-09
  • Linux进程及作业控制

    inux进程 进程的概念 当一个系统启动时,刚开机是第一个运行的是内核代码!先把内核放到cpu上运行,等内核控制和掌管了一切,有内核启动进程!然后创建第一个进程 init进程  内核空间 用户空间也都已被创建成功!后期的一切管理工作都由init来负责 init不能代表系统完成一些内核特权的执行!但由他负责向内核提交 他…

    Linux干货 2016-09-10
  • DNS以及bind使用

    DNS以及域名分发布式数据库相关知识      一、 DNS相关介绍           1. DNS(Domain Name Service):域名解析服务协议         &nbsp…

    2015-03-17
  • DNS and BIND

    DNS and BIND 名称解析:把一种代号转换成为另一种代号的功能是应用程序基于某个搜索键在指定的数据库查询,查询到对应的键以后,对应键被找出来的过程!passwd —《nsswith》/etc/nsswith.conf 注意:查询的时候用到的是UDP的53,主从复制走的是tcp(但是也用到udp) DNS: Domain Name Serv…

    Linux干货 2016-10-21
  • 什么是文件系统

    文件系统:层级结构;有索引; /: 原初起点; 倒置树状结构; /dev/pts/2: 最左侧/: 表示根目录 其它的/: 表示路径分隔符 Linux的路径分隔符是/ Windows的是\ 文件的路径表示: 绝对路径:从根开始表示出的路径  相对路径:从当前位置开始表示出的路径 文件名使用法则: 严格区分字符大小写:file1, File1, FI…

    Linux干货 2016-10-29
  • HA专题: 使用pacemaker+corosync实现MySQL高可用

    HA专题: 使用pacemaker+corosync实现MySQL高可用 前言 实验拓扑 实验环境 实验步骤 准备工作 安装HA组件并配置 配置NFS 配置MySQL 配置HA资源 测试 总结 前言 上篇文章我们介绍了使用pacemkaer+corosync实现简单的nginx高可用, 这篇文章我们介绍如何使用pacemaker+corosync实现MySQ…

    Linux干货 2016-04-11