Network File System (NFS) 是非常成熟的Uninx环境远程访问文件系统协议,允许一个客户端通过网络访问服务器共享的文件系统目录。Linx对NFS支持相对完善,性能也较好,通过合适的部署,可以接近商业NAS系统的性能和可靠性。

本文是在Seagate GoFlex Home网络存储安装Arch Linux ARM初步搭建NFS输出,提供客户端备份和访问文件。

安装

Arch Linux的客户端和服务器都只需要安装 nfs-utils 软件包

pacman -S nfs-utils

配置

服务端

  • ID mapping

编辑 /etc/idmapd.conf 并设置 Domain

[General]

Verbosity = 1
Pipefs-Directory = /var/lib/nfs/rpc_pipefs
Domain = huatai.me

[Mapping]

Nobody-User = nobody
Nobody-Group = nobody
  • 静态端口

默认时,NFSv3的rpc.statdlockd使用随机分配端口,为了能够使得NFSv3操作能够通过防火墙预先定义的端口,需要编辑 /etc/conf.d/nfs-common.conf 来设置 STATD_OPTS

STATD_OPTS="-p 32765 -o 32766 -T 32803"

rpc.mountd会参考/etc/services并绑定静态端口2048,然而如果需要还是可以在 /etc/conf.d/nfs-server.conf配置中设置MOUNTD_OPTS

MOUNTD_OPTS="-p 20048"

以上配置完成后,重启动服务

systemctl restart nfs-config
systemctl restart rpc-statd
systemctl restart nfs-server

创建目录输出

编辑 /etc/exports

/data 192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check)

输出生效

exportfs -a

参考