NFS Server的配置
首先介绍一下Server端和NFS相关文件的含义:
◆ /etc/exports 是NFS Server最基本的配置文件之一,文件中列出了共享的文件系统和允许访问这些文件系统的主机。这个文件可以用通配符或网段,以及一组主机名的形式来表示客户机列表。它有很大的灵活性,一般由系统管理员配置。
◆ /proc/fs/nfs/exports 导出文件列表的内核视图,包括导出的参数。
◆ /var/lib/nfs/etab 状态文件,其中列出了当前的高级列表。此文件包含了/etc/exports中相同格式的所有项目,同时包含了由exportfs -i手工导入的项目。
◆ /var/lib/nfs/rmtab 状态文件,列出了挂接导出文件的远程客户机清单。
◆ var/lib/nfs/xtab 状态文件,当前的低级导出清单。
例如,/etc/exports有下列一行/data *.flying.com.cn(rw),显然有多个主机可以匹配这个域。如果两个主机,如mail.flying.com.cn和ftp.flying.com.cn都请求访问该文件系统,则/var/lib/nfs/xtab文件包含了这个文件系统的两个基本相同的项目。
/etc/exports是纯文本文件,空行和以“#”开头的行会被忽略,长行可以用斜杠“/”分解为多行。文件中列出了允许NFS客户机访问服务器的文件系统,定义了导出文件系统和访问权限。
/etc/exports文件中任意行的格式如下:
vol_name host_name1(option1,opeion2....) host_name2(option1,option2)
其中vol_name(卷名)表示要导出的文件系统,除去卷名以外,其它参数都可以不写,不显示指出的参数都会采用缺省参数。host_name1
(主机名)如果不写的话,则任何主机都可以请求该文件系统。主机名的定义非常灵活,既可以指定某台主机,也可以指定一组主机。可以用下列四种方法来描述:
◆ 单个主机 可以用短名及完全限定名,或者用IP地址,例如student01、student01.flying.com.cn或者192.168.10.1都是合法的主机名。
◆ 网组 可以列出/etc.netgroup文件中或NFS网组映射中定义的整组主机。网组名以“@”开头,例如 @teacher 或 @students。
◆通配符主机 用通配符可以列出一个域中的所有主机器,通配符可以使用“*”和“?”、“*”匹配一个或多个字符及“?”匹配一个字符,但通配符不能匹配主机名中的点号。*.flying.com.cn可以匹配 ftp01.flying.com.cn,但不能匹配backup.ftp01.flying.com.cn,而*.*.flying.com.cn 就可以匹配 backup.ftp01.flying.com.cn。ftp??.flying.com.cn可以匹配ftp01.flying.com.cn和ftp02.flying.com.cn。
◆ 主机网络 可以用主机网络的方式导出特定的子网或几个子网,用192.168.10.0/255.255.255.0的方式可以匹配从192.168.10.1到192.168.10.255所有主机。导出选项用逗号分隔,但不能包含空格,长度可以任意设定。多数选项都是布尔选项,值为True或False,选项与性能或者安全性有关。当/etc/exports文件没有给出值时,系统会自动采用缺省值。选项的详细用法可以用man exportfs命令来获得。
更改/etc/exports文件后,可以用exportfs命令将文件的改变告诉服务器,也可以忽略/etc/exports文件,直接使用exportfs命令导出共享卷。exportfs可以指定导出或非导出卷时影响的选项,可以影响一个卷或几个卷的选项,见表1。