• Ubuntu 20.04 中配置NFS服务


            NFS是Network File System的首字母缩写。它是一种分布式协议,使客户端可以访问远程服务器上的共享文件。

    1、安装NFS服务端

    $  sudo apt install nfs-kernel-server

    检查nfs-server是否已经启动

    $ sudo systemctl status nfs-server

    2、创建NFS共享目录

    下一步将创建一个NFS共享目录。我们将在/mnt目录中创建,在这里,我们的NFS共享目录称为ShareFolder:

    $ sudo mkdir -p /mnt/ShareFolder

    我们希望所有客户端都可以访问该共享文件夹里面的内容,因此分配最高权限:

    $ sudo chown nobody:nogroup /mnt/ShareFolder

    $ sudo chmod -R 777 /mnt/ShareFolder/

    3、编辑exports配置文件

    通过编辑/etc/exports配置文件,来允许哪些客户端可以访问该共享。

    下面命令打开该配置文件:

    $ sudo vim /etc/exports

    下面的条目表示允许单个客户端访问、多个客户端访问、允许一个网段的客户端访问:

    # 如果只允许一个客户端访问,可以只写一个客户端的IP地址

    /mnt/ShareFolder 192.168.22.131(rw,sync,no_subtree_check)

    # 如果只允许多个客户端访问,可以向如下一样写

    /mnt/ShareFolder 192.168.22.131(rw,sync,no_subtree_check)

    /mnt/ShareFolder 192.168.23.171(rw,sync,no_subtree_check)

    /mnt/ShareFolder 192.168.22.137(rw,sync,no_subtree_check)

    # 如果运行一个网段的客户端访问,可以这样写:

    /mnt/ShareFolder 192.168.22.*(rw,sync,no_subtree_check)

    或者

    /mnt/ShareFolder 192.168.23.0/24(rw,sync,no_subtree_check)

    TIPS:

    指定方式: 可以IP,也可以是子网所有的IP,也可以是域名,或者所有的主机

    IP:192.168.22.131

    子网所有的IP:192.168.0.0/24

    域名:www.baidu.com

    所有主机:*

    参数:

    ro 该主机对该共享目录有只读权限

    rw 该主机对该共享目录有读写权限

    root_squash 将root用户及所属组都映射为匿名用户或用户组(默认设置);

    no_root_squash 与rootsquash取反;

    all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户(nfsnobody)

    no_all_squash 与all_squash取反(默认设置)

    anonuid=XXX 将客户机上的用户映射成指定的本地用户ID的用户(UID=xxx)

    anongid=XXX 将客户机上的用户映射成属于指定的本地用户组ID (GID=xxx)

    sync 资料同步写入到内存与硬盘中,效率低,但可以保证数据的一致性

    async 资料会先暂存于内存中,而非直接写入硬盘

    insecure 允许从这台机器过来的非授权访问

    subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)

    no_subtree_check 和上面相对,不检查父目录权限

    wdelay 检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置)

    no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。若有写操作则立即执行,应与sync配合使用

    hide 在NFS共享目录中不共享其子目录

    no_hide 共享NFS目录的子目录

    secure NFS通过1024以下的安全TCP/IP端口发送

    insecure NFS通过1024以上的端口发送

    4 、export共享目录

    使用下面命令将共享文件夹启用并生效:

    $ sudo exportfs -arv

    exporting 192.168.22.*:/mnt/ShareFolder

    使用showmount -e查看是否可以看到共享目录:

    $ showmount -e 192.168.22.113

    Export list for 192.168.22.113:

    /mnt/ShareFolder 192.168.22.*

    5、配置客户端

    安装NFS客户端:

    # 在Ubuntu20.04中安装客户端:nfs-common

    $ sudo apt install nfs-common

    # 在Centos8中安装客户端:nfs-utils

    # yum -y install nfs-utils

    然后在/mnt目录中创建一个ClientFolder目录,将从该目录中挂载服务器上的NFS共享目录。

    # mkdir -p /mnt/ClientFolder

    最后,挂载NFS共享目录

    # mount 192.168.22.113:/mnt/ShareFolder /mnt/ClientFolder/

  • 相关阅读:
    HR 必知的 360 评估
    示波器探头对测量带宽的影响
    9.7黄金是否会继续下跌?后市如何布局
    汇编语言、寄存器分类及程序计数器
    华为u2000v200r018 同步网元失败 提示 服务器不可达 解决办法
    c语言---指针进阶(1)
    标签属性 rel=“noopener noreferrer“ 原来这么有用
    STM32F10x SPL V3.6.2 集成 FreeRTOS v202112
    【Redis】Redis安装步骤和特性以及支持的10种数据类型(Redis专栏启动)
    【Verilog】时序逻辑电路 -- 有限同步状态机[补充]
  • 原文地址:https://blog.csdn.net/luanlz/article/details/134302718