在向大家详细介绍NFS系统服务之前,首先让大家了解下Linux系统,然后全面介绍NFS系统服务,希望对大家有用。Fedora8中NFS系统服务的配置。Linux具备现代一切功能完整的UNIX系统所具备的全部特征,其中包括真正的多任务、虚拟内存、共享库、优秀的内存管理以及TCP/IP网络支持等。
NFS系统服务最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机不同操作系统之间可以彼此共享文件。由于NFS系统服务使用起来非常方便,因此很快得到了大多数的UNIX/Linux系统的广泛支持,而且还被IETE(国际互联网工程组)制定为RFC1904、RFC1813和RFC3010 标准
使用NFS系统服务,至少需要启动以下3个系统守护进程。
1.rpc.nfsd
2.rpc.mountd
3.portmap
NFS系统服务器端文件系统的共享设置有三种方法
1.直接修改/etc/exports文件
2.用exports命令来增加和删除目录
3.使用图形化的配置方法
NFS系统服务客户端配置方法
1.通过mount命令挂载
2.在/etc/fstab中加入条目
exprots文件中每一行提供了一个共享目录的设置,其命令格式为:
<输出目录> [客户端1(选项1,选项2,…)][客户端2(选项1,选项2,…)]除了输出目录是必选参数外,其他参数都是可选的
注意:格式中的输出目录和客户端之间,客户端与客户端之间都使用空格分隔,但是客户端和选项之间不能有空格
客户端是指网络中可以访问这个NFS系统服务输出目录的计算机,客户端是指定非常灵活,可以是单个主机的IP地址或域名,也可以是某个子网或域中的主机等客户端常用的指定方式 :
客户端
192.168.16.20 指定IP地址的主机
192.168.16.0/24(或192.168.16.*) 指定子网中的所有主机
pc1.gdvcp.net指定域名的主机
.gdvcp.net指定域中的所有主机
(或缺省)所有主机选项用来设置输出目录的访问权限,用户映射等,在/etc/exports文件中选项,比较多一般可以分成3类
(1)访问权限选项用于控制输出目录访问权限的选项
ro设置输出目录只读
rw设置输出目录可读写
(2)用户映射选项
all_squash将远程访问的所有普通用户及所属用户组都映射为匿名用户或用户组(一般均为nfsnobody)
no_all_squash 不将远程访问的所有普通用户及所属用户组都映射为匿名用户或用户组(默认设置)
root_squash 将root用户及所属用户组都映射为匿名用户或用户组(默认设置)
no_root_squash不将root用户及所属用户组都映射为匿名用户或用户组
anonuid=xxx将远程访问的所有用户都映射为匿名用户,并指定该匿名用户账户为本地用户账户(UID=xxx)
anongid=xxx将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx)
(3)常用的其他选项
其他选项比较多,可用于对输出目录进行更全面的控制
secure限制客户端只能从小于1024的TCP/IP端口连接NFS系统服务器(默认设置)
insecure允许客户端从大于1024的TCP/IP端口连接NFS系统服务器
sync将数据同步写入内存缓冲区与磁盘中,虽然这样做效率较低,但可以保证数据的一致性
async将数据先保存在内存缓冲区中,必要时才写入磁盘
wdelay检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可提高效率(默认设置)
no_wdelay若有写操作则立即执行,应与sync配合使用
subtree_check若输出目录是一个子目录,则NFS系统服务器将检查其父目录的权限(默认设置)
no_subtree_check即使输出目录是一个子目录,NFS系统服务器也不检查其父目录的权限,这样做可提高效率
安装
[root@localhost init.d]# cd /media/Fedora\ 8\ i386\ DVD/Packages/
[root@localhost Packages]# find . -name "*nfs*"
./nfs-utils-1.1.0-6.fc8.i386.rpm
./nfs-utils-lib-1.1.0-3.fc8.i386.rpm
./system-config-nfs-1.3.32-1.fc8.noarch.rpm
[root@localhost Packages]# find . -name "*portmap*"
系统默认已经安装
[root@localhost Packages]# rpm -q nfs-utils-lib-1.1.0-3.fc8.i386
nfs-utils-lib-1.1.0-3.fc8
[root@localhost Packages]# rpm -q nfs-utils-1.1.0-6.fc8.i386
nfs-utils-1.1.0-6.fc8
[root@localhost etc]# /etc/rc.d/init.d/nfs start
启动 NFS系统服务: [确定]
关掉 NFS系统服务配额: [确定]
启动 NFS系统服务守护进程: [确定]
启动 NFS mountd: [确定]
[root@localhost etc]# /etc/rc.d/init.d/nfs stop
关闭 NFS mountd: [确定]
关闭 NFS系统服务守护进程: [确定]
关闭 NFS quotas: [确定]
关闭 NFS系统服务: [失败]
配置文件/etc/exports文件
该文件默认为空,没有配置输出任何共享目录,这是基于安全性的考虑,这样即使系统启动NFS系统服务也不会输出任何共享资源
[root@localhost opt]# cd /
[root@localhost /]# mkdir nfs
[root@localhost /]# cd nfs/
[root@localhost nfs]# mkdir public root users ji
[root@localhost nfs]# ls
ji public root users
[root@localhost nfs]# pwd
/nfs
[root@localhost etc]# vi exports
[root@localhost etc]# more exports
/nfs/public 192.168.1.*(rw,async) *(ro)
/nfs/ji 192.168.1.6(rw,sync)
/nfs/root *.jw.com(ro,no_root_squash)
/nfs/users *.jw.com(rw,insecure,all_squash,sync,no_wdelay)
启动/停止
[root@localhost etc]# /etc/rc.d/init.d/nfs start
启动 NFS系统服务: [确定]
关掉 NFS系统服务配额: [确定]
启动 NFS系统服务守护进程: [确定]
启动 NFS mountd: [确定]
[root@localhost etc]# /etc/rc.d/init.d/nfs stop
关闭 NFS mountd: [确定]
关闭 NFS系统服务守护进程: [确定]
关闭 NFS quotas: [确定]
关闭 NFS系统服务: [确定]
fc10中
NFS系统服务图形界面:yum install nfswatch.i386 system-config-nfs.noarch
【编辑推荐】