服务器上安装软件:sudo apt-get install nfs-kernel-server
nfs配置文件/etc/exports内容(来源于外站):
路径 用户名 (权限)
路径可为*。后面还可以再跟空格、用户名和权限部分
权限部分用逗号分隔以下内容:
- ro 该主机对该共享目录有只读权限
- rw 该主机对该共享目录有读写权限
- root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户
- no_root_squash 客户机用root访问该共享文件夹时,不映射root用户
- all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户
- anonuid 将客户机上的用户映射成指定的本地用户ID的用户
- anongid 将客户机上的用户映射成属于指定的本地用户组IDsync 资料同步写入到内存与硬盘中
- async 资料会先暂存于内存中,而非直接写入硬盘
- insecure 允许从这台机器过来的非授权访问
启动nfs后又修改了/etc/exports,不用重启该服务,使用exports命令即可 /usr/sbin/exportfs –rv(v不是必须)。然后showmount -e能看见是否生效。
不通过ssh的话,则直接mount -t nfs IP地址:服务器路径 本地路径
通过ssh,则如下文。
sudo apt-get install sshfs
sshfs 用户名@地址:/路径 挂载点 -p 端口
解挂用 fusermount -u 挂载点
如果网络故障,解挂时提示设备忙,可以强制解挂,用umount -f 挂载点
据说可以放到/etc/fstab中,但是我通过证书进行鉴权,以免输入密码,所以把挂载命名放到用户的.profile中。