Ubuntu18.04系统下网络文件系统nfs的安装及简单配置
硬件环境:
两台Ubuntu18.04服务器使用局域网连接,IP分别为192.168.11.66 和 192.168.11.206。
===============================================================
nfs的安装:
分别在192.168.11.66 和 192.168.11.206电脑上执行命令:
sudo apt-get install nfs-kernel-server
查看nfs运行状态,查看是否安装成功:
执行命令:
sudo service nfs-kernel-server status

在两台电脑上安装nfs成功后开始进行配置。
=====================================================
简单配置nfs:
首先我们需要从两台电脑192.168.11.66 和 192.168.11.206中选出一个作为服务端,另一个则为客户端。
这里我们选电脑192.168.11.206为服务端,电脑192.168.11.66为客户端。
由于nfs是网络文件系统,所以文件其实是存储在服务端上的,客户端是通过网络访问服务端上的文件的,由于在linux系统中我们可以挂载网络文件系统到本地文件上,因此对网络文件系统上的操作和本地文件系统上进行的操作均是一致的。
服务端配置(电脑 192.168.11.206):
在服务器上新建文件夹,该文件夹为提供给客户端访问的,这里我们假设新建的文件夹路径为: /data ,该路径可以根据需要自己设定。
文件夹新建后以后需要更改权限(不更改服务端文件夹权限即使客户端挂载以后也是无权访问的):
sudo chown nobody:nogroup /data
解释说明下,用户nobody,用户组nogroup:
查看 /etc/passwd 和 /etc/group ,可以看到
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
nogroup:x:65534:
也就是说为了linux系统中不管是哪一台电脑(不论客户端和服务端)都有一个相同的uid 和 gid, nfs默认也是将客户端的用户权限squash为65534:65534,即nobody用户,nogroup用户组。
编辑配置文件:
sudo vim /etc/exports
默认配置如下:

添加内容:
/data 192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,root_squash,all_squash)
其中, /data是服务端的文件夹, 192.168.11.66为客户端IP。上面语句的意思就是把服务端192.168.11.206主机的/data 文件夹作为nfs的根目录。上面的配置除了权限配置以外都是默认配置这里就不多讲了。
我们同样可以配置 192.168.11.0/24这个网络下的所有主机均可以作为客户端访问服务端的 /data ,配置如下:
/data 192.168.11.0/24(rw,sync,fsid=0,crossmnt,no_subtree_check,root_squash,all_squash)
查看配置是否正确,服务端执行命令:
sudo exportfs -v
输出没报错,证明配置没有语法错误:

重启服务端的nfs服务:
sudo service nfs-kernel-server restart
服务端配置结束。
==========================================================
客户端配置:
指定客户端进行挂载网络文件系统的路径,这里我们假设路径为 ~/data
创建本地的挂载目录:
mkdir ~/data
挂载nfs网络文件系统:
sudo mount 192.168.11.206:/data ~/data
查看挂载服务端文件系统情况:(下面的ip是服务端的)
showmount -e 192.168.11.206
显示结果不为空,证明客户端成功挂载服务端的文件系统。
在本地挂载的网络文件系统中创建文件,看下文件权限:
touch ~/data/xxx.txt
ls -al ~/data/xxx.txt

