NFS服务器设置
NFS服务器安装
使用apt
命令安装nfs-kernel-server
包:
# apt-get install nfs-kernel-server
确认NFS服务器已启动并运行:
# systemctl status nfs-kernel-server ● nfs-server.service - NFS server and services Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled) Active: active (exited) since Mon 2015-06-05 14:20:17 AEST; 1min 8s ago Main PID: 1752 (code=exited, status=0/SUCCESS) onitroad systemd[1]: Starting NFS server and services... onitroad systemd[1]: Started NFS server and services.
导出NFS目录
接下来,我们需要导出NFS目录。
此目录将可以远程挂载,因此可通过NFS客户端主机访问。
这里,我们创建和导出名为/var/nfs-export
的目录。
# mkdir /var/nfs-export
为了测试,再创建一些文件
# cd /var/nfs-export/ # echo onitroad.com > file.txt # cat file.txt onitroad.com
在配置文件/etc/exports中,创建新的NFS导出条目:
/var/nfs-export *(rw,sync,no_subtree_check,no_root_squash)
注意,这是一个不太安全的设置,因为所有的IP地址都可以读写/var/nfs-export
目录。
重新加载所有NFS导出:
# exportfs -a
如果我们希望在重新启动后启动NFS服务器,则需要使用“systemctl systemd命令”启用它:
# systemctl enable nfs-kernel-server Synchronizing state of nfs-kernel-server.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable nfs-kernel-server
NFS客户端
服务端NFS导出目录已经可用于远程挂载。
现在在客户端系统上安装NFS客户端:
# apt-get install nfs-common
创建一个新目录,该目录将用作NFS挂载点,以远程安装在服务器端导出的/var/nfs-exports
目录:
# mkdir /mnt/nfs
挂载远程NFS导出目录:
# mount -t nfs YOUR-NFS-SERVER-IP:/var/nfs-export /mnt/nfs/
查看NFS导出目录的内容。
并创建一个文件来测试写入权限:
# cat /mnt/nfs/file.txt onitroad.com # touch /mnt/nfs/test # ls /mnt/nfs/ file.txt test
要在NFS客户端永久挂载的NFS导出目录,将以下行添加到/etc/fstab
配置文件中:
YOUR-NFS-SERVER-IP:/var/nfs-export /mnt/nfs/ nfs
目前常规用户没有对/mnt/nfs/
的写访问权限。
尝试对该目录进行写操作,将会被拒绝:
$touch /mnt/nfs/file touch: cannot touch 'file': Permission denied
这个问题有很多解决方案,最简单快速的是,授予需要访问/mnt/nfs/的用户写入权限。
例子:
# chmod o+w /mnt/nfs/
日期:2020-07-07 20:56:12 来源:oir作者:oir