zoukankan      html  css  js  c++  java
  • NFS介绍、服务端安装配置、NFS配置选项

    6月21日任务

    14.1 NFS介绍
    14.2 NFS服务端安装配置
    14.3 NFS配置选项

     

    14.1 NFS介绍

    14.2 NFS服务端安装配置

    1、首先需要2台机器,一台是服务端,一台是客户端,分别安装nfs-utils。

    服务端需要安装的程序

    [root@jimmylinux-001 ~]# yum install -y nfs-utils rpcbind

    客户端需要安装的程序

    [root@jimmylinux-001 ~]# yum install -y nfs-utils

    2、编辑文件 vim /etc/exports 

    [root@jimmylinux-001 ~]# vim /etc/exports
    
    写入以下内容
    /home/nfstestdir 192.168.52.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
    
    前面一段是共享目录,后面一段定义你要给那个机器去分享共享这个目录,指定一个IP或IP段。

    3、创建要分享的目录,并设置成777的权限,设置成777权限是为了方便一会做实验。

    [root@jimmylinux-001 ~]# mkdir /home/nfstestdir
    
    [root@jimmylinux-001 ~]# chmod 777 /home/nfstestdir

    4、启动rpcbind 服务

    [root@jimmylinux-001 ~]# systemctl start rpcbind

    查看rpcbind 服务监听端口

    [root@jimmylinux-001 ~]# netstat -lnpt
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      2572/rpcbind        
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1101/nginx: master  
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      942/sshd            
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1267/master         
    tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      1101/nginx: master  
    tcp6       0      0 :::111                  :::*                    LISTEN      2572/rpcbind        
    tcp6       0      0 :::22                   :::*                    LISTEN      942/sshd            
    tcp6       0      0 ::1:25                  :::*                    LISTEN      1267/master         
    tcp6       0      0 :::3306                 :::*                    LISTEN      1315/mysqld  

    5、启动nfs服务,在启动nfs服务后会自动启动rpc相关的其他服务。

    6、如果想让nfs服务开机自启动,还需要执行以下命令。

    [root@jimmylinux-001 ~]# systemctl enable nfs
    Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

    14.3 NFS配置选项

    [root@jimmylinux-001 ~]# cat /etc/exports 
    /home/nfstestdir 192.168.52.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)    括号里面是nfs的配置选项内容

    NFS配置选项的含义:

    rw   读写
    ro   只读
    sync                        同步模式,内存数据实时写入磁盘(sync很快的就会把数据写到磁盘去,但是不好之处就会降低磁盘效率)
    async                      非同步模式(不需要实时把数据写入到磁盘,每隔一段时间会把内存数据刷入到磁盘,好处是可以保障磁盘效率,不好就是万一断电,数据可能会丢失)
    no_root_squash     客户端挂载NFS共享目录后,root用户不受约束,权限很大
    root_squash           与上面选项相对,客户端上的root用户收到约束,被限定成某个普通用户
    all_squash              客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户
    anonuid/anongid    和上面几个选项搭配使用,定义被限定用户的uid和gid

    下面在客户端上做一个挂载

    1、安装rpcbind,rpcbind包是由nfs-utils自带的包一起安装的。

    [root@jimmylinux-002 ~]# yum install -y nfs-utils

    2、假如有一台机器已经做了nfs的服务,可以使用showmount查看是否有权限。

    如果出现上面的报错,说明网络不通,没有办法和192.168.52.128的111端口通讯,要么是对方的rpcbind服务没有开启,如果服务开启了还不行,那就是防火墙的关系导致。

    把服务端和客户端的防火墙都关闭,包括selinux。

    [root@jimmylinux-001 ~]# systemctl stop firewalld  关闭服务端防火墙

    [root@jimmylinux-001 ~]# setenforce 0
    [root@jimmylinux
    -002 ~]# systemctl stop firewalld 关闭客户端防火墙 [root@jimmylinux-002 ~]# getenforce 关闭selinux Enforcing
    [root@jimmylinux-002 ~]# setenforce 0

    这个时候再showmount 查看权限就可以了

    3、mount 挂载

    可以在这个目录下创建一个文件

    为什么服务端和客户端2边的显示名字不一样呢?

    因为在配置选项中有anonuid和anongid,而配置文件中有写了一个

    anonuid=1000,anongid=1000(1000的id来限定一个普通用户)意思就是说一旦挂载了nfs共享的目录,不够用哪个用户来操作,最终都是以1000uid和1000gid的用户体现出来。

    这个就是因为限定了用户,所以会显示成这样子的。

  • 相关阅读:
    oracle 表误更新 (flashback )闪回操作
    经典sql语句大全
    如何让程序自动更新
    C#如何测试代码运行时间
    oracle复制表的sql语句
    NeatUpload的安装使用 文件上传。可传大文件。
    c#实现ftp上传代码
    C# ftp 上传、下载、删除
    oracle cursor 与refcursor及sys_refcursor的区别 -游标(cursor)应用-实例
    Oracle中Merge语句的使用
  • 原文地址:https://www.cnblogs.com/lms0755/p/9211585.html
Copyright © 2011-2022 走看看