NFS服务器
NFS(Network File System)网络文件系统,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件。
当NFS服务启动时会随机取用数个端口,并主动向RPC服务注册取用的相关端口信息,RPC服务就可以知道每个端口所对应的NFS功能了,然后RPC服务使用固定的端口号111来监听NFS客户端提交的请求,并将正确的NFS端口答应给NFS客户端,这样一来,就可以让NFS客户端与服务端进行数据传输
NFS安装
NFS服务端:
sudo apt install nfs-kernel-server
NFS客户端:
sudo apt install nfs-common
NFS配置文件路径
/etc/exports
更新NFS配置文件
sudo exportfs -arv
NFS配置格式
文件系统 客户端1(导出属性)客户端2(导出属性)...
文件系统:共享文件夹的绝对路径
客户端:
IP 或者 Hostname 或者 IP networks 或者 *(表示全网段的主机都能访问)
例:
IP -> 192.168.1.2
Hostname -> *.test.com
IP networks -> 192.168.1.2/24
导出属性:
rw 读写
ro 只读
async sync 则代表数据会先暂存于内存当中,而非直接写入硬盘!
sync sync表示同步更新到磁盘,同步将内存内的文件写入到磁盘空间,保证数据不丢失,但会影响性能
root_squash 压缩root用户,基于imapd,将root通过网络访问时转换为nfsnobody用户
no_root_squash 不压缩用户
all_squash 压缩所有用户,身份都会被压缩成为匿名用户
anonuid,anongid 指定匿名用户的用户ID和组ID,必须存在于/etc/passwd中。结合all_squash使用