可以看到本地用户在本地挂载的nfs文件系统中创建文件,该文件的用户显示为nobody,用户组显示为nogroup 。
(注意: nobody , nogroup 在linux电脑上uid和gid均是一致的,就如何root用户,root组,在任何linux电脑上默认均为uid=0,gid=0)
还需要注意的一点是,这样配置的话客户端在挂载的nfs文件系统中创建的文件权限均为 nobody:nogroup , 此时如果服务端不切换为nobody用户的话在服务端指定的共享路径(这里是 /data )中创建文件在客户端是无法读写的,具体参考nfs的权限设置。
卸载掉挂载的nfs文件系统:
sudo umount ~/data
需要注意的是卸载的时候不在挂载的文件夹中操作,需要先退出来,不然会提示busy,无法卸载。
==========================================================
参考:
https://www.cnblogs.com/devilmaycry812839668/p/15127755.html
Ubuntu18.04系统下网络文件系统nfs的安装及简单配置的更多相关文章
- ubuntu18.04系统下用devstack安装openstack(最新版)
ubuntu18.04系统下用devstack安装openstack(最新版) 2018年12月14日 16:34:14 Cherls 阅读数:427 前期准备: 安装git,升级pip,其他 s ...
- Linux下网络文件系统NFS服务搭建易错点总结
一.环境准备: 1 [root@czh ~]# cat /etc/redhat-release 2 CentOS release 6.7 (Final) 3 [root@czh ~]# uname - ...
- Ubuntu18.04系统下安装Pycharm&vim设置自动缩进及默认显示行号
Ubuntu18.04系统自带python3.6及python2.7,Pycharm是一款非常强大的IDE.目前Pycharm有两个版本:专业版和Community社区,区别是专业版是收费,而且功能更 ...
- ubuntu18.04系统下无外部显示问题解决
记录一下自己作死过程. 由于学习的需要,在windows10下装了ubuntu18.04系统,第一次装这个系统时,也出现了无外部显示,那时候是老师帮忙搞好的,当时没太在意,只是走马关花的看了老师操作了 ...
- Linux nfs下载安装与简单配置
1.什么是NFS? 全称 network file system 网络文件系统 通过网络存储和组织文件的一种方法或机制. 2.为什么要用共享存储? 前端所有的应用服务器接收到用户上传的图片.文件.视频 ...
- ubuntu18.04系统下RealTek RTL 8852BE网卡没有WiFi驱动
1 打开终端:sudo apt-get update2 安装必要的包:sudo apt-get install make gcc linux-headers-$(uname -r) build-ess ...
- 深入理解linux系统下proc文件系统内容
深入理解linux系统下proc文件系统内容 内容摘要:Linux系统上的/proc目录是一种文件系统,即proc文件系统. Linux系统上的/proc目录是一种文件系统,即proc文件系统.与其它 ...
- ubuntu 12.04 "系统的网络服务与此版本的网络管理器不兼容
ubuntu 12.04 "系统的网络服务与此版本的网络管理器不兼容“ 2013-05-10 21:18 2271人阅读 评论(0) 收藏 举报 今天上午在实验室一顿乱整,不知道整坏了什么, ...
- 64位系统下System32文件系统重定向
前言 因为一次偶然的机会,需要访问系统目录“C:/Windows/System32“文件夹下的内容,使用的测试机器上预装了win7 64系统.在程序运行中竟然发生了该文件路径不存在的问题!!通过查看网 ...
- Ubuntu18.04环境下melodic安装gmapping
Ubuntu18.04 环境下melodic中很多包没有提供sudo apt install的安装方式,需要通过源代码安装,安装方法如下: 1.先安装依赖库: sudo apt--dev sudo a ...
随机推荐
- Kubernetes监控手册06-监控APIServer
写在前面 如果是用的公有云托管的 Kubernetes 集群,控制面的组件都交由云厂商托管的,那作为客户的我们就省事了,基本不用操心 APIServer 的运维.个人也推荐使用云厂商这个服务,毕竟 K ...
- Scrapy框架(十)--增量式爬虫
增量式爬虫 - 概念:监测网站数据更新的情况,只会爬取网站最新更新出来的数据. - 分析: - 指定一个起始url - 基于CrawlSpider获取其他页码链接 - 基于Rule将其他页码链接进行请 ...
- MyBatis的逆向工程详细步骤操作
1. MyBatis的逆向工程详细步骤操作 @ 目录 1. MyBatis的逆向工程详细步骤操作 2. 逆向工程配置与生成 2.1 MyBatis3Simple:基础版,只有基本的增删改查 2.1.1 ...
- java中判断一个String字符串或字符数组中包含某个字段
/** * 判断String字符串中包含某个字段 * @param oriStr 原始字符串 * @return */ private static boolean findString(String ...
- 指令(Prompt)基本格式
指令(Prompt)基本格式: 参考信息:包含文心一言完成任务时需要知道的必要背景和材料,如:报告.知识.数据库.对话上下文等 动作:需要文心一言帮你解决的事情,如:撰写.生成.总结.回答等 目标:需 ...
- libevent之evbuffer
目录 Evbuffers:缓冲 IO 的实用程序功能 简介 创建或释放 evbuffer Evbuffers 和线程安全 检查 evbuffer 向 evbuffer 添加数据:基础知识 将数据从一个 ...
- Prometheus监控系统(三)Prometheus与Grafana集成
1. Prometheus和Grafana集成 Grafana是一款采用Go语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具.目前已支持绝大部分常 ...
- 『vulnhub系列』BEELZEBUB- 1
『vulnhub系列』BEELZEBUB- 1 下载地址: https://www.vulnhub.com/entry/beelzebub-1,742/ 信息搜集: 使用nmap扫描存活主机,发现主机 ...
- 【基础推导】MPC控制器及其车辆模型详细推导 (附代码链接及详细推导说明)
0. 参考与前言 Python 代码:github AtsushiSakai/PythonRobotics C++ 代码:github jchengai/gpir/mpc_controller 相关参 ...
- 深度解读昇腾CANN多流并行技术,提高硬件资源利用率
本文分享自华为云社区<深度解读昇腾CANN多流并行技术,提高硬件资源利用率>,作者:昇腾CANN. 随着人工智能应用日益成熟,文本.图片.音频.视频等非结构化数据的处理需求呈指数级增长,数 ...