nfs

nfs作业

1.手动搭建一个nfs服务器

开放/nfs/shared目录,供所有用户查阅资料
开放/nfs/upload目录为172.16.12.0/24网段的数据上传目录,并将所有用户及所属的用户组都映射为nfs-upload,其UID与GID均为300
2.写博客,要求将其应用场景、nfs的好处以及配置方式均写入博客,且要看到最终效果
3.可选作业(通过脚本搭建nfs并在客户端上挂载)

  • 准备工作
[root@node2 ~]# systemctl stop firewalld.service 
[root@node2 ~]# setenforce 0
[root@node2 ~]# yum -y  install nfs-utils
[root@node0 ~]# yum -y  install nfs-utils
  • shared目录创建
//创建目录,配置nfs共享设置为只读,非root用户访问为匿名
[root@node2 ~]# mkdir  -p /nfs/shared
[root@node2 ~]# cat /etc/exports
/nfs/shared 192.168.94.0/24(ro,all_squash)
//启动rpc nfs服务,查看导出
[root@node2 ~]# systemctl start rpcbind.service  nfs-server.service
[root@node2 ~]# showmount -e 192.168.94.143
Export list for 192.168.94.143:
/nfs/shared 192.168.94.0/24
//在共享目录写入文本测试
[root@node2 shared]# echo 'test'> read.txt

//同属于192.168.94网段客户机挂载该目录
[root@node0 ~]# mount -t nfs 192.168.94.143:/nfs/shared /opt
[root@node0 ~]# df -h|grep nfs
192.168.94.143:/nfs/shared   17G  1.7G   16G  10% /opt

//测试可读,创建文件失败,报错“只读文件系统”
[root@node0 ~]# cd /opt/
[root@node0 opt]# cat read.txt 
test
[root@node0 opt]# touch a
touch: cannot touch 'a': Read-only file system

  • upload目录创建
//创建nfs-upload组和用户指定uid,gid300
[root@node2 shared]# groupadd  -g 300 nfs-upload
[root@node2 shared]# useradd -u 300 -g 300 nfs-upload
[root@node2 shared]# id nfs-upload 
uid=300(nfs-upload) gid=300(nfs-upload) groups=300(nfs-upload)

//创建upload目录,更贵属组主为nfs-upload
[root@node2 ~]# mkdir /nfs/upload
[root@node2 ~]# chown -R 'nfs-upload'.'nfs-upload' /nfs/upload/
[root@node2 ~]# chmod g+s upload/

//指定所有用户访问都为匿名用户且uid,gid均为300,exportfs重新加载exports文件
[root@node2 nfs]# vim /etc/exports
/nfs/shared 192.168.94.0/24(ro,all_squash)
/nfs/upload 192.168.94.0/24(rw,all_squash,root_squash,anonuid=300,anongid=300)
[root@node2 nfs]# exportfs -r


//客户端创建upload目录,查看导入
[root@node0 ~]# mkdir /upload
[root@node0 ~]# showmount -e 192.168.94.143
Export list for node2:
/nfs/upload 192.168.94.0/24
/nfs/shared 192.168.94.0/24
//挂载到本地upload目录,创建文件
[root@node0 ~]# mount -t nfs 192.168.94.143:/nfs/upload /upload/
[root@node0 ~]# cd /upload
[root@node0 upload]# touch a
[root@node0 upload]# ll
total 0
-rw-r--r-- 1 300 300 0 Apr  5 19:43 a

//node2端验证
[root@node2 nfs]# ll /nfs/upload/
total 0
-rw-r--r--. 1 nfs-upload nfs-upload 0 Apr  5 19:43 a


posted on 2021-04-08 09:47  fxx013  阅读(79)  评论(0编辑  收藏  举报

导航