前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu16环境安装和使用NFS

Ubuntu16环境安装和使用NFS

作者头像
程序员欣宸
发布2022-05-09 09:09:45
2800
发布2022-05-09 09:09:45
举报
文章被收录于专栏:实战docker实战docker

通过NFS服务我们可以方便的读写服务器上的文件,本章我们来实战Ubuntu16环境安装和使用NFS;

原文地址:http://blog.csdn.net/boling_cavalry/article/details/79498346

文章概要

本次实战由以下步骤组成:

  1. 列举环境信息;
  2. 在192.168.119.128安装NFS服务,将此机器作为NFS服务器;
  3. 在192.168.119.155安装NFS客户端,将此机器作为NFS客户端;
  4. 在客户端验证NFS服务;
  5. 客户端取消挂载;

环境信息

本次实战用到两台Ubuntu16的机器,如下图所示:

这里写图片描述
这里写图片描述

安装NFS服务

在192.168.119.128机器上执行以下操作:

  1. 创建一个文件夹作为共享文件目录:/usr/local/work/nfs;
  2. 给文件夹增加读写权限:
代码语言:javascript
复制
chmod a+rw /usr/local/work/nfs
  1. apt更新:
代码语言:javascript
复制
apt-get update
  1. 安装NFS服务应用:
代码语言:javascript
复制
apt-get install nfs-kernel-server
  1. 配置NFS服务目录,打开文件/etc/exports,在尾部新增一行,内容如下:
代码语言:javascript
复制
/usr/local/work/nfs *(rw,sync,no_subtree_check)

这一行的意思是将/usr/local/work/nfs作为服务文件夹向客户端开放,*表示任何IP都可以访问,rw是读写权限,sync是同步权限,no_subtree_check表示如果输出目录是一个子目录,nfs服务器不检查其父目录的权限; 6. 执行以下命令重启服务,使配置生效:

代码语言:javascript
复制
/etc/init.d/nfs-kernel-server restart

至此,NFS服务就准备好了,接下来我们去准备NFS客户端;

安装NFS客户端

在192.168.119.155机器上执行以下操作:

  1. 安装客户端应用:
代码语言:javascript
复制
apt-get install -y nfs-common
  1. 用mkdir命令创建一个文件夹/usr/local/work/nfs-mount;
  2. 将NFS服务器的/usr/local/work/nfs目录挂载到NFS客户端的/usr/local/work/nfs-mount目录,执行以下命令:
代码语言:javascript
复制
mount 192.168.119.128:/usr/local/work/nfs  /usr/local/work/nfs-mount
  1. 执行命令/usr/local/work/nfs看一下挂载信息,如下:
代码语言:javascript
复制
root@maven:~# df
Filesystem                          1K-blocks     Used Available Use% Mounted on
udev                                   480820        0    480820   0% /dev
tmpfs                                   99828     4856     94972   5% /run
/dev/sda1                            59732092 12798824  43876016  23% /
tmpfs                                  499136        0    499136   0% /dev/shm
tmpfs                                    5120        0      5120   0% /run/lock
tmpfs                                  499136        0    499136   0% /sys/fs/cgroup
/dev/loop5                              12288    12288         0 100% /snap/kubectl/328
/dev/loop3                              83328    83328         0 100% /snap/core/3887
/dev/loop0                              12288    12288         0 100% /snap/kubectl/303
/dev/loop4                              83712    83712         0 100% /snap/core/4017
/dev/loop1                              12288    12288         0 100% /snap/kubectl/346
/dev/loop2                              83584    83584         0 100% /snap/core/4110
tmpfs                                   99828        0     99828   0% /run/user/0
192.168.119.128:/usr/local/work/nfs  59732224  3238912  53435904   6% /usr/local/work/nfs-mount

注意最下面一行的内容:192.168.119.128:/usr/local/work/nfs 59732224 3238912 53435904 6% /usr/local/work/nfs-mount,已经将远程文件夹挂载到了本地文件夹;

至此,NFS客户端安装完毕,挂载成功;

验证NFS服务

在192.168.119.155机器上执行以下操作,:

  1. 在NFS客户端上执行以下命令,将本机的IP地址信息输出到NFS目录下的test.txt文件中:
代码语言:javascript
复制
ip addr > /usr/local/work/nfs-mount/test.txt
  1. 在NFS服务端执行命令cat /usr/local/work/nfs/test.txt,可以看到上一步生成的test.txt文件的内容,证明NFS服务已经生效,如下:
代码语言:javascript
复制
root@nfs:~# cat /usr/local/work/nfs/test.txt 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:65:66:54 brd ff:ff:ff:ff:ff:ff
    inet 192.168.119.155/24 brd 192.168.119.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe65:6654/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:f0:b9:8e:5d brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 scope global docker0
       valid_lft forever preferred_lft forever

可见NFS的服务已经正常运行;

客户端取消挂载

  1. 如果客户端不再需要NFS服务,想取消这个文件夹的挂载,执行以下命令即可:
代码语言:javascript
复制
umount /usr/local/work/nfs-mount

注意:不要在/usr/local/work/nfs-mount目录执行这个命令,否则会如下报错:

代码语言:javascript
复制
root@maven:/usr/local/work/nfs-mount# umount /usr/local/work/nfs-mount 
umount.nfs4: /usr/local/work/nfs-mount: device is busy

应该退出/usr/local/work/nfs-mount之后再执行umount命令; 2. 取消挂载后,去NFS客户端的/usr/local/work/nfs-mount目录下看已经没有文件了; 3. 取消挂载后,去NFS服务端的/usr/local/work/nfs目录下看,文件还在,不受影响;

至此,Ubuntu16环境安装和使用NFS的实战就全部结束了,希望以上操作能助您快速搭建NFS服务;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章概要
  • 环境信息
  • 安装NFS服务
  • 安装NFS客户端
  • 验证NFS服务
  • 客户端取消挂载
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档