首页 > 代码库 > Linux之nfs 部署和优化

Linux之nfs 部署和优化

NFS = network file system   网络 文件 系统

作用:允许一个系统和他人共享目录和文件。

实验室需要台虚拟机

安装 NFS


[root@OBird# yum install -y nfs-utils rpcbind

rpcbind 是用来进行通信的。

[root@OBird ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/sda3        18G  3.7G   14G  22% /

tmpfs           495M     0  495M   0% /dev/shm

/dev/sda1       194M   29M  155M  16% /boot

/dev/sdb5       2.0G   68M  1.9G   4% /mnt

/dev/sdb1       2.0G   74M  1.9G   4% /home/linux/123


启动服务端的服务

技术分享


以下操作都是在客户端上进行的。


此处以mnt 目录来做实例展示(在另一台机上,楼主的两台机重名了,都是bird)

 [root@bird ~]# showmount -e 技术分享192.168.31.170
-bash: showmount: command not found

出现这个报错是因为没有安装 NFS 客户端

 [root@bird ~]# yum install -y nfs-utils  #安装NFS 客户端



再次使用 showmount 命令查看

 [root@Bird ~]# showmount -e 技术分享10.72.4.37
Export list for 技术分享10.72.4.37:
/mnt 技术分享10.72.4.40 

技术分享


在客户端上进行挂载操作

 [root@Bird ~]# mount -t nfs 技术分享10.72.4.37:mnt /opt  #-t 指定类型


技术分享


以下操作是服务端上进行的。

查看服务端/mnt 的权限

[root@OBird ~]# ls -ld /mnt

drwxr-xr-x 3 root root 4096 Sep  7 21:28 /mnt


[root@OBird mnt]# chmod 777 .  #将权限改为 777,任何用户都可以写

[root@OBird mnt]# ls -ld .

drwxrwxrwx 3 root root 4096 Sep  7 21:28 .


在客户端操作

创建一个1.txt ,属主 和属组 是nfsnobody,这个是黙认的。

技术分享

------------------------------------------------------

在实际的应用的中是其他的户,是可以通过手工来指定的。

以下test1 为例

 [root@Bird opt]# cat /etc/passwd
test1:x:500:500::/home/test1:/bin/bash 


[root@OBird mnt]# vim /etc/exports

/mnt 10.72.4.40(rw,sync,all_squash,anonuid=500,anongid=500)


[root@OBird mnt]# exportfs -arv  #重启nfs 服务

exporting 10.72.4.40:/mnt


在客户端上进行操作,touch 2.txt ,并没有实现我们要的实验效果,2.txt 的属主和属组是nobody

技术分享


在客户端上卸载掉 mount ,再重新挂载  nfsvers=3 指定nfs的版本号,黙认是 4.

 [root@Bird ~]# umount -l /opt/

 [root@Bird opt]# mount -t nfs -onolock,nfsvers=3 技术分享10.72.4.37:/mnt/ /opt/ 

技术分享

测试,实现实验效果

技术分享


 [root@Bird opt]#mount -t nfs4 10.72.4.37:/mnt/ /opt/

#nfs4 版本会把 所有的用户黙认用户指到 nfsnobody 上。

[root@OBird mnt]# vim  /etc/exports  #这样的配置限了root 用户

/mnt 10.72.4.40(rw,sync,all_squash,anonuid=500,anongid=500)


改成以为就可不限制 root

/mnt 10.72.4.40(rw,sync,no_root_squash)


[root@OBird mnt]# exportfs -avr  #重启服务端服务

exporting 10.72.4.40:/mnt


在客户端进行测试,重新创建的 test 属主&属组都变回了 root

技术分享



本文出自 “CBO#Boy_Linux之路” 博客,请务必保留此出处http://20151213start.blog.51cto.com/9472657/1879943

Linux之nfs 部署和优化