NFS 系统的搭建
问题:
由于工作,需要,不断得进行挂在硬盘重装系统,NFS 系统给了我一个很好的解决方案。于是决定写一篇博客,防止以后再次使用的时候,能够很快得重新建立NFS 文件系统。
调研:
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
好处: 1. 节省本地存储空间,可以通过网络访问。 2. 可以所有用户共用一个文件系统。 3. 共享文件,并且减少网络中的移动设备的数量。
开发商: sun 公司
种类: RPC 服务系统
目的: 达到文件共享的目的,可以在不同系统之间使用嗯,通信协议与主机及操作系统无关。 就好像操作本地文件系统一样。
架构:
对于RPC 不太了解的同学可以参见:
使用:
1. 查看本地,是否已经安装了 nfs 和 rpcbind , 为什么要检查是否安装了 rpcbind : nfs 系统是rpc 系统的一种。它需要使用rpc 服务,才能正常使用。如果没有请使用 yum install 安装相应的包。
[yaowen@dhcp-65-15 ~]$ rpm -qa | grep nfs
qemu-block-nfs-2.9.1-2.fc26.x86_64
nfs-utils-2.2.1-4.rc2.fc26.x86_64
sssd-nfs-idmap-1.16.1-3.fc26.x86_64
libnfs-1.9.8-3.fc26.x86_64
libnfsidmap-2.2.1-4.rc2.fc26.x86_64
[yaowen@dhcp-65-15 ~]$ rpm -qa | grep rpcbind
rpcbind-0.2.4-8.rc3.fc26.x86_64
[yaowen@dhcp-65-15 ~]$
2. 当你安装好后,进行创建本地文件夹,来进行作为 nfs 的目录,并设置权限。
[yaowen@dhcp-65-15 ~]$ ll
total 36
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Desktop
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Documents
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Downloads
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Music
drw-rw-rw-. 2 yaowen yaowen 4096 May 17 00:43 NFS
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Pictures
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Public
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Templates
drwxr-xr-x. 2 yaowen yaowen 4096 Jun 27 2017 Videos
[yaowen@dhcp-65-15 ~]$ ll NFS
total 0
3. 进行使用 nfs 配置文件
/home/yaowen/NFS 10.66.0.0/16(rw,no_root_squash,no_all_squash,sync)
参数值 内容说明
rw ro 该目录分享的权限是可擦写 (read-write) 或只读 (read-only),但最终能不能读写,还是与文件系统的 rwx 及身份有关。
sync async sync 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘
no_root_squash root_squash 客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果你想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash
all_squash 不论登入 NFS 的使用者身份为何, 他的身份都会被压缩成为匿名用户,通常也就是 nobody(nfsnobody)
具体参数配置可以查找:2019年12月2日23:18:16
man exports
4. 重新载入 配置文件
exportfs -r
5. 重新启用 rpcbind 和 nfs 服务
6. 配置,防火墙。测试的时候,如果我们使用 fedora 的话,我们使用
systemctl stop firewalld.service 关闭 防火墙
7.在 另外一个电脑上,检查nfs 所在主机的可用列表:
➜ nfs showmount -e 10.66.65.15 (注意此时需要把防火墙关掉进行测试,因为如果你只开了nfs端口,可能其他相关端口没开(具体什么端口我没有调研),导致showmount阻塞不显示;)
Export list for 10.66.65.15:
/home/yaowen/NFS 10.66.8.0/24,10.66.0.0/16
这里有两个网段,是配置文件里我重复进行了配置,具体的显示的内容,会根据你的配置显示。
8. 挂载
创建挂在点,进行挂载
sudo mount -t nfs 10.66.65.15:/home/yaowen/NFS /home/xuyaowen/nfs
9. 检测
通过创建文件,在客户机上检查文件系统,是否能正常运行。
➜ nfs df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 57M 3.7G 2% /dev/shm
tmpfs 3.8G 2.0M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/fedora-root 49G 8.5G 38G 19% /
tmpfs 3.8G 124K 3.8G 1% /tmp
/dev/sda3 976M 186M 723M 21% /boot
/dev/mapper/fedora-home 30G 1.4G 27G 5% /home
tmpfs 769M 16K 769M 1% /run/user/42
tmpfs 769M 56K 769M 1% /run/user/1000
10.66.65.15:/home/yaowen/NFS 404G 284M 383G 1% /home/xuyaowen/nfs
可见,最后一行,就是我所挂载的文件系统。
10. 卸载
使用 umount 命令
11. 防火墙配置
我们可以根据nfs 配置文件,固定 nfs 使用的端口。这样我们就能根据使用的端口,来进行配置 防火墙的使用策略。
这里,因为暂时不需要,也就不去研究了。我想,配置起来也很简单。自己稍微查查资料就可以的。
现在,你就有一个可以用的 nfs 文件系统了。
如何在 windows 上挂载 nfs 请参考如下链接:
https://www.cnblogs.com/xuyaowen/p/windows_server_mount_nfs.html
保持更新,转载请注明出处。 2018.5.21 in Beijing.
# 补充 在ubuntu 1806 上安装nfs服务器:2019年12月2日23:17:53
- sudo apt-get install nfs-kernel-server
- 之后编辑 /etc/exports : /tmp/nfs 192.168.0.0/16(rw,no_subtree_check,no_root_squash,no_all_squash,sync) (注意:修改exports 后,记得要重启nfs和rpcbind服务器)
- exportfs -r
- showmount -e 查看当前导出网络文件系统;
- 启动 nfs 服务:systemctl restart nfs-kernel-server.service ; systemctl restart rpcbind.service;(ubuntu 1806)
- 开放防火墙端口 ufw allow nfs;
- 在另外一个机器上挂载nfs: mount -t nfs -o fsc,sync,proto=tcp 192.168.5.3:/tmp/nfs /mnt/nfs (表示当前nfs挂载成功)
- 另外一个挂载命令:mount.nfs -o fsc,sync,proto=tcp 192.168.5.223:/tmp/nfs /mnt/nfs
- 之后可以进行测试;(注意此处fsc 表示使用 fs-cache作为nfs的缓存,具体详情请见:https://www.cnblogs.com/xuyaowen/p/fs-cache.html)
参考文献:
https://cloud.tencent.com/developer/article/1171888 在Ubuntu上配置NFS
https://cloud.tencent.com/developer/article/1168897?from=10680 SSHFS远程挂载文件夹
保持更新,转载请注明出处;更多内容请关注 cnblogs.com/xuyaowen; 2019年12月2日23:26:18 in beijing;
NFS 系统的搭建的更多相关文章
- ubuntu 16.04 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单. 1.安装nfs服务 s ...
- Red Hat 6.5 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在红帽6.5系统中搭建nfs服务. 1.关闭selinux服务 如果已经关闭该服务的可以直接跳过该步骤. ...
- 自学linux——21. NFS服务器的搭建
NFS服务器的搭建 1.NFS的认识 NFS(Network File System即网络文件系统)服务最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享文件,可以将远程 Linu ...
- 4、nfs服务器的搭建
4.1.nfs服务介绍: samba服务器一般互联网企业不会使用 nfs服务的端口是不固定的,需要先启动rpc服务对nfs服务端口进行注册 4.2.安装nfs: rpm -qa nfs-utils r ...
- Linux下NFS服务器的搭建与配置
一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...
- LINUX下NFS系统的安装配置
准备:NFS系统服务器IP 192.168.135.1 ,NFS共享目录/mnt/NFS 一.安装NFS 查看nfs是否安装 #rpm -qa | grep nfs 若没有则安装nfs包 #yum i ...
- 在Win7系统中搭建Web服务器
局 域网Web服务器的主要功能是实现资源共享,同时借助于局域网服务器访问页面可有效的实现信息的同步.利用Web服务器,我们随时随地都可以将自己的信息 上传到服务器端,让其它关注你的用户能在第一时间内了 ...
- 开源入侵检测系统OSSEC搭建之二:客户端安装
上一篇文章中已经将OSSEC服务端的安装以及客户端的Key导出操作做了解说,接下来在另一台虚拟机中安装客户端,与安装服务端类似同样需要安装ossec,步骤如下. 一.下载ossec-hids-2.8. ...
- 开源入侵检测系统OSSEC搭建之一:服务端安装
OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中.主要功能有日志分析.完整性检查.rootkit检测 ...
随机推荐
- java web 手动部署项目步骤
java Web 手动部署项目步骤 1 在tomcat下面的webapps下面建立需要部署的文件夹(eg:demo);2 在demo下建立 WEB-INF WETA-INF src 文件夹;3 在sr ...
- confluence输入数学公式之mathjax
1.概述 公司大数据业务需求,需要一些计算公式写入到confluence里面,并且可能会不断修改,如果上传图片的话修改起来不是很方便.于是google了一把,发现收费的有Latex Math下载量还是 ...
- POJ 2607 Fire Station(Floyd打表+枚举更新最优)
题目链接: http://poj.org/problem?id=2607 Description A city is served by a number of fire stations. Some ...
- SQLServer 里面的 DDL,DML,DCL,TCL
1.DDL (Data Definition Language )数据库定义语言 statements are used to define the database structure or sch ...
- JavaScriptDay2-简单网页表单验证
Html部分 <!-- 注册表单 1-用户名 text 2-密码 password 3-确认密码 password 4-性别 radio 5-爱好 hobby 6-籍贯 select-optio ...
- 前端SEO
一.搜索引擎工作原理 当我们在输入框中输入关键词,点击搜索或查询时,然后得到结果.深究其背后的故事,搜索引擎做了很多事情. 在搜索引擎网站,比如百度,在其后台有一个非常庞大的数据库,里面存储了海量的关 ...
- ubuntu16.04安装ssh服务,并实现远程访问
一.查看是否安装了ssh服务 apt-cache policy openssh-client openssh-server ubuntu默认安装了openssh-client,openssh-serv ...
- HDU1083(KB10-C 二分图最大匹配)
Courses Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- python乐观锁、悲观锁
二.乐观锁总是认为不会产生并发问题,每次去取数据的时候总认为不会有其他线程对数据进行修改,因此不会上锁,但是在更新时会判断其他线程在这之前有没有对数据进行修改 三.悲观锁总是假设最坏的情况,每次取数据 ...
- avalonjs 中的if else实现的几种方法
在学习avalonjs的过程中,发现模板中并没有if else这样的写法,不像tempalte ejs这些,所以总结了三种方法来实现,仅供在使用avalonjs的同学参考,主要是通过ms-if 表达式 ...