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
下一篇 2017-04-28

相关推荐

  • linux同时创建多个目录

    mkdir -p a_{c,d} b_{c,d} mkdir 同时创建多个文件夹 mkdir -p  mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sb…

    2017-08-28
  • Linux运维学习历程-第九天-bash脚本初步了解

    概述:   本章重点在于讲解bash脚本的基础知识,为今后学习使用bash脚本打下基础 一、bash基础特性         程序:指令+数据             指令:由程序文件提供         &n…

    Linux干货 2016-08-18
  • 创建用户、用户组

    创建用户、用户组                  1解释Linux的安全模型   2解释用户帐号和组群帐号的目的   3用户和组管理命令   4理解并设置文件权限 5默认权限 6特殊权限 …

    Linux干货 2016-08-08
  • 分布式文件系统之fastDFS部署

    fastDFS下载地址:https://github.com/happyfish100/fastdfs部署参考文档:http://joelhy.github.io/2015/01/27/FastDFS-v5-06-deploy/ 我们接下来来部署fastDFS 部署结构: 192.168.42.150 node1 [Tracker]192.168.42.15…

    Linux干货 2017-06-16
  • linux入门及基本命令

    Linux的入门及基本命令     一.   磁盘分区 1.       分区类型 主分区:1-4,一个硬盘最多四个,最少可以没有,前提有别的硬盘存在,启动系统或存数据,不要再分小区,只有个活动状态。 2.    &nb…

    Linux干货 2017-07-15
  • Linux终端的类型

    Linux终端可以分为如下几种类型    1、物理终端:是指通过键盘显示器直接连接到主机的方式,我们也称之为console端。    2、虚拟终端:是利用软件的方式模拟实现类似物理终端的访问方式,通常Linux内核开启6个虚拟终端,分别使用Ctrl+Alt+F1~F6实现不同tty虚拟终端之间的切换,供多用户或者多任务…

    Linux干货 2016-10-29