📄 s1-nfs-export.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><HTML><HEAD><TITLE>导出 NFS 文件系统</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="Red Hat Linux 9"HREF="index.html"><LINKREL="UP"TITLE="网络文件系统(NFS)"HREF="ch-nfs.html"><LINKREL="PREVIOUS"TITLE="挂载 NFS 文件系统"HREF="s1-nfs-mount.html"><LINKREL="NEXT"TITLE="其它资料"HREF="s1-nfs-additional-resources.html"><LINKREL="STYLESHEET"TYPE="text/css"HREF="rhdocs-man.css"><METAHTTP-EQUIV="Content-Type"CONTENT="text/html; charset=gb2312"></HEAD><BODYCLASS="SECT1"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">Red Hat Linux 9: Red Hat Linux 定制指南</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="s1-nfs-mount.html"ACCESSKEY="P">后退</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">16. 网络文件系统(NFS)</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="s1-nfs-additional-resources.html"ACCESSKEY="N">前进</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="SECT1"><H1CLASS="SECT1"><ANAME="S1-NFS-EXPORT"></A>16.3. 导出 NFS 文件系统</H1><P> 从 NFS 服务器中共享文件又称导出目录。<BCLASS="APPLICATION">NFS 服务器配置工具</B>可以用来把系统配置成 NFS 服务器。 </P><P> 要使用 <BCLASS="APPLICATION">NFS 服务器配置工具</B>,你必须运行 X 窗口系统,具备根特权,并且安装了 <TTCLASS="FILENAME">redhat-config-nfs</TT> RPM 软件包。要启动这个程序,点击面板上的<BCLASS="GUIMENU">「主菜单」</B> => <BCLASS="GUIMENU">「系统设置」</B> => <BCLASS="GUIMENU">「服务器设置」</B> => <BCLASS="GUIMENUITEM">「NFS 服务器」</B>,或键入 <TTCLASS="COMMAND">redhat-config-nfs</TT> 命令。 </P><DIVCLASS="FIGURE"><ANAME="FIG-REDHAT-CONFIG-NFS"></A><DIVCLASS="MEDIAOBJECT"><P><IMGSRC="./figs/nfs/redhat-config-nfs.png"></P></DIV><P><B>图 16-1. <BCLASS="APPLICATION">NFS 服务器配置工具</B></B></P></DIV><P> 要添加 NFS 共享,点击<BCLASS="GUIBUTTON">「添加」</B>按钮。如<AHREF="s1-nfs-export.html#FIG-ADD-SHARE">图 16-2</A>所示的对话框会出现。 </P><P> <BCLASS="GUILABEL">「基本」</B>活页标签要求以下信息: </P><P></P><UL><LI><P><BCLASS="GUILABEL">「目录」</B> — 指定要共享的目录,如 <TTCLASS="FILENAME">/tmp</TT>。</P></LI><LI><P><BCLASS="GUILABEL">「主机」</B> — 指定要共享目录的主机。请参阅<AHREF="s1-nfs-export.html#S2-NFS-HOSTNAME-FORMATS">第 16.3.2 节</A>来获取对格式的解释。 </P></LI><LI><P><BCLASS="GUILABEL">「基本权限」</B> — 指定目录应该有只读权限还是读写权限。</P></LI></UL><DIVCLASS="FIGURE"><ANAME="FIG-ADD-SHARE"></A><DIVCLASS="MEDIAOBJECT"><P><IMGSRC="./figs/nfs/nfs-add.png"></P></DIV><P><B>图 16-2. 添加共享</B></P></DIV><P> <BCLASS="GUILABEL">「常规选项」</B>活页标签允许你配置以下选项: </P><P></P><UL><LI><P><BCLASS="GUILABEL">「允许来自高于 1024 的端口的连接」</B> — 在号码小于 1024 的端口上启动的服务必须以根用户身份启动。选择这个选项来允许根用户以外的用户来启动 NFS 服务。该选项和 <TTCLASS="COMMAND">insecure</TT> 相对应。</P></LI><LI><P><BCLASS="GUILABEL">「允许不安全的文件锁定」</B> — 不需要锁定请求。该选项和 <TTCLASS="COMMAND">insecure_locks</TT> 相对应。</P></LI><LI><P><BCLASS="GUILABEL">「禁用子树检查」</B> — 如果某文件系统的子目录被导出,但是整个文件系统没有被导出,服务器会检查所请求的文件是否在导出的子目录中。这种检查叫做<ICLASS="FIRSTTERM">子树检查(subtree checking)</I>。选择这个选项来禁用子树检查。如果整个文件系统被导出,选择禁用子树检查可以提高传输率。该选项和 <TTCLASS="COMMAND">no_subtree_check</TT> 相对应。</P></LI><LI><P><BCLASS="GUILABEL">「按要求同步写操作」</B> — 默认被启用,该选项不允许服务器在请求被写入磁盘前回复这些请求。该选项和 <TTCLASS="COMMAND">sync</TT> 相对应。如果它没有被选择,<TTCLASS="COMMAND">async</TT> 选项会被使用。</P><P></P><UL><LI><P><BCLASS="GUILABEL">「立即强制同步写操作」</B> — 不推迟写入磁盘的操作。该选项和 <TTCLASS="COMMAND">no_wdelay</TT> 相对应。</P></LI></UL></LI></UL><P> <BCLASS="GUILABEL">「用户访问」</B>活页标签允许你配置以下选项: </P><P></P><UL><LI><P><BCLASS="GUILABEL">「把远程根用户当作本地根用户」</B> — 按照默认设置,根用户的用户 ID 和组群 ID 都是 0。根权限压缩(Root squashing)把用户 ID 0 和组群 ID 0 映射为匿名的用户和组群 ID,因此客户上的根用户就不会在 NFS 服务器上具备根特权。如果这个选项被选,根用户就不会被映射为匿名用户,客户上的根用户就会对导出的目录拥有根特权。选择这个选项会大大降低系统的安全性。除非绝对必要,请不要选择它。该选项和 <TTCLASS="COMMAND">no_root_squash</TT> 相对应。</P></LI><LI><P><BCLASS="GUILABEL">「把所有客户用户当作匿名用户」</B> — 如果该选项被选,所有用户和组群 ID 都会被映射为匿名用户。该选项和 <TTCLASS="COMMAND">all_squash</TT> 相对应。</P><P></P><UL><LI><P><BCLASS="GUILABEL">「为匿名用户指定本地用户 ID」</B> — 如果<BCLASS="GUILABEL">「把所有客户用户当作匿名用户」</B>被选,这个选项会让 你为匿名用户指定一个用户 ID。该选项和 corresponds to <TTCLASS="COMMAND">anonuid</TT> 相对应。</P></LI><LI><P><BCLASS="GUILABEL">「为匿名用户指定本地组群 ID」</B> — 如果<BCLASS="GUILABEL">「把所有客户用户当作匿名用户」</B>被选,这个选项会让 你为匿名用户指定一个组群 ID。该选项和 corresponds to <TTCLASS="COMMAND">anongid</TT> 相对应。</P></LI></UL></LI></UL><P> 要编辑 NFS 共享,从列表中选择它,然后点击<BCLASS="GUIBUTTON">「属性」</B>按钮。要删除某个现存 NFS 共享,从列表中选择它,然后点击<BCLASS="GUIBUTTON">「删除」</B>按钮。 </P><P> 点击了<BCLASS="GUIBUTTON">「确定」</B>来从列表中添加、编辑、或删除某个 NFS 共享后,改变就会立即生效 — 服务器守护进程被重新启动,原有的配置文件被保存为 <TTCLASS="FILENAME">/etc/exports.bak</TT>。新的配置文件被写入 <TTCLASS="FILENAME">/etc/exports</TT>。 </P><P> <BCLASS="APPLICATION">NFS 服务器配置工具</B>直接读写 <TTCLASS="FILENAME">/etc/exports</TT> 配置文件。因此,这个文件在使用该工具后可以被手工修改;手工修改了该文件后也可以使用这个工具(假定手工修改时使用了正确的语法)。 </P><DIVCLASS="SECT2"><H2CLASS="SECT2"><ANAME="S2-NFS-COMMAND-LINE"></A>16.3.1. 命令行配置</H2><P> 如果你更喜欢使用文本编辑器来编辑配置文件或者你没有安装 X 窗口系统,你可以直接修改配置文件。 </P><P> <TTCLASS="FILENAME">/etc/exports</TT> 文件控制 NFS 服务器要导出哪些目录。它的格式如下: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND"><TTCLASS="REPLACEABLE"><I>directory</I></TT> <TTCLASS="REPLACEABLE"><I>hostname</I></TT>(<TTCLASS="REPLACEABLE"><I>options</I></TT>)</TT></PRE></TD></TR></TABLE><P> 唯一需要指定的选项是 <TTCLASS="COMMAND">sync</TT> 和 <TTCLASS="COMMAND">async</TT> 之一(建议使用<TTCLASS="COMMAND">sync</TT> is recommended)。如果指定了 <TTCLASS="COMMAND">sync</TT>,服务器在请求所做的改变被写入磁盘之前就不会回复这些请求。 </P><P> 例如: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND"><TTCLASS="FILENAME">/misc/export</TT> speedy.example.com(sync)</TT></PRE></TD></TR></TABLE><P> 会允许来自 <TTCLASS="FILENAME">speedy.example.com</TT> 的用户使用默认的只读权限来挂载 <TTCLASS="FILENAME">/misc/export</TT>,但是: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND"><TTCLASS="FILENAME">/misc/export</TT> speedy.example.com(rw,sync)</TT></PRE></TD></TR></TABLE><P> 将会允许来自 <TTCLASS="FILENAME">speedy.example.com</TT> 的用户使用读写权限来挂载 <TTCLASS="FILENAME">/misc/export</TT>。 </P><P> 请参阅<AHREF="s1-nfs-export.html#S2-NFS-HOSTNAME-FORMATS">第 16.3.2 节</A>来获取关于主机名格式的解释。 </P><P> 请参阅<ICLASS="CITETITLE">《Red Hat Linux 参考指南》</I>来获取可以被指定的选项的列表。 </P><DIVCLASS="CAUTION"><P></P><TABLECLASS="CAUTION"WIDTH="100%"BORDER="0"><TR><TDWIDTH="25"ALIGN="CENTER"VALIGN="TOP"><IMGSRC="./stylesheet-images/caution.png"HSPACE="5"ALT="小心"></TD><THALIGN="LEFT"VALIGN="CENTER"><B>小心</B></TH></TR><TR><TD> </TD><TDALIGN="LEFT"VALIGN="TOP"><P> 请谨慎处理 <TTCLASS="FILENAME">/etc/exports</TT> 文件中的空格。如果主机名和括号内的选项之间没有空格,这些选项就只应用于这个主机名。如果在主机名和选项之间有空格,这些选项就是全局应用的。例如,请仔细查看以下行: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMPUTEROUTPUT">/misc/export speedy.example.com(rw,sync)/misc/export speedy.example.com (rw,sync)</TT></PRE></TD></TR></TABLE><P> 第一行给来自 <TTCLASS="FILENAME">speedy.example.com</TT> 的用户以读写权限并拒绝所有其他用户。第二行给来自 <TTCLASS="FILENAME">speedy.example.com</TT> 的用户以只读权限(默认设置),并给予所有其他用户以读写权限。 </P></TD></TR></TABLE></DIV><P> 在你每次改变 <TTCLASS="FILENAME">/etc/exports</TT> 的时候,你必须把改变通知给 NFS 守护进程,或使用以下命令来重新载入配置文件: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND">/sbin/service nfs reload</TT></PRE></TD></TR></TABLE></DIV><DIVCLASS="SECT2"><H2CLASS="SECT2"><ANAME="S2-NFS-HOSTNAME-FORMATS"></A>16.3.2. 主机名格式</H2><P> 主机可以使用以下格式: </P><P></P><UL><LI><P>单个机器 — 一个全限定域名(能够被服务器解析的),主机名(能够被服务器解析的),或 IP 地址。</P></LI><LI><P>使用通配符指定的一系列机器 — 使用“*”或“?”字符来指定字符串匹配。通配符不能被用在 IP 地址中;如果逆向 DNS 查寻失败了,通配符可能碰巧会奏效。当你在全限定域名中指定通配符时,点(.)不包括在 通配符的匹配项目内。例如:<TTCLASS="COMPUTEROUTPUT">*.example.com</TT> 包括 one.example.com,但不包括 one.two.example.com.</P></LI><LI><P>IP 网络 — 使用 <TTCLASS="REPLACEABLE"><I>a.b.c.d/z</I></TT>,这里的 <TTCLASS="REPLACEABLE"><I>a.b.c.d</I></TT> 是网络,<TTCLASS="REPLACEABLE"><I>z</I></TT> 是子网掩码中的位数(如 192.168.0.0/24)。另一种可以接受的格式是 <TTCLASS="REPLACEABLE"><I>a.b.c.d/netmask</I></TT>,这里的 <TTCLASS="REPLACEABLE"><I>a.b.c.d</I></TT> 是网络,<TTCLASS="REPLACEABLE"><I>netmask</I></TT> 是子网掩码(如 192.168.100.8/255.255.255.0)。</P></LI><LI><P>Netgroups — 格式为 <TTCLASS="REPLACEABLE"><I>@group-name</I></TT>,这里的 <TTCLASS="REPLACEABLE"><I>group-name</I></TT> 是 NIS netgroup 的名称。</P></LI></UL></DIV><DIVCLASS="SECT2"><H2CLASS="SECT2"><ANAME="S2-NFS-START-STOP"></A>16.3.3. 启动和停止服务器</H2><P> 在导出 NFS 文件系统的服务器上,<TTCLASS="COMMAND">nfs</TT> 服务必须在运行。 </P><P> 使用以下命令来查看 NFS 守护进程的状态: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND">/sbin/service nfs status</TT></PRE></TD></TR></TABLE><P> 使用以下命令来启动 NFS 守护进程: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND">/sbin/service nfs start</TT></PRE></TD></TR></TABLE><P> 使用以下命令来停止 NFS 守护进程: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND">/sbin/service nfs stop</TT></PRE></TD></TR></TABLE><P> 要在引导时启动 <TTCLASS="COMMAND">nfs</TT> 服务,使用以下命令: </P><TABLECLASS="SCREEN"BGCOLOR="#DCDCDC"WIDTH="100%"><TR><TD><PRECLASS="SCREEN"><TTCLASS="COMMAND">/sbin/chkconfig --level 345 nfs on</TT></PRE></TD></TR></TABLE><P> 你还可以使用 <TTCLASS="COMMAND">chkconfig</TT>、<BCLASS="APPLICATION">ntsysv</B> 或 <BCLASS="APPLICATION">服务配置工具</B>来配置要在引导时启动哪些服务。详情请参阅<AHREF="ch-services.html">第14章 </A>。 </P></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="s1-nfs-mount.html"ACCESSKEY="P">后退</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="index.html"ACCESSKEY="H">起点</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="s1-nfs-additional-resources.html"ACCESSKEY="N">前进</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">挂载 NFS 文件系统</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="ch-nfs.html"ACCESSKEY="U">上级</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">其它资料</TD></TR></TABLE></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -