美文网首页
Ubuntu 20.04 中配置NFS服务

Ubuntu 20.04 中配置NFS服务

作者: 老率的IT私房菜 | 来源:发表于2022-05-09 02:02 被阅读0次

    NFS是Network File System的首字母缩写。它是一种分布式协议,使客户端可以访问远程服务器上的共享文件。在本文中,将在Ubuntu 20.04 LTS中安装NFS服务。然后,演示如何从客户端系统访问服务器上的文件。

    系统环境

    NFS服务端:Ubuntu 20.04 LTS ,IP地址:192.168.43.174

    NFS客户端:Centos8 ,IP地址:192.168.43.131

    一、安装NFS服务端

    运行下面命令安装NFS服务端:

    bob@ubuntu-20-04:~$ sudo apt install nfs-kernel-server

    使用下面命令检查nfs-server是否已经启动:

    bob@ubuntu-20-04:~$ sudo systemctl status nfs-server

    ● nfs-server.service - NFS server and services

        Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled)

        Active: active (exited) since Wed 2021-04-21 10:20:29 CST; 1min 30s ago

      Main PID: 41727 (code=exited, status=0/SUCCESS)

          Tasks: 0 (limit: 2278)

        Memory: 0B

        CGroup: /system.slice/nfs-server.service

    4月 21 10:20:28 ubuntu-20-04 systemd[1]: Starting NFS server and services...

    4月 21 10:20:29 ubuntu-20-04 systemd[1]: Finished NFS server and services.

    二、创建NFS共享目录

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

    bob@ubuntu-20-04:~$ sudo mkdir -p /mnt/ShareFolder

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

    bob@ubuntu-20-04:~$ sudo chown nobody:nogroup /mnt/ShareFolder

    bob@ubuntu-20-04:~$ sudo chmod -R 777 /mnt/ShareFolder/

    三、编辑exports配置文件

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

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

    bob@ubuntu-20-04:~$ sudo vim /etc/exports

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

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

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

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

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

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

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

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

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

    或者

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

    配置文件中的权限解释:

    rw 允许读写

    sync 文件同时写入硬盘和内存

    no_subtree_check 即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率

    四、export共享目录

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

    bob@ubuntu-20-04:~$ sudo exportfs -arv

    exporting 192.168.43.*:/mnt/ShareFolder

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

    bob@ubuntu-20-04:~$ showmount -e 192.168.43.174

    Export list for 192.168.43.174:

    /mnt/ShareFolder 192.168.43.*

    https://www.51cto.com/it/news/2020/0624/21601.html

    https://server.51cto.com/article/515608.html

    https://www.donews.com/news/detail/4/2969423.html

    五、配置客户端

    安装NFS客户端:

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

    bob@ubuntu-20-04:~$ sudo apt install nfs-common

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

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

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

    [root@localhost ~]# mkdir -p /mnt/ClientFolder

    最后,挂载NFS共享目录,如下所示:

    [root@localhost ~]# mount 192.168.43.174:/mnt/ShareFolder /mnt/ClientFolder/

    六、测试NFS共享目录

    为了测试配置是否正常,我们将在客户端/mnt/ClientFolder文件夹中创建文件测试一下,如下所示:

    [root@localhost ClientFolder]# dd if=/dev/zero of=./test.dd bs=1M count=10

    10+0 records in

    10+0 records out

    10485760 bytes (10 MB, 10 MiB) copied, 0.0540562 s, 194 MB/s

    [root@localhost ClientFolder]# ll

    total 10240

    -rw-r--r-- 1 nobody nobody 10485760 Apr 21  2021 test.dd

    返回服务端,看一下/mnt/ShareFolder目录中是否可以看到该文件:

    bob@ubuntu-20-04:~$ ll /mnt/ShareFolder/

    total 10248

    drwxrwxrwx 2 nobody nogroup    4096 4月  21 10:50 ./

    drwxr-xr-x 4 root  root        4096 4月  21 10:24 ../

    -rw-r--r-- 1 nobody nogroup 10485760 4月  21 10:50 test.dd

    总结

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

    相关文章

      网友评论

          本文标题:Ubuntu 20.04 中配置NFS服务

          本文链接:https://www.haomeiwen.com/subject/dkicurtx.html