1.安装软件
服务端:yum install -y nfs-utils rpcbind
记住要先启动rpcbind systemctl start rpcbind 在启动nfs-utils systemctl start nfs-utils
客户端:安装一般只需要安装rpcbind服务就可以,但是为了后面用到的showmount命令查看挂在情况最好也安装一下nfs-utils
2.配置
此时可以用rpcinfo -p localhost 查看到注册的端口信息
创建挂在目录 /data 修改属主和属组为指定用户
打开server端的配置文件 vim /etc/exports
/data 192.168.108.0/24 (rw,sync,all_squash,anongid=nfsnobody.anonuid=nfsnobody)
含义:就是客户端要挂载过来就会被转换为nfsnobody的指定uid和gid来并且拥有读写的权限。sync表示I/O方式为同步处理,即把数据同步写入磁盘。
客户端进行挂载
mount -t nfs 192.168.108.31:/data /mnt -t 挂在文件系统为nfs
可以用showmount -e 192.168.108.31 可以查看nfs-server的输出目录
实现开机挂在的两种方式
1.将挂在命令写入 /etc/rc.local 实现开机自动挂在
2.在 /etc/fstab 里面 写入 172.16.1.31:/data /mnt nfs defaults 0 0 defaults是指定 -o 后面的参数 默认即可 第一个0是dump备份设置当其设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作 第二个0表示fsck磁盘检查设置当其为0时,永远不检查;而/根目录分区永远都为1,其他分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。
注:利用 /etc/fatab实现开机自动挂载需要设置remote-fs.target 服务开机自启。
要实现多个客户端挂在一台服务端时,应该将他们需要挂载的目录属主修改为server端相同的属主。
mount -o常用参数
挂载的性能优化参数
mount -o noatime,nodiratime 折两个参数是所在读写磁盘的时候不更新文件和目录是的时间戳,即不更新文件系统中对应的inode信息,这样可以提升读取和写入磁盘的效率。
mount -o wsize=131072,rsize=131072 设定了sever和client之间往来的数据块的大小 ,wsize和rsize的大小最好是1024的倍数 通过提升这两个参数的值可以提升访问挂载文件的性能和效率
安全挂载参数
mount -o noexec 在挂载文件系统中不允许直接执行任何二进制的程序
mount -0 nosuid 不允许 set-user-identifier or set-group-identifier 为生效
设置了这两个参数后无法执行程序,只可以作为数据的存取只用,大大加强了客户端的安全性。例如:很多木马篡改站点文件都是由上传入口上传的程序到存储目录,然后执行。
最后别忘了rpc的原理面试可能会问到:NFS本身并没有提供数据传递的协议,但是NFS却能让我们访问提供文件,这其中的原因就是NFS使用了到了一些其他的传输协议,而这传输协议就是rpc功能,在进行远程联机时服务的端口需要管理与之对应,rpc功能通转发NFS的端口信息到客户端实现数据的传递。
浙公网安备 33010602011771号