NFS
NFS(Network File System 网络文件服务),是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。
NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,通过使用 NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。(远端过程调用:自己没有这种功能,调用别人的功能) NFS 也是 NAS 存储 设备必然支持的一种协议,以完成远程到本地的映射过程。
在 CentOS 7 系统中,需要安装 nfs-utils、rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。手动加载 NFS 共享服务时,应该先启动 rpcbind,再启动 nfs。
NFS的特点:
- 采用TCP/IP传输网络文件
- 安全性低
- 简单易操作
- 适合局域网环境
FTP与NFS的区别
- FTP是普通的文件共享软件
- NFS 是文件系统,是操作系统内核来管理的
NFS原理
NFS的优点:
节省本地存储空间,将常用的数据如:/home 目录,存放在NFS服务器上且可以通过网络访问,将减少本地磁盘的使用率。
NFS软件介绍
软件包 (包括服务器端和客户端):
- nfs-utils (nfs端口号 2049/tcp)
- rpcbind (RPC端口号 111/tcp)
相关软件包(可不安装):tcp_wappers
NFS服务主要进程:
- rpc.nfsd 最主要的NFS进程,管理客户端是否可登录
- rpc.mountd 挂载和卸载NFS文件系统,包括权限管理
- rpc.lockd 非必要,管理文件锁,避免同时写出错
- rpc.statd 非必要,检查文件一致性,可修复文件
配置文件
/etc/exports
/share * 表示将/share目录共享给任何主机 ,*代表任意(注意此时未给权限)
/share 192.168.80.0/24 表示将/share目录共享给192.168.72.0网段内的任意主机
exportfs 命令可用于管理 nfs
- exportfs -v : 查看本机所有nfs共享目录,及其详细信息
- exportfs -r : 重新读取配置文件,重新加载配置
- showmount -e : 查看本机发布的NFS共享目录
- showmount -e 192.168.72.10 : 查看服务器192.168.72.10提供的共享目录
NFS共享存储服务
服务器配置
关闭防火墙,并安装nfs-utils和rpcbind软件包
创建共享目录share和共享文件xixi.txt
编辑配置文件/etc/exports
启动服务
客户端配置
客户端同样安装服务,在此之前已经关闭过防火墙
将服务端的共享目录/share,挂载到本地的/mnt目录下,并查看/mnt,发现共享了服务器中的xixi.txt
在服务器中新建一个文件haha.txt去客户端中再次测试
共享完成,NFS构建完成