一、NFS
1、NFS(Network File System)是类unix系统之间使用广泛的文件共享协议,不同与ftp和http,NFS是共享句柄,不用下载再使用,而是直接使用而不需要下载
(类似与windows下的文件共享)
2、NFS服务将某个文件夹共享出来,客户端就可以直接通过网络挂载该共享文件夹,挂载后直接使用
3、NFS的效率比FTP或HTTP要高很多, ,通常只在局域网中使用, 互联网共享大多数还是使用FTP或HTTP方式
4、NFS主流版本:NFSv2、NFSv3、NFSv4
二、NFS协议
1、NFSv2和NFSv3默认需要使用RPC(远程进程调用)服务,NFSv4不再需要RPC支持并且是防火墙友好的
开启RPC服务:
service rpcbind start
chkconfig rpcbind on #设置开机自动启动
2、NFSv2和NFSv3既可以使用TCP协议进行传输,也可以使用UDP协议,建议使用TCP,NFSv4使用TCP协议进行传输
3、NFS服务默认安装,启动命令:
service nfs start
chkconfig nfs on
三、NFS、防火墙
1、默认NFS需要5个端口,其中4个是动态的,以及一个rpc服务的端口,动态端口无法通过防火墙,如果需要通过防火墙,需要配置NFS使用静态的端口
2、配置NFS的配置文件,添加静态端口:
-配置文件:
/etc/sysconfig/nfs
-端口设置(挂载使用):
MOUNT_PORT="4001" # 挂载使用端口
STATD_PORT="4002" # 状态使用端口
LOCKD_TCPPORT="4003" # TCP锁使用端口
LOCKD_UDPPORT="4004" # UDP锁使用端口
(防火墙需要配置允许以上端口,以及NFS协议的2049端口,RPC的111端口允许通过,才能正常使用NFS)
四、NFS共享
1、配置文件为 /etc/exports ,每一个共享占用一行,格式如下:
共享目录 允许的客户主机(选项)
如:
/linuxcast-nfs 192.168.1.0/24(ro, async)
/linuxcast-nfs 10.1.1.1(rw, sync)
/linuxcast-nfs *.baidu.com
2、启动共享
service nfs start
或者(exportfs -r)
3、查看当前共享
exportfs -v
五、NFS共享选项
1、默认选项:
-ro 只读共享
-sync 所有操作返回前必须已经写入磁盘
-wdelay 延迟写操作,等待更多的写操作一起执行
-root-squash 防止远程root用户使用root权限对共享进行访问
2、常用选项:
-rw 读写共享
-async 操作可以延迟写入磁盘,立即相应,可提高速度
-no_wdelay 关闭延迟,需要与sync选项同时使用
-no_root_squash 关闭root_squash
六、挂载NFS共享
1、客户端通过mount命令挂载NFS共享,如下:
mount -t nfs 192.168.1.100:/linuxcast-nfs /mnt
(NFS服务器)(共享路径)
2、可以将配置写入 /etc/fstab 中,在启动时自动挂载
192.168.1.100:/linuxcast-nfs /mnt nfs defaults 0 0
3、挂载时可以使用-o指定挂载选项
-ro 只读挂载
-rw 读写挂载
-vers=4 指定使用NFSv4方式挂载