NFS(Network FileSystem)是由Sun开发并发展起来的文件系统,用于在不同机器,不同操作系统之间通过网络互相分享各自的文件。NFS Server也可以让客户端通过网络将远端的NFS Server共享出来的资源mount到自己的系统中,在客户端看来,使用NFS Server上的文件就象在使用本地文件一样。
NFS协议从诞生到现在,已经有多个版本,如NFS V2(rfc1094)、NFS V3(rfc1813)、NFS V4(rfc3010)。
V3相对V2的主要区别如下:
(1)V2最大只支持32b的文件大小(4G),而NFS V3最大支持64b文件大小。
(2)V3没有限定文件传输尺寸,V2最多只能设为8KB,可使用-rsize和-wsize 设定。
(3)V3增加和完善了许多错误和成功信息的返回,便于对于服务器的设置和管理。
(4)V2只提供了对UDP协议的支持,V3增加了对TCP协议的支持。
(5)V3增加了异步写入特性。
(6)V3改进了SERVER的mount性能。
(7)V3有更好的I/O Writes 性能。
(8)V3具有更高的网络运行效率。
(9)V3具有更强的灾难恢复功能。
V4相对V3的改进如下:
(1)V4改进了Internet上的存取和执行效率。
(2)V4在协议中增强了安全方面的特性。
(3)V4增强了跨平台特性。
1.查看NFS服务器是否启动
[root@localhost Desktop]# service nfs status
rpc.mountd 已停
nfsd 已停
rpc.rquotad 已停
2.启动NFS服务器
[root@localhost Desktop]# service nfs start
启动 NFS 服务: [确定]
关掉 NFS 配额: [确定]
启动 NFS 守护进程: [确定]
启动 NFS mountd: [确定]
3.NFS服务器的配置文件/etc/exports
[root@localhost Desktop]# gedit /etc/exports
文件内容如下:
/tmp/nfs *(rw,sync)
/etc/exports文件中每一行由三个字段构成:共享目录名、客户端主机地址、配置选项。
(1)共享目录名
/tmp/nfs:共享目录名。
(2)客户端主机地址
*:表示所有主机。
exports文件中客户端主机地址字段可以使用多种形式表示主机地址,如下:
192.168.1.10:指定IP地址的主机。
:指定域名的主机。
192.168.1.0/24:指定网段中的所有主机。
*.test.edu.cn:指定域下的所有主机。
*:表示所有主机。
(3)配置选项
(rw,sync):配置选项。
exports文件中的配置选项字段放置在括号中,多个选项间用逗号分隔。
sync:设置NFS服务器同步写磁盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项。
ro:设置共享目录为只读,与rw不能同时使用。
rw:设置共享目录为可读写,与ro不能同时使用。
4.创建共享目录
[root@localhost Desktop]# mkdir -p /tmp/nfs/temp
5.使前面新的设置生效
可以采用两种办法:exportfs -rv或者service nfs restart。
[root@localhost Desktop]# exportfs -rv
exporting *:/tmp/nfs
[root@localhost Desktop]# service nfs restart
关闭 NFS mountd: [确定]
关闭 NFS 守护进程: [确定]
关闭 NFS quotas: [确定]
关闭 NFS 服务: [确定]
启动 NFS 服务: [确定]
关掉 NFS 配额: [确定]
启动 NFS 守护进程: [确定]
启动 NFS mountd: [确定]
[root@localhost Desktop]# showmount -e //显示NFS服务器的输出目录列表
[root@localhost Desktop]# showmount -d //显示NFS服务器中被挂载的共享目录
6.在客户端挂载NFS共享目录(NFS的IP地址是10.0.0.11)
[root@localhost ~]# mount -t nfs 10.0.0.11:/tmp/nfs/ /mnt/tmp/
[root@localhost ~]# ll /mnt/tmp/
总计 8
drwxr-xr-x 2 root root 4096 05-17 18:42 temp
[root@localhost ~]# umount /mnt/tmp/ //卸载系统中已挂载的NFS共享目录
[root@localhost ~]# mount -t nfs 10.0.0.11:/tmp/nfs/temp/ /mnt/tmp/
[root@localhost ~]# ll /mnt/tmp/
总计 0
[root@localhost ~]# touch /mnt/tmp/exam.txt
touch: 无法触碰 “/mnt/tmp/exam.txt”: 权限不够
解决“权限不够”问题的方法:在NFS服务器端,修改/tmp/nfs/temp的权限。
[root@localhost Desktop]# ll /tmp/nfs/
总计 8
drwxr-xr-x 2 root root 4096 05-17 18:42 temp
[root@localhost Desktop]# chmod a+w /tmp/nfs/temp
[root@localhost Desktop]# ll /tmp/nfs/
总计 8
drwxrwxrwx 2 root root 4096 05-17 18:42 temp
在NFS客户端,重新创建文件。
[root@localhost ~]# touch /mnt/tmp/exam.txt
[root@localhost ~]# ll /mnt/tmp/
总计 4
-rw-r--r-- 1 nfsnobody nfsnobody 0 05-17 18:51 exam.txt
[root@localhost ~]# umount /mnt/tmp/ //卸载系统中已挂载的NFS共享目录
[root@localhost ~]# mount -t nfs 10.0.0.11:/tmp/nfs/ /mnt/tmp/
[root@localhost ~]# touch /mnt/tmp/exam.txt
touch: 无法触碰 “/mnt/tmp/exam.txt”: 权限不够
解决“权限不够”问题的方法如上。
阅读(1976) | 评论(0) | 转发(1) |