NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,他允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。
NFS有很多实际应用。下面是比较常见的一些:
NFS是运行在应用层的协议。随着NFS多年的发展和改进,NFS既可以用于局域网也可用于广域网,且与操作系统和硬件无关,可以在不同的计算机或系统上运行。
服务端:RHEL6.5(rh6-1) IP192.168.100.110/24
客户端:RHEL6.5(rh6-2) IP192.168.100.120/24
#yum install nfs-utils rpcbind –y //nfs-utils用于NFS共享发布和访问;rpcbind用于远端过程调用机制支持
#chkconfig nfs on //选择性设置NFS服务开机自启
#chkconfig rpcbind on //选择性设置RPC服务开机自启
#mkdir /opt/wwwroot //设置共享目录
#vi /etc/exports //编辑NFS配置文件expots,文件内容默认为空
/opt/wwwroot 192.168.100.0/24(rw) //目录位置为/opt/wwwroot,客户机地址为192.168.100.0网段,权限为rw可读可写
参数 | 作用 |
---|---|
ro | 只读 |
rw | 读写 |
root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户 |
no_root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员 |
all_squash | 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户 |
sync | 同时将数据写入到内存与硬盘中,保证不丢失数据 |
async | 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据 |
#service rpcbind start //开启RPC服务
#service nfs start //开启NFS服务
#netstat –ntap | grep rpcbind //查看111端口是否开启
#showmount –e 192.168.100.110 //本机中查看NFS文件
#service iptables stop //关闭防火墙
#setenforce 0 //关闭增强安全功能
#chmod 777 /opt/wwwroot //修改wwwroot路径权限以供写入
#yum install nfs-utils rpcbind –y //检查NFS和RPC服务是否安装,若未安装则自动安装
#service rpcbind start
#service nfs start
#chkconfig nfs on
#chkconfig rpcbind on
#showmount –e 192.168.100.110 //查看服务器中的NFS文件
#mkdir /abc //创建挂在路径
#mount 192.168.100.110:/opt/wwwroot /abc //手动挂载
#vi /etc/fstab //编辑自动挂载文件
192.168.100.110:/opt/wwwroot /abc nfs defaults,_netev 0 0 //添加自动挂载配置内容
在客户端(rh6-2):
#cd /abc //切换到共享目录下
#touch test123.txt //在客户端创建测试文件test123.txt
在服务端(rh6-1):
#cd /opt/wwwroot //切换到共享目录下
#ls –l
总用量0
-rw-r—r--. 1 nfsnobody nfsnobody 0 5月 7 18:45 test123.txt //可以发现没用户认证机制
可以发现,挂载完成后,访问客户机的/abc文件夹,实际上就相当于访问NFS服务器中的/opt/wwwroot文件夹,其中的网络映射过程对于用户程序来说是透明地。如上测试内容所示,在客户端创建的test
123.txt测试文件,会立刻出现在服务器的/opt/wwwroot当中。
NFS客户端与服务器端的耦合度是非常高的,如果客户端正在挂载使用,服务器端NFS服务突然间停掉了,那么在客户端就会出现执行df –h命令卡死的现象。这个使用umount命令是无法直接卸载的,需要加上-lf才能卸载,如命令#umount –lf /mnt。
原文地址:http://blog.51cto.com/13625810/2119138