Linux实现NFS

本文涉及的产品
云防火墙,500元 1000GB
简介: 操作系统是CentOS6.51.首先需要两个虚拟机,一个作为服务端,一个作为客户端,分别使用下列命令检查客户端和服务端是否安装了nfs和rpc相关的包92C4C101-23A2-44EF-93B6-5D779EE410CD.

操作系统是CentOS6.5

1.首先需要两个虚拟机,一个作为服务端,一个作为客户端,分别使用下列命令检查客户端和服务端是否安装了nfs和rpc相关的包
img_bdf0217e0f7639e929bbbf5271049fbd.jpe
92C4C101-23A2-44EF-93B6-5D779EE410CD.png

如果没有安装,请执行下列命令安装

img_943ad3bdd19d9baef7e1a5d227a91158.jpe
89D270DF-1A91-4D64-A954-82933088CAFA.png

使用下列命令可以查看是否安装成功,安装成功了会像下面这样显示

img_6eb3258247675405a38a4fd798252234.png
image.png
2.在服务端配置nfs的固定端口,方便于之后配置防火墙规则,当然你也可以跳过这一步,选择关闭防火墙,但是这样安全性不高

使用vim打开/etc/sysconfig/nfs 文件,在底部添加如下配置

img_97e502ae8b8a4fc3a3d4db21ab220cbd.png
image.png

然后保存退出

3.配置服务端需要挂着的目录,使用vim打开/etc/exports文件,按照如下规则配置
img_4b17b57c7978929259397d799b6356ba.png
image.png

/mnt是我要挂着到客户端的目录
192.168.1.107是我客户端的ip地址,你也可以写成一个网络地址如192.168.1.0/24,这样在这个网络下的主机都能挂载,如果写的是*,那么所有主机都可以远程挂着这个目录
括号里的参数有很多
rw:具有读写权限
sync:资料同步写入磁盘和内存
o:只读权限
no_root_squash:登入nfs主机时,拥有共享目录所有者权限
root_squash:登入nfs主机时,拥有共享目录所有者权限,但如果共享目录的拥有者时root用户,那么登入者权限为nobody权限
all_squash:登入nfs主机时,拥有nobody用户权限
anonuid:指定用户id
anongid:指定群id
async:资料先存内存,再存硬盘
no_subtree_check:不检查父文件夹权限
subtree:检查父文件权限
secure:限制client port(<1024)

4.启动服务器端服务

首先启动rpcbind

img_ea36922af741a812171e12fab368e53a.png
image.png

启动nfs

img_6e4f64bd1423baea213bbd0b8063157a.png
image.png
5.接下来在服务端添加防火墙规则,这里是我的采坑经历,首先使用命令

rpcinfo -p查看需要配置防火墙规则的端口

img_8f64227af84e53835bfeb9bf8cf85334.png
image.png

使用vim打开/etc/sysconfig/iptables进行配置,如下图

img_ddb81f0424872ad3aa0d152c90b83109.png
image.png

这里我的理解是千万要按顺序进行添加,意思就是每一行后面是ACCEPT的要接连在一起,千万不要被REJECT、FORWARD这样的行隔开,不然配置是无效的,具体原因我还不清楚,等我去找资料再来说清楚。

6.重启防火墙配置

service iptables restart

img_7f1dc9b46f03a0b55d6f5960a6ec437b.png
image.png
7.服务器端事情做完了,接下来客户端挂载就行,输入下列命令实现挂载
img_a2a9fcbd5a1778d9c16c5a83941d1973.png
image.png

这样我们已经成功挂载了,能看到服务器端的文件了

挂载参数的含义如下:

(1)-a:把/etc/fstab中列出的路径全部挂载。
(2)-t:需要mount的类型,如nfs等。
(3)-r:将mount的路径定为read only。
(4)-v mount:过程的每一个操作都有message传回到屏幕上。
(5)rsize=n:在NFS服务器读取文件时NFS使用的字节数,默认值是4096个字节。
(6)wsize=n:向NFS服务器写文件时NFS使用的字节数,默认值是4096个字节。
(7)timeo=n:从超时后到第1次重新传送占用的1/7秒的数目,默认值是7/7秒。
(8)retry=n:在放弃后台mount操作之前可以尝试的次数,默认值是7 000次。
(9)soft:使用软挂载的方式挂载系统,若Client的请求得不到回应,则重新请求并传回错误信息。
(10)hard:使用硬挂载的方式挂载系统,该值是默认值,重复请求直到NFS服务器回应。
(11)intr:允许NFS中断文件操作和向调用它的程序返回值,默认不允许文件操作被中断。
(12)fg:一直在提示符下执行重复挂载。
(13)bg:如果第1次挂载文件系统失败,继续在后台尝试执行挂载,默认值是失败后不在后台处理。
(14)tcp:对文件系统的挂载使用TCP,而不是默认的UDP。

目录
相关文章
|
6月前
|
Linux
Linux安装NFS挂载NFS卸载客户端服务端都有
Linux安装NFS挂载NFS卸载客户端服务端都有
153 0
|
6月前
|
Ubuntu 网络协议 Unix
【Linux】新唐NUC977挂载NFS实现网络文件传输
【Linux】新唐NUC977挂载NFS实现网络文件传输
|
6月前
|
Linux Shell Windows
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
420 0
|
3月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
189 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
|
3月前
|
运维 Ubuntu 安全
在Linux中,如何配置NFS共享?
在Linux中,如何配置NFS共享?
|
3月前
|
网络协议 Ubuntu Linux
在Linux中,如何使用NFS和Samba共享文件和目录?
在Linux中,如何使用NFS和Samba共享文件和目录?
|
3月前
|
网络协议 Unix Linux
Linux 多种方式实现文件共享(三)NFS 6
【8月更文挑战第6天】NFS 即网络文件系统,是一种使用于分布式文件系统的协议,NFS 功能是通过网络让不同的机器,不同的操作系统能够彼此分享各自的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据
81 13
|
3月前
|
存储 Linux 网络安全
[linux]搭建nfs
[linux]搭建nfs
|
3月前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
|
3月前
|
Ubuntu Linux 网络安全
在Linux中,如何配置Samba或NFS文件共享?
在Linux中,如何配置Samba或NFS文件共享?