今天闲来无事,在两台虚拟机上实现挂载操作。其中一台192.168.242.21作为服务端,另一台192.168.242.22作为客户端。
注意
1、检查系统是否开启nfs服务:service nfs status 结果显示nfs: unrecognizedservice,说明系统没有安装nfs服务,so 安装之;
注意,yum install nfs是无法安装的,应该用yum install nfs-utils.
2、开启portmap服务,还是unrecognized service ,安装之,yum install portmap未果,百度+google之,发现centos 6.4中portmap已经被rpcbind取代,于是乎继续安装之,未果,检查下是不是已经在安装nfs-utils包的时候安装了,service rpcbind status ,果然已经一块安装了。
以上为整个安装过程,总结下就是centos 6.x之后的系统一个命令yum install nfs-utils全部搞定,貌似5.x版本的也可以用这个命令搞定,搞不定的话可以单独装portmap;主要6.x版本用的事rpcbind,5.x版本用的是portmap。
服务端
1、首先需要在主机上设置允许挂载的目录
(1)修改 /etc/exports,增加共享目录
这里主机是指服务端(要共享的目录)
/srv/www/app/wtcms/webroot/upload 192.168.242.*(ro,sync,no_root_squash)
/srv/www/app/wtcms/webroot/main 192.168.242.*(ro,sync,no_root_squash)
其中
/srv/www/app/wtcms/webroot/upload
/srv/www/app/wtcms/webroot/main
是指服务端要共享的两个目录 192.168.242.* 客户端的ip(允许访问的ip)
2、关闭服务端的防火墙
3、启动服务:执行
service nfs restart
service portmap restart
showmount -e 192.168.242.21 输出以下结果:
/srv/www/app/wtcms/webroot/upload 192.168.242.*(ro,sync,no_root_squash)
/srv/www/app/wtcms/webroot/main 192.168.242.*(ro,sync,no_root_squash)
客户端
1、启动服务:
service nfs restart
service rpcbind start
2、mount -t nfs 192.168.242.21:/srv/www/app/wtcms/webroot/main /root/testnfs
其中192.168.242.21是服务端的ip
/srv/www/app/wtcms/webroot/main 服务端共享的目录
/root/testnfs 客户端目录(一定要有此目录)
使用df -h 命令进行磁盘查询结果如下所示,显示出挂载的目录
[root@node003 testnfs]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 77G 797M 72G 2% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 194M 28M 157M 15% /boot
192.168.242.21:/srv/www/app/wtcms/webroot/main 77G 1.8G 71G 3% /root/testnfs
取消挂载
umount /srv/www/app/wtweb/webroot/main 客户端目录(一定要有此目录)
强调
客户端重启后需要重新进行挂载,只需执行下
mount -t nfs 192.168.242.21:/srv/www/app/wtcms/webroot/main /root/testnfs
命令即可
自动挂载
也可以设置成自动挂载
在/etc/rc.local文件中加入命令即可
mount -t nfs 192.168.242.21:/srv/www/app/wtcms/webroot/main /root/testnfs
rc.local是Linux启动程序在login程序前执行的最后一个脚本
客户端非root用户可做如下操作
chgrp -R weblogic /root/testnfs 更改目录所属群组
chown -R flexcc /root/testnfs 更改目录所属拥有者
/etc
下
rc.local
加
sleep 3
mount -t nfs 192.168.242.21:/srv/www/app/wtcms/webroot/main /root/testnfs
chown flexcc:weblogic /root/testnfs