http://jportal.iteye.com/blog/347544
有缺陷.比如server端重启的话,client端也要重新mount,而且速度方面不怎么样
可以做到client端无需重新mount
挂载断开的话一般和网络关系比较大
NFS (Network File System)网络文件系统,是使不同 ... 主要功能是管理NFS的文件系统。
------------- 卸载linux默认安装的服务
检查linux系统中是否安装了nfs-utils和portmap两个软件包
RHEL4系统默认已经安装了这两个软件包)
命令#rpm -q nfs-utils portmap
yum list | grep nfs
yum remove **
===============NFS 服务器 128
yum install nfs-utils nfs4-acl-tools portmap
查看NFS服务器是否启动
service nfs status
service portmap status
如果服务器没有启动,则开启服务(先启动portmap再启动nfs)
service portmap start
service nfs start
ps -ef|grep portmap
ps -ef|grep nfs
指定NFS服务器的配置文件
NFS服务器的配置文件保存“/etc/”目录中,文件名称是“exports”,该文件用于被指NFS服务器提供的目录共享
命令#vi /etc/exports
格式
/tmp 192.168.93.*(rw,sync)
####/tmp 192.168.93.*(rw,sync,no_root_squash)
添加的内容表示:允许ip 地址范围在192.168.0.*的计算机以读写的权限来访问/home/work 目录。
/home也称为服务器输出共享目录。
括号内的参数意义描述如下:
rw:读/写权限,只读权限的参数为ro;
sync:数据同步写入内存和硬盘,也可以使用async,此时数据会先暂存于内存中,而不立即写入硬盘。
no_root_squash:NFS 服务器共享目录用户的属性,如果用户是 root,那么对于这个共享目录来说就具有 root 的权限。
确认 NFSv4 服务器成功运行:
#rpcinfo -p
注意 NFS 使用 portmap,而且新版本的 portmap 使用 hosts.deny 和 hosts.allow 文件来控制访问源,修改这2个配置文件以便 NFS 客户端能正常连接到服务器:
# vim /etc/hosts.deny
portmap:ALL
# vim /etc/hosts.allow
portmap:192.168.93.*
#service portmap restart
#service nfs restart
检查 NFS 服务器是否输出我们想共享的目录 /bak:
#exportfs
/tmp 192.168.93.129
把 NFS 服务加入系统启动脚本并且手动启动 NFS 服务:
# chkconfig nfs on
# chkconfig portmap on
# /etc/init.d/portmap start
# /etc/init.d/nfs start
========================NFS 客户端 129
yum install nfs-utils nfs4-acl-tools portmap
/etc/init.d/portmap start
/etc/init.d/nfs start
把 NFS 服务加入系统启动脚本并且手动启动 NFS 服务:
# chkconfig nfs on
# chkconfig portmap on
# /etc/init.d/portmap start
# /etc/init.d/nfs start
检查 NFS 服务器端是否有目录共享
showmount -e 192.168.93.128
使用 mount 挂载服务器端的目录 /bak 到客户端某个目录下:
# mkdir /tmp/tmp
mount -t nfs 192.168.93.128:/tmp /tmp/tmp
######mount -t nfs4 192.168.93.128:/tmp /tmp/tmp
----查看已挂载设备:
#mount -l
192.168.12.201:/backup/data on /nfs/backup type nfs (rw,soft,intr,addr=192.168.12.201)
表示客户端挂载点:/nfs/backup,服务器端:/backup/data
mount -l (-l选项会多输出卷标)
或cat /proc/mounts
cat /etc/mtab (加-n选项mount的设备不显示)
===========================nfs实战(配合apache设置)
由一前HP 360DL做为前端,由三台4U盘柜做为存储连接而成的一个视频上传,点播系统的结构。
219.235.241.237
建立目录设置权限
drwxrwxrwx 2 www www 512 Jun 11 10:50 cnzmkmfiles1
drwxrwxrwx 2 www www 512 Jun 11 10:50 cnzmkmfiles2
drwxrwxrwx 2 www www 512 Jun 11 10:50 cnzmkmfiles3
修改虚拟主机配置文件
/usr/local/apache/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles1
ServerName flv1.cnzmkm.com
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv2cnzmkm_log%Y%m%d.log" combined
CBandRemoteSpeed 80Kb/s 3 10
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles2
ServerName flv2.cnzmkm.com
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv2cnzmkm_log%Y%m%d.log" combined
CBandRemoteSpeed 80Kb/s 3 10
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles3
ServerName flv3.cnzmkm.com
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv2cnzmkm_log%Y%m%d.log" combined
CBandRemoteSpeed 80Kb/s 3 10
</VirtualHost>
检查配置文件语法,重新加载配置文件,查看虚拟主机参数
flvserver2# ../../bin/apachectl -t
Syntax OK
flvserver2# ../../bin/apachectl -k graceful
flvserver2# ../../bin/apachectl -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server flv1.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:27)
port 80 namevhost flv1.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:27)
port 80 namevhost flv2.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:40)
port 80 namevhost flv3.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:53)
port 80 namevhost flv1.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:66)
port 80 namevhost flv2.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:75)
port 80 namevhost flv3.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:84)
Syntax OK
219.235.241.236
建立目录设置权限
drwxrwxrwx 2 www www 512 Jun 11 11:05 cnzmkmfiles4
drwxrwxrwx 2 www www 512 Jun 11 11:06 cnzmkmfiles5
drwxrwxrwx 2 www www 512 Jun 11 11:06 cnzmkmfiles6
修改虚拟主机配置文件
/usr/local/apache/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles4
ServerName flv4.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv3cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles5
ServerName flv5.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv3cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles6
ServerName flv6.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv3cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
检查配置文件语法,重新加载配置文件,查看虚拟主机参数
flvserver3# ../../bin/apachectl -t
Syntax OK
flvserver3# ../../bin/apachectl -k graceful
flvserver3# ../../bin/apachectl -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server flv4.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:28)
port 80 namevhost flv4.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:28)
port 80 namevhost flv5.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:40)
port 80 namevhost flv6.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:52)
port 80 namevhost flv4.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:65)
port 80 namevhost flv5.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:74)
port 80 namevhost flv6.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:83)
Syntax OK
219.235.241.235
建立目录设置权限
drwxrwxrwx 2 www www 512B Jun 11 11:09 cnzmkmfiles7
drwxrwxrwx 2 www www 512B Jun 11 11:09 cnzmkmfiles8
drwxrwxrwx 2 www www 512B Jun 11 11:09 cnzmkmfiles9
修改虚拟主机配置文件
/usr/local/apache/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles7
ServerName flv7.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv4cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles8
ServerName flv8.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv4cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@unidee.com
DocumentRoot /files/web/cnzmkmfiles9
ServerName flv9.cnzmkm.com
CBandRemoteSpeed 80Kb/s 3 10
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|/usr/local/sbin/cronolog /usr/local/logfiles/flv4cnzmkm_log%Y%m%d.log" combined
</VirtualHost>
检查配置文件语法,重新加载配置文件,查看虚拟主机参数
flvserver4# ../../bin/apachectl -t
Syntax OK
flvserver4# ../../bin/apachectl -k graceful
flvserver4# ../../bin/apachectl -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server flv7.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:21)
port 80 namevhost flv7.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:21)
port 80 namevhost flv8.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:30)
port 80 namevhost flv9.unidee.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:39)
port 80 namevhost flv7.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:49)
port 80 namevhost flv8.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:58)
port 80 namevhost flv9.cnzmkm.com (/usr/local/apache/conf/extra/httpd-vhosts.conf:67)
Syntax OK
虚拟主机域名对应目录
219.235.241.237 flv1.cnzmkm.com /files/web/cnzmkmfiles1
219.235.241.237 flv2.cnzmkm.com /files/web/cnzmkmfiles2
219.235.241.237 flv3.cnzmkm.com /files/web/cnzmkmfiles3
219.235.241.236 flv4.cnzmkm.com /files/web/cnzmkmfiles4
219.235.241.236 flv5.cnzmkm.com /files/web/cnzmkmfiles5
219.235.241.236 flv6.cnzmkm.com /files/web/cnzmkmfiles6
219.235.241.235 flv7.cnzmkm.com /files/web/cnzmkmfiles7
219.235.241.235 flv8.cnzmkm.com /files/web/cnzmkmfiles8
219.235.241.235 flv9.cnzmkm.com /files/web/cnzmkmfiles9
219.235.241.231 WEB服务器挂载NFS目录
219.235.241.237:/files/web/files1 /usr/local/www/files1
219.235.241.237:/files/web/files2 /usr/local/www/files2
219.235.241.237:/files/web/files3 /usr/local/www/files3
219.235.241.236:/files/web/files4 /usr/local/www/files4
219.235.241.236:/files/web/files5 /usr/local/www/files5
219.235.241.236:/files/web/files6 /usr/local/www/files6
219.235.241.235:/files/web/files7 /usr/local/www/files7
219.235.241.235:/files/web/files8 /usr/local/www/files8
219.235.241.235:/files/web/files9 /usr/local/www/files9
219.235.241.237:/files/web/cnzmkmfiles1 /usr/local/www/cnzmkmfiles1
219.235.241.237:/files/web/cnzmkmfiles2 /usr/local/www/cnzmkmfiles2
219.235.241.237:/files/web/cnzmkmfiles3 /usr/local/www/cnzmkmfiles3
219.235.241.236:/files/web/cnzmkmfiles4 /usr/local/www/cnzmkmfiles4
219.235.241.236:/files/web/cnzmkmfiles5 /usr/local/www/cnzmkmfiles5
219.235.241.236:/files/web/cnzmkmfiles6 /usr/local/www/cnzmkmfiles6
219.235.241.235:/files/web/cnzmkmfiles7 /usr/local/www/cnzmkmfiles7
219.235.241.235:/files/web/cnzmkmfiles8 /usr/local/www/cnzmkmfiles8
219.235.241.235:/files/web/cnzmkmfiles9 /usr/local/www/cnzmkmfiles9
UNIDEE网站加载NFS目录
mount 219.235.241.237:/files/web/files1 /usr/local/www/files1
mount 219.235.241.237:/files/web/files2 /usr/local/www/files2
mount 219.235.241.237:/files/web/files3 /usr/local/www/files3
mount 219.235.241.236:/files/web/files4 /usr/local/www/files4
mount 219.235.241.236:/files/web/files5 /usr/local/www/files5
mount 219.235.241.236:/files/web/files6 /usr/local/www/files6
mount 219.235.241.235:/files/web/files7 /usr/local/www/files7
mount 219.235.241.235:/files/web/files8 /usr/local/www/files8
mount 219.235.241.235:/files/web/files9 /usr/local/www/files9
CNZMKM加载NFS目录
mount 219.235.241.237:/files/web/cnzmkmfiles1 /usr/local/www/cnzmkmfiles1
mount 219.235.241.237:/files/web/cnzmkmfiles2 /usr/local/www/cnzmkmfiles2
mount 219.235.241.237:/files/web/cnzmkmfiles3 /usr/local/www/cnzmkmfiles3
mount 219.235.241.236:/files/web/cnzmkmfiles4 /usr/local/www/cnzmkmfiles4
mount 219.235.241.236:/files/web/cnzmkmfiles5 /usr/local/www/cnzmkmfiles5
mount 219.235.241.236:/files/web/cnzmkmfiles6 /usr/local/www/cnzmkmfiles6
mount 219.235.241.235:/files/web/cnzmkmfiles7 /usr/local/www/cnzmkmfiles7
mount 219.235.241.235:/files/web/cnzmkmfiles8 /usr/local/www/cnzmkmfiles8
mount 219.235.241.235:/files/web/cnzmkmfiles9 /usr/local/www/cnzmkmfiles9
测试NFS,文件名是写入文件的主机IP,每目录下两个文件分别为客户端和服务端shell下写入的文件
[root@webserver2 /usr/local/www] ll cnzmkmfiles1
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:19 231
-rw-r--r-- 1 root www 0B Jun 11 13:19 237
[root@webserver2 /usr/local/www] ll cnzmkmfiles2
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:19 231
-rw-r--r-- 1 root www 0B Jun 11 13:19 237
[root@webserver2 /usr/local/www] ll cnzmkmfiles3
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:19 231
-rw-r--r-- 1 root www 0B Jun 11 13:19 237
[root@webserver2 /usr/local/www] ll cnzmkmfiles4
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:32 231
-rw-r--r-- 1 root www 0B Jun 11 13:37 236
[root@webserver2 /usr/local/www] ll cnzmkmfiles5
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:32 231
-rw-r--r-- 1 root www 0B Jun 11 13:37 236
[root@webserver2 /usr/local/www] ll cnzmkmfiles6
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:32 231
-rw-r--r-- 1 root www 0B Jun 11 13:37 236
[root@webserver2 /usr/local/www] ll cnzmkmfiles7
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:34 231
-rw-r--r-- 1 root www 0B Jun 11 13:40 235
[root@webserver2 /usr/local/www] ll cnzmkmfiles8
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:35 231
-rw-r--r-- 1 root www 0B Jun 11 13:40 235
[root@webserver2 /usr/local/www] ll cnzmkmfiles9
total 0
-rw-r--r-- 1 4294967294 www 0B Jun 11 13:35 231
-rw-r--r-- 1 root www 0B Jun 11 13:40 235
双向读写正常