目录
理论
概念:
NFS是Network File System(网络文件系统),是能使用户访问服务器的文件系统。主要功能是通过网络让不同的服务器之间可以共享文件或者目录。
NFS是一种可以将远程的磁盘挂载到本地,当作本地磁盘使用的技术。通过NFS,用户和程序可以像访问本地文件一样访问远程系统上的文件。
NFS采用C/S架构,服务端开启TCP2049端口等待客户端连接。
rpc :
远程过程调用
管理nfs端口
111端口
应用场景:
用于集群架构中的数据存储
网站的静态文件(图片,文本、视频、音频)
用于局域网
NFS网络文件系统主要功能是通过网络使不同的主机系统间可以共享文件或目录。客户端可以将NFS服务器端共享的数据目录挂载到客户端本地系统中。从客户端本地看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或目录一样,而实际上却是远端的NFS服务器的目录。
安装:
需要安装的两个软件 :yum -y install rpcbind
yum -y install nfs-utils
结构:/etc/nfs.conf nfs的主配置文件
/etc/exports 存储配置文件 :语法 :dirPath IP/prefix(argument1,argument2...)
参数:rw:指定共享目录具备可读写权限
ro:指定只读
sync:立即同步
async:异步同步 数据存储信息-->内存中-->写入磁盘,容易造成数据丢失
all_squash: 将所有用户的操作文件全部映射为指定的用户nobody
no_all_squash: 所有用户操作文件是什么用户就保留什么用户权限,不转换用户身份
root_squash: 指定root用户需要转换身份
no_root_squash: root不用不需要转换身份
anonuid:用于指定用户身份映射到的用户的uid
anongid:用于指定用户组身份映射到的用户组的gid
命令解析:
exportfs:共享存储管理命令
showmount :-e:显示nfs共享目录
配置:
vim /etc/exports 配置文件
/share 192.168.115.0/24(rw,no_root_squash) :配置内容
客户端访问
查看nfs服务器的共享目录:
命令:showmount -e 192.168.115.128(nfs服务器IP)
挂载
手动挂载:
命令:mount 192.168.115.128:/share /mnt
自动挂载:
vim /etc/fstab :自动挂载配置文件
192.168.115.128:/share /mnt nfs4 defaults 0 0 :在配置文件写入
mount -a :刷新配置文件
实操
下面利用两台linux虚拟机去实现NFS储存服务
首先用服务器安装:yum -y install rpcbind
yum -y install nfs-utils
这两个软件
然后用vim打开/etc/exports 存储配置文件
进入之后在第一行写入语法:前面要加上注释“#” dirPath IP/Prefix(argument1,argument2...)
(语法也可不用写)
随后在第二行写入配置:/share 192.168.50.0/24(rw,no_root_squash)
/share:(挂载文件目录)可以自己去起名
192.168.50.0/24 :(表示50这个网段都可以连接)
(rw,no_root_squash) :表示需要写的参数 参数之间要用“,”逗号隔开
填写完之后保存退出
创建写入的挂载文件目录 /cjf
命令:mkdir /cjf
随后再在/cjf目录下创建测试文件 :用于最后客户端能不能共享到
命令: touch /cjf/1.txt
然后重启系统并启动NFS服务
重启系统命令:systemctl restart rpcbind
启动系统命令:systemctl start nfs
做完以上两步之后输入命令:showmount -e 查看是否显示nfs共享目录
做完以上步骤我们切换到客户机 先确保客户机是和服务器在同一网段
首先创建共享文件用的挂载目录
命令:mkdir /abc (目录名字可以自己起)
创建完目录之后下一步将服务器的共享文件挂载到本地/abc下
命令:mount 192.168.50.50:/cjf /abc
随后查看挂载是否成功 是否显示内容
命令:LL /abc
当前挂载方式属于临时配置因为是在命令行直接输入 重启之后就会消失 下一次还需要手动进行挂载
实现开机自动挂载
命令:vim /tec/fstab 打开自动挂载配置进入
在下方写入 :192.168.50.50:/cjf /abc nfs4 defaults 0 0
192.168.50.50 :服务器IP
/cjf : 服务器 挂载文件目录
/abc : 共享文件用的挂载目录
后面的跟着写上就行 随后保存退出 mount -a 刷新
df -hT查看文件系统
可以查看是否挂载成功