File Service之NFS和Samba服务

2018-07-25  本文已影响0人  Net夜风

一、简述NFS原理和配置

NFS:Network FileSystem,网络文件系统

NFS配置:

showmount - show mount information for an NFS server

        showmount -e NFS_SERVER_IP: 查看指定的nfs server上导出的所有文件系统; 
        showmount -a:在nfs server上查看nfs服务的所有客户端列表;
        
    exportfs:
        exportfs 
            -r:重新导出;
            -a:所有文件系统; 
            -v:详细信息;
            -u:取消导出文件系统; 

以192.168.1.107这台主机为服务端:
  1. 检查内核模块

     [root@localhost ~]# lsmod | grep nfsd
     nfsd                  342857  1 
     auth_rpcgss            59415  1 nfsd
     nfs_acl                12837  1 nfsd
     lockd                  93827  1 nfsd
     grace                  13515  2 nfsd,lockd
     sunrpc                348674  7 nfsd,auth_rpcgss,lockd,nfs_acl
    
  2. 安装nfs-utils程序包

           [root@localhost ~]# yum -y install nfs-utils 
    
  3. 启动服务

    [root@localhost ~]# systemctl start nfs.service  
    
  4. 修改配置文件

    先创建共享目录

    [root@localhost ~]# mkdir -pv /data/mysql

    添加配置文件

    [root@localhost ~]# vim /etc/exports
    /data/mysql 192.168.1.103(rw) 192.168.1.102(ro)

    重新导出配置

    [root@localhost ~]# exportfs -rav

以192.168.1.103这台主机为客户端:
[root@localhost ~]# mount.nfs 192.168.1.107:/data/mysql /mnt

挂载后就可以开始使用了

二、简述samba服务,并实现samba配置

    [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:是否可写;
                    read only:是否为只读;
                    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:显示详细格式信息; 

配置示例

 在服务器端配置
 [root@localhost ~]# yum -y install samba
 #创建访问用户
 [root@localhost samba]# useradd smbuser1
 [root@localhost samba]# smbpasswd smbuser1 -a
 New SMB password:
 Retype new SMB password:
 Added user smbuser1.
 [root@localhost samba]# mkdir /data/samba/files -pv
 [root@localhost samba]# setfacl -m u:smbuser1:rwx /data/samba/files
 
 # 配置共享
 vim /etc/samba/smb.conf
     [myfiles]
        comment = A TEST SHARED DIR
        guest ok = Yes
        path = /data/samba/files
        read only = No
# testparm命令测试语法错误

在客户端操作:
[root@localhost ~]# smbclient -L 192.168.1.103 -U smbuser1
[root@localhost ~]# mount.cifs //192.168.1.103/myfiles /mnt -o  username=smbuser2 password=inspur
[root@localhost ~]# mkdir /mnt/mysql
[root@localhost ~]# ls
[root@localhost ~]# ls /mnt
issue  mysql
上一篇下一篇

猜你喜欢

热点阅读