配置文件/etc/exports内容如下:
$ cat /etc/exports
/home/share 192.168.102.0/24(rw,sync) *(ro)
配置说明: 对192.168.102.15赋予读写权限,其他机器仅有只读权限。
在客户机上查看NFS的资源共享情况
# showmount -e 192.168.102.47
Export list for 192.168.102.47:
/home/share (everyone)
使用mount命令即可挂栽共享资源 在客户机 192.168.102.15 上加载共享资源
# mount 192.168.102.47:/home/share /mnt
详细说明:
Nfs 服务器的配置,配置文件 /etc/exports :
Exports 文件中一些选项的含义
选项 说明
Ro 该主机对该共享目录有只读权限
Rw 该主机对该共享目录有读写权限
Root_squash 客户机用 root 用户访问该共享文件夹时,将 root 用户映射成匿名用户
No_root_squash 客户机用 root 访问该共享文件夹时,不映射 root 用户
All_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户
Anonuid 将客户机上的用户映射成指定的本地用户 ID 的用户
Anongid 将客户机上的用户映射成属于指定的本地用户组 ID
Sync 资料同步写入到内存与硬盘中
Async 资料会先暂存于内存中,而非直接写入硬盘
Insecure 允许从这台机器过来的非授权访问
例 / zhang (rw) wang (rw,no_root_squash) 表示共享服务器上的根目录 (/) 只有 zhang 和 wang 两台主机可以访问,且有读写权限; zhang 主机用root 用户身份访问时,将客户机的 root 用户映射成服务器上的匿名用户 (root_squash, 该参数为缺省参数 ) ,相当于在服务器使用 nobody 用户访问目录; wang 主机用 root 用户身份访问该共享目录时,不映射 root 用户 (no_root_squash), 即相当于在服务器上用 root 身份访问该目录
/root/share/ 192.168.1.20 (rw,insecure,sync,all_squash) 表示共享服务器上的 /root/share/ 目录只有 192.168.1.20 主机可以访问,且有读写权限;此主机用任何身份访问时,将客户机的用户都映射成服务器上的匿名用户 (all_squash), 相当于在服务器上用 nobody 用户访问该目录(若客户机要在该共享目录上保存文件(即写操作),则服务器上的 nobody 用户对该目录必须有写的权限)
/home/ljm/ *.gdfs.edu.cn (rw,insecure,sync,all_squash) 表示共享 /home/ljm/ 目录, *.gdfs.edu.cn 域中所有的主机都可以访问该目录,且有读写权限
/home/share/ .gdfs.edu.cn (ro,sync,all_squash,anonuid=student,anongid=math) 表示共享目录 /home/share/ , *.gdfs.edu.cn 域中的所有主机都可以访问,但只有只读的权限,所有用户都映射成服务器上的 uid 为 student 、 gid 为 math 的用户
启动 nfs 后又修改了 /etc/exports ,不用重启该服务,使用 exports 命令即可:
Exports [-aruv]
-a 全部 mount 或 umount 文件 /etc/exports 中的内容
-r 重新 mount 文件 /etc/exports 中的共享内容
-u umount 目录
-v 在 export 的时候,将详细的信息输出到屏幕上
例 [root@localhost ~]#exports –rv 全部重新 export 一次
[root@localhost ~]#exports –au 全部卸载
Nfs 客户端的配置:
若是临时使用可直接执行 mount 命令: mount servername (or IP) : 共享目录 本地挂载目录
若客户机启动就自动挂载服务器的共享目录,则需修改客户机上的 /etc/fstab 文件
/etc/fstab 格式:( 192.168.233.139:/share /mnt nfs defaults 0 2 )
Fs_spec fs_file fs_type fs_options fs_dump fs_pass
Fs_spec: 定义希望加载的文件系统所在的设备或远程文件系统,对于 nfs 则设为 IP:/ 共享目录
Fs_file: 本地挂载点
Fs_type: 挂载类型
Fs_options: 挂载参数
Fs_dump: 该选项被“ dump ”命令使用来检查一个文件系统该以多快频率进行转储,若不需转储即为 0
Fs_pass: 该字段被 fsck 命令使用来决定在启动时需要被扫描的文件系统的顺序,根文件系统“ / ”对应该字段值为 1, 其他文件系统为 2, 若该文件系统无需在启动时被扫描则为 0
安全提醒:确保网络安全,使用 nfs 时结合 tcp_wrappers 来限制使用范围(如只想 192.168.5.123 主机可挂载 nfs 服务器上的共享目录),另外还可结合 iptables 来加强安全性。
[root@localhost ~]#vi /etc/hosts.allow
Portmap:192.168.5.123:allow
[root@localhost ~]#vi /etc/hosts.deny
Portmap:ALL:deny
关机时若 nfs server 上有 client 联机时,先关掉 portmap 与 nfs 两个系统服务。若无法正确将此 2 项服务关掉,用 netstat –utlp 找出 PID ,然后用 kill 杀掉进程才关机
Nfsstat 查看 NFS 的运行状态,调整 NFS 运行大有帮助
Rpcinfo 查看 rpc 执行信息,用于检测 rpc 运行情况
挂载格式: mount –t nfs hostname(or IP):/directory /mount point
卸载: umount / 本地挂载目录(本地 client 卸载方法,但用 exports –au 为 server 卸载)
Showmount –e IP (查看 NFS 服务器上共享了那些目录)
Showmount –a IP (用于 nfs server 上,显示已经 mount 上本机 NFS 服务器的 client (客户机))