aboutsummaryrefslogtreecommitdiff
path: root/zh_CN.GB2312/books/handbook
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2004-10-11 18:37:56 +0000
committerXin LI <delphij@FreeBSD.org>2004-10-11 18:37:56 +0000
commit665435cb457234df997e381aefe8003b86a9c3ed (patch)
tree68808bf2d899e46c9cab0851c372f37d45f02743 /zh_CN.GB2312/books/handbook
parent3960e8c10a0b8fb3c5f9e9a653482067b6fd2f8e (diff)
Notes
Diffstat (limited to 'zh_CN.GB2312/books/handbook')
-rw-r--r--zh_CN.GB2312/books/handbook/basics/chapter.sgml6
-rw-r--r--zh_CN.GB2312/books/handbook/bibliography/chapter.sgml6
-rw-r--r--zh_CN.GB2312/books/handbook/config/chapter.sgml31
-rw-r--r--zh_CN.GB2312/books/handbook/install/chapter.sgml4
-rw-r--r--zh_CN.GB2312/books/handbook/introduction/chapter.sgml17
-rw-r--r--zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml44
-rw-r--r--zh_CN.GB2312/books/handbook/mail/chapter.sgml14
-rw-r--r--zh_CN.GB2312/books/handbook/mirrors/chapter.sgml11
-rw-r--r--zh_CN.GB2312/books/handbook/network-servers/chapter.sgml1176
-rw-r--r--zh_CN.GB2312/books/handbook/pgpkeys/chapter.sgml19
-rw-r--r--zh_CN.GB2312/books/handbook/security/chapter.sgml14
-rw-r--r--zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml2
-rw-r--r--zh_CN.GB2312/books/handbook/users/chapter.sgml4
-rw-r--r--zh_CN.GB2312/books/handbook/x11/chapter.sgml4
14 files changed, 1267 insertions, 85 deletions
diff --git a/zh_CN.GB2312/books/handbook/basics/chapter.sgml b/zh_CN.GB2312/books/handbook/basics/chapter.sgml
index f43b3fb2a7..9dfbbc71cb 100644
--- a/zh_CN.GB2312/books/handbook/basics/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/basics/chapter.sgml
@@ -1595,7 +1595,7 @@ total 530
<para>&man.ps.1;支持使用各种选项去改变显示出来的内容,
最有用的一个就是<literal>auxww</literal>。
- <option>a</option>选项显示出所有运行进程的内容,而且显示出进程的并一定是您的进程。
+ <option>a</option>选项显示出所有运行进程的内容, 而不仅仅是您的进程。
<option>u</option>选项显示出进程所归属的用户名字以及内存使用,
<option>x</option> 选项显示出后台进程。 而
<option>ww</option> 选项表示为 &man.ps.1; 把整个命令行全部显示完,
@@ -2011,7 +2011,7 @@ Swap: 256M Total, 38M Used, 217M Free, 15% Inuse
<para>FreeBSD本身也带许可多有强大功能的文本编辑器, 例如
<application>vi</application>。还有其他在FreeBSD Ports里几种, 像
<application>emacs</application> 和 <application>vim</application>。
- 这些编辑器有着强大的功能但同时学习起来比较复习。
+ 这些编辑器有着强大的功能,但同时学习起来比较复杂。
不管怎样,假如您从事文字编辑方面的工作,
学习如<application>vim</application> 或 <application>emacs</application>
这些有强大功能的编辑器用法,
@@ -2035,7 +2035,7 @@ Swap: 256M Total, 38M Used, 217M Free, 15% Inuse
<sect2>
<title>建立设备节点</title>
- <para>当增加一个新设备或付加设备需要寻求支持时,
+ <para>当增加一个新设备或附加设备需要寻求支持时,
您也许需要在新设备上建立单个或多个的设备节点。</para>
<sect3>
diff --git a/zh_CN.GB2312/books/handbook/bibliography/chapter.sgml b/zh_CN.GB2312/books/handbook/bibliography/chapter.sgml
index 4860c6a2d5..fcb48da334 100644
--- a/zh_CN.GB2312/books/handbook/bibliography/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/bibliography/chapter.sgml
@@ -1,7 +1,7 @@
<!--
The FreeBSD Chinese Documentation Project
- Original Revision: 1.67
+ Original Revision: 1.69
$FreeBSD$
-->
@@ -415,8 +415,8 @@
</listitem>
<listitem>
- <para>Marshall Kirk McKusick, George V. Neville-Neil<emphasis>The Design
- and Implementation of the FreeBSD UNIX Operating System</emphasis>.
+ <para>Marshall Kirk McKusick, George V. Neville-Neil <emphasis>The Design
+ and Implementation of the FreeBSD Operating System</emphasis>.
Boston, Mass. : Addison-Wesley, 2004. ISBN 0-201-70245-2</para>
</listitem>
diff --git a/zh_CN.GB2312/books/handbook/config/chapter.sgml b/zh_CN.GB2312/books/handbook/config/chapter.sgml
index 512f6d29b9..c4983bd5b7 100644
--- a/zh_CN.GB2312/books/handbook/config/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/config/chapter.sgml
@@ -1,7 +1,7 @@
<!--
The FreeBSD Chinese Documentation Project
- Original Revision: 1.174
+ Original Revision: 1.181
$FreeBSD$
-->
@@ -339,10 +339,10 @@ esac
exit 0</programlisting>
- <para>这个脚本提供了一个 <literal>start</literal>
- 和 <literal>stop</literal> 选项,
- 这可以让应用程序被当作组件(utility)来引用。
- 可以在 <filename>/etc/rc.conf</filename> 写这么一行:</para>
+ <para>这个脚本提供了一个 <literal>stop</literal> 和
+ <literal>start</literal> 选项, 用于操作这里称之为
+ <literal>utility</literal> 的应用程序。 可以在
+ <filename>/etc/rc.conf</filename> 中加入这样一行:</para>
<programlisting>utility_enable="YES"</programlisting>
@@ -2060,8 +2060,8 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
而不会征求 OS 的同意。 第二, APM 逻辑是嵌入
BIOS 的, 因此它是在 OS 的控制之外运转的。
这意味着用户只能通过通过刷新他们 ROM 中的 APM BIOS
- 才能够解决某些问题; 而这是一个很危险的操作, 一旦失败,
- 则可能使系统进入一个无法恢复的状态。 第三, APM
+ 才能够解决某些问题; 而这是一个很危险的操作,
+ 因为它可能使系统进入一个无法恢复的状态。 第三, APM
是一种制造商专属的技术, 也就是说有很多第三方的
(重复的工作) 以及 bugs, 如果在一个制造商的 BIOS 中有,
也未必会在其他的产品中解决。 最后但绝不是最小的问题, APM
@@ -2130,12 +2130,13 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
<title>使用和调试 &os; <acronym>ACPI</acronym></title>
- <para><acronym>ACPI</acronym> 是在本质上是一种发现设备、管理电源使用,
+ <para><acronym>ACPI</acronym> 是一种全新的发现设备、 管理电源使用,
提供过去由 <acronym>BIOS</acronym> 管理的访问不同硬件的标准化方法。
让 <acronym>ACPI</acronym> 在各种系统上都能正确使用的工作一直在进行,
但许多主板的 <firstterm><acronym>ACPI</acronym> 机器语言</firstterm>
- (<acronym>AML</acronym>) 字节代码中的 bug, &os; 的内核中资系统设计的不完善,
- 以及 Intel <acronym>ACPI-CA</acronym> 解释器中的 bug 仍然市场会出现。</para>
+ (<acronym>AML</acronym>) 字节代码中的 bug, &os; 的内核中资系统设计的不完善,
+ 以及 &intel;
+ <acronym>ACPI-CA</acronym> 解释器中的 bug 仍然不时会出现。</para>
<para>这份文档期望能够帮助您协助 &os;
<acronym>ACPI</acronym> 的维护人员来找到您所观察到的问题的根源,
@@ -2153,7 +2154,7 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
<para>如果您希望提交一个问题,
请确保将下述信息法到
<ulink url="mailto:freebsd-acpi@FreeBSD.org">
- freebsd-acpi@FreeBSD.org</ulink></para>
+ freebsd-acpi@FreeBSD.org</ulink>:</para>
<itemizedlist>
<listitem>
@@ -2163,13 +2164,13 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
<listitem>
<para>在 <quote>boot
- <option>-v</option></quote>之后得到的 dmesg 输出, 包括任何在重现 bug
- 之后出现的错误信息。</para>
+ <option>-v</option></quote> 之后得到的 &man.dmesg.8; 输出, 以及任何在重现
+ bug 时出现的错误信息。</para>
</listitem>
<listitem>
<para>在禁用了 <acronym>ACPI</acronym> 之后的 <quote>boot
- <option>-v</option></quote> 的 dmesg 输出, 如果您发现禁用 ACPI
+ <option>-v</option></quote> 的 &man.dmesg.8; 输出, 如果您发现禁用 ACPI
能够帮助消除问题。</para>
</listitem>
@@ -2232,7 +2233,7 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
<para><acronym>ACPI</acronym> 驱动必须要处理固定表,
实现字节码解释器, 并修改驱动程序和内核, 以接受来自
- <acronym>ACPI</acronym> 子系统的信息。 对于 &os;, Intel
+ <acronym>ACPI</acronym> 子系统的信息。 对于 &os;, &intel;
提供了一个解释器 (<acronym>ACPI-CA</acronym>),
它在 Linux 和 NetBSD 也可以使用。
<acronym>ACPI-CA</acronym> 源代码可以在
diff --git a/zh_CN.GB2312/books/handbook/install/chapter.sgml b/zh_CN.GB2312/books/handbook/install/chapter.sgml
index 5b8cfaab66..cbf911e174 100644
--- a/zh_CN.GB2312/books/handbook/install/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/install/chapter.sgml
@@ -2049,7 +2049,7 @@ Mounting root from ufs:/dev/md0c
<keycap>Enter</keycap> 确认安装</para>
<para>安装所需的时间会根据您所选择的软件、安装介质以及您电脑的速度而有所不同。
- 在安装的过程中会有一些信息来显示目前蝗进度。</para>
+ 在安装的过程中会有一些信息来显示目前的进度。</para>
<para>当您看到下面的信息表示已经安装完成了:</para>
@@ -2244,7 +2244,7 @@ installation menus to retry whichever operations have failed.
<para>选择 &gui.yes; 然后按
<keycap>Enter</keycap> 将会将机器的网卡转为启用状态。机器下次启动
- 的时候即可实用。</para>
+ 的时候即可使用。</para>
</sect2>
<sect2 id="gateway">
diff --git a/zh_CN.GB2312/books/handbook/introduction/chapter.sgml b/zh_CN.GB2312/books/handbook/introduction/chapter.sgml
index e9cc4ad4c3..9f0a653650 100644
--- a/zh_CN.GB2312/books/handbook/introduction/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/introduction/chapter.sgml
@@ -586,15 +586,14 @@
<primary>FreeBSD Project</primary>
<secondary>goals</secondary>
</indexterm>
- <para>FreeBSD 项目的目标是为那些不管出于什么目的,
- 不需要有任何限制的人提供软件。
- 我们中的许多人对代码(和计划)都有非常大的投入和研究,
- 当然也不介意一些资金上的补偿,不管是现在或者将来。
- 但是,我们确定不准备坚持这么做。
- 我们认为我们的首要<quote>使命</quote>是为任何人和新来者提供代码,
- 不管他们出于什么目的。以便代码能得到最大限度的利用,
- 带给使用者最大的好处。
- 我认为这是自由软件和我们的狂热支持者的一个最基本的目标。</para>
+ <para>FreeBSD 项目的目标是无附加条件地提供能够用于任何目的的软件。
+ 我们中的许多人对代码 (以及项目本身) 都有非常大的投入,
+ 因此当然不介意偶尔有一些资金上的补偿,
+ 但我们并没打算坚决地要求得到这类资助。
+ 我们认为我们的首要 <quote>使命</quote> 是为任何人提供代码,
+ 不管他们打算用这些代码做什么, 因为这样代码将能够被更广泛地使用,
+ 从而最大限度地发挥其价值。 我认为这是自由软件最基本的,
+ 同时也是为我们所倡导的一个目标。</para>
<indexterm>
<primary>GNU General Public License (GPL)</primary>
diff --git a/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml b/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml
index 7dfb54ccf5..099d8a3dff 100644
--- a/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Chinese Documentation Project
- Original Revision: 1.140
+ Original Revision: 1.142
$FreeBSD$
-->
@@ -36,31 +36,31 @@
<secondary>建立一个定制的内核</secondary>
</indexterm>
- <para>内核是&os;操作系统的核心。它用来管理内存,执行
- 安全控制,网络,磁盘访问等等。虽然现在&os;可以更多地
- 进行动态配置,但有时您还是需要重新配置和编译您的内核。</para>
+ <para>内核是 &os; 操作系统的核心。 它负责管理内存、 执行安全控制、
+ 网络、 磁盘访问等等。 尽管 &os; 可以动态修改的现在已经越来越多,
+ 但有时您还是需要重新配置和编译您的内核。</para>
- <para>读完这章,您将了解到:</para>
+ <para>读完这章,您将了解:</para>
<itemizedlist>
<listitem>
- <para> 为什么需要建立一个定制的内核。</para>
+ <para>为什么需要建立定制的内核。</para>
</listitem>
<listitem>
- <para> 如何写一个内核配置文件,或修改已存在的配置文件。</para>
+ <para>如何编写内核配置文件,或修改已存在的配置文件。</para>
</listitem>
<listitem>
- <para> 如何使用内核配置文件创建和建立一个新的内核。</para>
+ <para>如何使用内核配置文件创建和联编新的内核。</para>
</listitem>
<listitem>
- <para>如何安装一个新内核。</para>
+ <para>如何安装新内核。</para>
</listitem>
<listitem>
- <para>如何在<filename>/dev</filename>中创建设备节点。</para>
+ <para>如何在 <filename>/dev</filename> 中创建设备节点。</para>
</listitem>
<listitem>
@@ -73,7 +73,7 @@
</sect1>
<sect1 id="kernelconfig-custom-kernel">
- <title>为什么需要建立一个定制的内核?</title>
+ <title>为什么需要建立定制的内核?</title>
<para>过去, &os; 采用称作 <quote>单片式</quote> 的内核。
这句话的意思是说内核是一个大的程序, 支持固定的设备,
@@ -153,8 +153,10 @@
如果您的情况不是这样, 只需对目录名作相应的调整即可。</para>
<note>
- <para>如果在您的系统上<emphasis>没有</emphasis><filename>/usr/src/sys</filename>这个目录,
- 那么内核源代码就没有被安装。最简单的方法是以<username>root</username>身份执行<command>/stand/sysinstall</command>,
+ <para>如果在您的系统上 <emphasis>没有</emphasis> <filename>/usr/src/sys</filename> 这个目录,
+ 则说明没有安装内核源代码。
+ 最简单的方法是以 <username>root</username> 身份执行
+ <command>/stand/sysinstall</command>,
选择<guimenuitem>Configure</guimenuitem>,
接着是<guimenuitem>Distributions</guimenuitem>,
下来<guimenuitem>src</guimenuitem>,
@@ -214,7 +216,7 @@
linkend="bibliography">参考书目</link> 一章中找到很多相关书籍。
不过, &os; 也提供了一个更好用的编辑器,
它叫做 <application>ee</application>, 对于新手来说,
- 它很可能是一个不错的选择。
+ 这很可能是一个不错的选择。
您可以修改配置文件中的注释以反映您的配置,
或其他与 <filename>GENERIC</filename> 不同的地方。</para>
<indexterm><primary>SunOS</primary></indexterm>
@@ -729,7 +731,7 @@ options NFS_ROOT # NFS usable as /, requires NFSCLIENT</progra
<literal>PROCFS</literal>,
因为绝大多数调试和监视工具都已经进行了修改,
不再需要 <literal>PROCFS</literal>: 与 &os; 4.X
- 不同, 新安装的 &os; 5.X 默认情况下髌骨挂接它。
+ 不同, 新安装的 &os; 5.X 默认情况下并不挂接它。
此外, 6.X-CURRENT 内核在使用
<literal>PROCFS</literal> 时还必须加入
<literal>PSEUDOFS</literal> 的支持:</para>
@@ -769,21 +771,21 @@ options NFS_ROOT # NFS usable as /, requires NFSCLIENT</progra
<programlisting>options SYSVSHM # SYSV-style shared memory</programlisting>
- <para>提供System V共享内存(SHM)的支持,最常用到SHM的应该是X Window的XSHM延伸,
+ <para>提供System&nbsp;V共享内存(SHM)的支持,最常用到SHM的应该是X Window的XSHM延伸,
不少绘图相关程序会自动使用SHM来提供额外的速度。如果您要使用X Window,您最好加入这个选项。
</para>
<programlisting>options SYSVSEM # SYSV-style semaphores</programlisting>
- <para>支持System V semaphores,不常用到,只在kernel中占用几百个字节的空间。</para>
+ <para>支持System&nbsp;V 信号量,不常用到,只在kernel中占用几百个字节的空间。</para>
<programlisting>options SYSVMSG # SYSV-style message queues</programlisting>
- <para>支持 System V 消息。 同样地, 这只会在内核中增加数百字节的空间占用。</para>
+ <para>支持 System&nbsp;V 消息。 同样地, 这只会在内核中增加数百字节的空间占用。</para>
<note>
<para>&man.ipcs.1; 命令的 <option>-p</option> 选项可以显示出任何用到这些
- System V 机制的进程。</para>
+ System&nbsp;V 机制的进程。</para>
</note>
<programlisting>options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions</programlisting>
@@ -1071,7 +1073,7 @@ device ppc</programlisting>
<programlisting>#device puc</programlisting>
- <para>如果您有由 &man.puc.4 支持的 <quote>哑</quote>
+ <para>如果您有由 &man.puc.4; 支持的 <quote>哑</quote>
串行或并行 PCI 卡, 则应去掉这一行的注释。</para>
<programlisting># PCI Ethernet NICs.
@@ -1487,7 +1489,7 @@ device fwe # Ethernet over FireWire (non-standard!)</programl
为了完成这一点, 需要修改目录的名字:</para>
<screen>&prompt.root; <userinput>mv /boot/kernel /boot/kernel.bad</userinput>
-<userinput>mv /boot/<replaceable>kernel.good</replaceable> /boot/kernel</userinput></screen>
+&prompt.root; <userinput>mv /boot/<replaceable>kernel.good</replaceable> /boot/kernel</userinput></screen>
<para>对于 &os; 5.X 之前的版本, 正确的
<quote>解除</quote> <command>make</command>
diff --git a/zh_CN.GB2312/books/handbook/mail/chapter.sgml b/zh_CN.GB2312/books/handbook/mail/chapter.sgml
index 28c42a506b..704674ee18 100644
--- a/zh_CN.GB2312/books/handbook/mail/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/mail/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Chinese Documentation Project
- Original Revision: 1.120
+ Original Revision: 1.121
$FreeBSD$
-->
@@ -102,17 +102,17 @@
<listitem>
<para>正确地配置您的网络连接
(<xref linkend="advanced-networking">).</para>
- </listitem>
+ </listitem>
- <listitem>
+ <listitem>
<para>正确地为您的邮件服务器配置 DNS 信息
- (<xref linkend="advanced-networking">)。</para>
- </listitem>
+ (<xref linkend="network-servers">).</para>
+ </listitem>
- <listitem>
+ <listitem>
<para>知道如何安装第三方软件
(<xref linkend="ports">).</para></listitem>
- </itemizedlist>
+ </itemizedlist>
</sect1>
<sect1 id="mail-using">
diff --git a/zh_CN.GB2312/books/handbook/mirrors/chapter.sgml b/zh_CN.GB2312/books/handbook/mirrors/chapter.sgml
index 05b3034231..5693d1dd0b 100644
--- a/zh_CN.GB2312/books/handbook/mirrors/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/mirrors/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Chinese Documentation Project
- Original revision: 1.356
+ Original revision: 1.357
$FreeBSD$
-->
@@ -43,6 +43,14 @@
<itemizedlist>
<listitem>
<address>
+ <otheraddr>BSD-Systems</otheraddr>
+ Email: <email>info@bsd-systems.co.uk</email>
+ WWW: <otheraddr><ulink url="http://www.bsd-systems.co.uk"></ulink></otheraddr>
+ </address>
+ </listitem>
+
+ <listitem>
+ <address>
<otheraddr>Daemon News Mall</otheraddr>
<street>560 South State Street, Suite A2</street>
<city>Orem</city>, <state>UT</state> <postcode>84058</postcode>
@@ -2698,4 +2706,3 @@ doc/zh_*</screen>
sgml-parent-document: ("../book.sgml" "part" "appendix")
End:
-->
-
diff --git a/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml b/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml
index fa85b95a6a..cfea8fff63 100644
--- a/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.30
+ Original Revision: 1.31
$FreeBSD$
-->
@@ -18,7 +18,7 @@
<!-- 23 July 2004 -->
</chapterinfo>
- <title>Network Servers</title>
+ <title>网络服务器</title>
<sect1 id="network-servers-synopsis">
<title>概要</title>
@@ -159,7 +159,7 @@
<term>-l</term>
<listitem>
- <para>纪录成功的连接</para>
+ <para>记录成功的连接</para>
</listitem>
</varlistentry>
@@ -219,7 +219,7 @@
<para>当使用主机名方式时,如果IPV4和IPV6都会被绑定到服务,
那么,需要在<filename>/etc/inetd.conf</filename>.中为该服务
- 的每个对应协议添加一条记录。比如,一个TCP服务需要两条纪录,
+ 的每个对应协议添加一条记录。比如,一个TCP服务需要两条记录,
一条使用<literal>tcp4</literal>,另一条使用<literal>tcp6</literal>。</para>
</listitem>
</varlistentry>
@@ -627,7 +627,7 @@ mountd_flags="-r"</programlisting>
<para>紧接着的这个例子说明了如何输出一个文件系统,尽管具体设定和您
的环境以及网络配置有关。作为实例,为了输出<filename>/cdrom</filename>
到三个的例子机器,它们有同样域名(因此他们的域名不大对)或者在您的
- <filename>/etc/hosts</filename>文件里头有纪录。<option>-ro</option>
+ <filename>/etc/hosts</filename>文件里头有记录。<option>-ro</option>
标志将被输出的文件系统置为只读。由于这个标志,远程系统将无法在被输出
的文件系统上写入任何变动。</para>
@@ -1053,16 +1053,1174 @@ host mailhost {
</author>
</authorgroup>
</sect1info>
- <title>Domain Name System (DNS)</title>
+ <title>域名系统 (DNS)</title>
+
+ <sect2>
+ <title>纵览</title>
+ <indexterm><primary>BIND</primary></indexterm>
+
+ <para>FreeBSD 在默认情况下使用一个版本的 BIND (Berkeley
+ Internet Name Domain), 这是目前最为流行的 DNS 协议实现。
+ DNS 是一种协议, 可以通过它将域名同 IP 地址相互对应。
+ 例如, 查询 <hostid role="fqdn">www.FreeBSD.org</hostid>
+ 将得到 FreeBSD Project 的 web 服务器的 IP 地址, 而查询 <hostid
+ role="fqdn">ftp.FreeBSD.org</hostid> 则将得到响应的 FTP 机器的
+ IP 地址。 类似地, 也可以做相反的事情。 查询 IP
+ 地址可以得到其主机名。 当然, 完成 DNS
+ 查询并不需要在系统中运行域名服务器。
+ </para>
+
+ <indexterm><primary>DNS</primary></indexterm>
+ <para>DNS 在 Internet 上通过一组略显复杂的权威根域名服务器来组织,
+ 它的其余部分则由较小规模的域名服务器组成,
+ 这些服务器提供少量的域名解析服务, 并对域名信息进行缓存。
+ </para>
+
+ <para>
+ 这份文档介绍了 BIND 8.x, 它是 FreeBSD 先前版本所采用的稳定版本。
+ BIND 9.x 可以通过 <filename role="package">net/bind9</filename>
+ port 来安装到 FreeBSD 上, 而从 5.3-RELEASE 开始,
+ 它成为了基本系统的一部分。
+ </para>
+
+ <para>
+ RFC1034 和 RFC1035 定义了 DNS 协议。
+ </para>
+
+ <para>
+ 目前, BIND 由
+ Internet Software Consortium <ulink url="http://www.isc.org/"></ulink>
+ 维护。
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>术语</title>
+
+ <para>要理解这份文档, 需要首先了解一些相关的 DNS 术语。</para>
+
+ <indexterm><primary>解析器 (resolver)</primary></indexterm>
+ <indexterm><primary>反向 DNS (reverse DNS)</primary></indexterm>
+ <indexterm><primary>根域 (root zone)</primary></indexterm>
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <colspec colwidth="1*">
+ <colspec colwidth="3*">
+
+ <thead>
+ <row>
+ <entry>术语</entry>
+ <entry>定义</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>正向 DNS (Forward DNS)</entry>
+ <entry>将域名映射到 IP 地址</entry>
+ </row>
+
+ <row>
+ <entry>原点 (Origin)</entry>
+ <entry>表示特定域文件所在的域</entry>
+ </row>
+
+ <row>
+ <entry><application>named</application>, BIND, 域名服务器(name server)</entry>
+ <entry>在 FreeBSD 中 BIND 域名服务器软件包的常见叫法</entry>
+ </row>
+
+ <row>
+ <entry>解析器 (Resolver)</entry>
+ <entry>计算机用以向域名服务器查询域名信息的一个系统进程</entry>
+ </row>
+
+ <row>
+ <entry>反向 DNS (Reverse DNS)</entry>
+ <entry>与正向 DNS 相对; 将 IP 地址映射为主机名</entry>
+ </row>
+
+ <row>
+ <entry>根域</entry>
+
+ <entry>Internet 域层次的起点。 所有的域都在根域之下,
+ 类似文件系统中, 文件都在根目录之下那样。</entry>
+ </row>
+
+ <row>
+ <entry>域 (Zone)</entry>
+ <entry>独立的域, 子域, 或者由同一机构管理的 DNS 的一部分。</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <indexterm>
+ <primary>域</primary>
+ <secondary>例子</secondary>
+ </indexterm>
+
+ <para>域的例子:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para><hostid>.</hostid> 是根域。</para>
+ </listitem>
+ <listitem>
+ <para><hostid>org.</hostid> 是一个根域下的域。</para>
+ </listitem>
+ <listitem>
+ <para><hostid role="domainname">example.org</hostid> 是
+ <hostid>org.</hostid> 域之下的域。</para>
+ </listitem>
+ <listitem>
+ <para><hostid role="domainname">foo.example.org.</hostid> 是
+ <hostid role="domainname">example.org.</hostid> 域的子域。</para>
+ </listitem>
+ <listitem>
+ <para>
+ <hostid>1.2.3.in-addr.arpa</hostid> 是用于表达 <hostid
+ role="ipaddr">3.2.1.*</hostid> IP 地址空间之下所有
+ IP 地址的域。
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <para>如您所见, 域名中最细节的部分在它的左边。
+ 举例来说, <hostid
+ role="domainname">example.org.</hostid> 要比
+ <hostid>org.</hostid> 更小, 就像 <hostid>org.</hostid>
+ 要比根域更小一样。 主机名的格局和文件系统类似:
+ <filename>/dev</filename> 目录在根目录中, 等等。</para>
+
+
+ </sect2>
+
+ <sect2>
+ <title>运行域名服务器的理由</title>
+
+ <para>域名服务器通常会有两种形式: 权威域名服务器,
+ 以及缓存域名服务器。</para>
+
+ <para>下列情况需要有权威域名服务器:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>想要向全世界提供 DNS 信息,
+ 并对请求给出权威应答。</para>
+ </listitem>
+ <listitem>
+ <para>注册了类似 <hostid role="domainname">example.org</hostid>
+ 的域, 而需要将 IP 指定到其下的主机名上。</para>
+ </listitem>
+ <listitem>
+ <para>某个 IP 地址块需要反向 DNS 项 (IP 到主机名)。</para>
+ </listitem>
+ <listitem>
+ <para>需要备份服务器, 或常说的从 (slave) 服务器,
+ 在主服务器出现问题或无法访问时来应答查询请求。</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>下列情况需要有缓存域名服务器:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>本地的 DNS 服务器能够缓存,
+ 并比直接向外界的域名服务器请求更快地得到应答。</para>
+ </listitem>
+ <listitem>
+ <para>减少所需的总体网络流量 (DNS
+ 流量通常占全部 Internet 流量的 5% 或更多)。</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>当有人查询 <hostid
+ role="fqdn">www.FreeBSD.org</hostid> 时,解析器通常会向上级
+ ISP 的域名服务器发出请求, 并获得回应。 如果有本地的缓存 DNS
+ 服务器, 查询只有在第一次被缓存 DNS 服务器发到外部世界。
+ 其他的查询不会发向局域网外, 因为它们已经有在本地的缓存了。</para>
+
+ </sect2>
+
+ <sect2>
+ <title>DNS 如何运作</title>
+ <para>在 FreeBSD 中, BIND 服务程序被称为
+ <application>named</application>, 其原因显而易见。</para>
+
+ <informaltable frame="none">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>文件</entry>
+ <entry>描述</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><application>named</application></entry>
+ <entry>BIND 服务程序</entry>
+ </row>
+
+ <row>
+ <entry><command>ndc</command></entry>
+ <entry>域名服务控制程序</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/namedb</filename></entry>
+ <entry>BIND 存放域名信息的位置</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/namedb/named.conf</filename></entry>
+ <entry>域名服务配置文件</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>
+ 域文件通常被放在
+ <filename>/etc/namedb</filename>
+ 目录中, 它们包含域名服务器所提供的 DNS 域的信息。
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>启动 BIND</title>
+ <indexterm>
+ <primary>BIND</primary>
+ <secondary>启动</secondary>
+ </indexterm>
+ <para>
+ 由于 BIND 会在默认情况下安装, 因此配置它相对而言很简单。
+ </para>
+ <para>
+ 要确保 <application>named</application> 服务程序在引导时被自动启动,
+ 把下面的行加到 <filename>/etc/rc.conf</filename> 中:
+ </para>
+ <programlisting>named_enable="YES"</programlisting>
+ <para>要手工启动服务 (在完成配置之后):</para>
+ <screen>&prompt.root; <userinput>ndc start</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>配置文件</title>
+ <indexterm>
+ <primary>BIND</primary>
+ <secondary>配置文件</secondary>
+ </indexterm>
+ <sect3>
+ <title>使用 <command>make-localhost</command></title>
+ <para>一定要:
+ </para>
+ <screen>&prompt.root; <userinput>cd /etc/namedb</userinput>
+&prompt.root; <userinput>sh make-localhost</userinput></screen>
+ <para>以便创建正确的本地 DNS 反向解析域文件
+ <filename>/etc/namedb/localhost.rev</filename>。
+ </para>
+ </sect3>
+
+ <sect3>
+ <title><filename>/etc/namedb/named.conf</filename></title>
+
+ <programlisting>// &dollar;FreeBSD$
+//
+// Refer to the named(8) manual page for details. If you are ever going
+// to setup a primary server, make sure you've understood the hairy
+// details of how DNS is working. Even with simple mistakes, you can
+// break connectivity for affected parties, or cause huge amount of
+// useless Internet traffic.
+
+options {
+ directory "/etc/namedb";
+
+// In addition to the "forwarders" clause, you can force your name
+// server to never initiate queries of its own, but always ask its
+// forwarders only, by enabling the following line:
+//
+// forward only;
+
+// If you've got a DNS server around at your upstream provider, enter
+// its IP address here, and enable the line below. This will make you
+// benefit from its cache, thus reduce overall DNS traffic in the
+Internet.
+/*
+ forwarders {
+ 127.0.0.1;
+ };
+*/</programlisting>
+
+ <para>
+ 如注视所说, 要从上级的缓存中受益, 可以在此处启用
+ <literal>forwarders</literal>。 在一般情况下, 域名服务器会逐级地查询
+ Internet 来找到特定的域名服务器, 直到得到答案为止。
+ 启用这个将让它首先查询上级域名服务器 (或另外提供的域名服务器),
+ 从而从它们的缓存中得到结果。 如果上级域名服务器的负载很重,
+ 在更快的域名服务器上启用它将有助于改善服务品质。
+ </para>
+
+ <warning><para><hostid role="ipaddr">127.0.0.1</hostid>
+ <emphasis>不会</emphasis> 正常工作。
+ 一定要把地址改为您上级服务器的 IP 地址。</para>
+ </warning>
+
+ <programlisting> /*
+ * If there is a firewall between you and name servers you want
+ * to talk to, you might need to uncomment the query-source
+ * directive below. Previous versions of BIND always asked
+ * questions using port 53, but BIND 8.1 uses an unprivileged
+ * port by default.
+ */
+ // query-source address * port 53;
+
+ /*
+ * If running in a sandbox, you may have to specify a different
+ * location for the dumpfile.
+ */
+ // dump-file "s/named_dump.db";
+};
+
+// Note: the following will be supported in a future release.
+/*
+host { any; } {
+ topology {
+ 127.0.0.0/8;
+ };
+};
+*/
+
+// Setting up secondaries is way easier and the rough picture for this
+// is explained below.
+//
+// If you enable a local name server, don't forget to enter 127.0.0.1
+// into your /etc/resolv.conf so this server will be queried first.
+// Also, make sure to enable it in /etc/rc.conf.
+
+zone "." {
+ type hint;
+ file "named.root";
+};
+
+zone "0.0.127.IN-ADDR.ARPA" {
+ type master;
+ file "localhost.rev";
+};
+
+zone
+"0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.INT" {
+ type master;
+ file "localhost.rev";
+};
+
+// NB: Do not use the IP addresses below, they are faked, and only
+// serve demonstration/documentation purposes!
+//
+// Example secondary config entries. It can be convenient to become
+// a secondary at least for the zone where your own domain is in. Ask
+// your network administrator for the IP address of the responsible
+// primary.
+//
+// Never forget to include the reverse lookup (IN-ADDR.ARPA) zone!
+// (This is the first bytes of the respective IP address, in reverse
+// order, with ".IN-ADDR.ARPA" appended.)
+//
+// Before starting to setup a primary zone, better make sure you fully
+// understand how DNS and BIND works, however. There are sometimes
+// unobvious pitfalls. Setting up a secondary is comparably simpler.
+//
+// NB: Don't blindly enable the examples below. :-) Use actual names
+// and addresses instead.
+//
+// NOTE!!! FreeBSD runs BIND in a sandbox (see named_flags in rc.conf).
+// The directory containing the secondary zones must be write accessible
+// to BIND. The following sequence is suggested:
+//
+// mkdir /etc/namedb/s
+// chown bind:bind /etc/namedb/s
+// chmod 750 /etc/namedb/s</programlisting>
+
+ <para>For more information on running BIND in a sandbox, see
+ <link linkend="network-named-sandbox">Running named in a sandbox</link>.
+ </para>
+
+ <programlisting>/*
+zone "example.com" {
+ type slave;
+ file "s/example.com.bak";
+ masters {
+ 192.168.1.1;
+ };
+};
+
+zone "0.168.192.in-addr.arpa" {
+ type slave;
+ file "s/0.168.192.in-addr.arpa.bak";
+ masters {
+ 192.168.1.1;
+ };
+};
+*/</programlisting>
+ <para>在 <filename>named.conf</filename> 中, 这是一些转发用的从域以及反向域的例子。</para>
+
+ <para>对于每一个新域, 域对应的项必须加到
+ <filename>named.conf</filename> 中。</para>
+
+ <para>例如, 最简单的用于
+ <hostid role="domainname">example.org</hostid> 域的条目类似下面的样子:</para>
+
+ <programlisting>zone "example.org" {
+ type master;
+ file "example.org";
+};</programlisting>
+
+ <para>这是一个主域, 它由 <option>type</option> 语句标识出来,
+ 而信息则在
+ <filename>/etc/namedb/example.org</filename> 域文件中,
+ 这是由 <option>file</option> 语句指定的。</para>
+
+ <programlisting>zone "example.org" {
+ type slave;
+ file "example.org";
+};</programlisting>
+
+ <para>在从域的例子中, 域的信息从该域的某个主服务器传送过来,
+ 并保存在指定的文件中。 如果主服务器死掉了或不可达,
+ 从域名服务器将使用这些传过来的域信息, 从而完成应答。</para>
+ </sect3>
+
+ <sect3>
+ <title>域信息文件</title>
+ <para>
+ 以下是一个用于 <hostid
+ role="domainname">example.org</hostid> 域的主域文件 (保存为
+ <filename>/etc/namedb/example.org</filename>):
+ </para>
+
+ <programlisting>$TTL 3600
+
+example.org. IN SOA ns1.example.org. admin.example.org. (
+ 5 ; Serial
+ 10800 ; Refresh
+ 3600 ; Retry
+ 604800 ; Expire
+ 86400 ) ; Minimum TTL
+
+; DNS Servers
+@ IN NS ns1.example.org.
+@ IN NS ns2.example.org.
+
+; Machine Names
+localhost IN A 127.0.0.1
+ns1 IN A 3.2.1.2
+ns2 IN A 3.2.1.3
+mail IN A 3.2.1.10
+@ IN A 3.2.1.30
+
+; Aliases
+www IN CNAME @
+
+; MX Record
+@ IN MX 10 mail.example.org.</programlisting>
+
+ <para>
+ 请注意以 <quote>.</quote> 结尾的主机名是全称主机名, 而结尾没有
+ <quote>.</quote> 的则是相对于原点的主机名。 例如,
+ <literal>www</literal> 将被转换为
+ <literal>www.<replaceable>原点</replaceable></literal>.
+ 在这个假想的域信息文件中, 我们的原点是
+ <hostid>example.org.</hostid>, 因此 <literal>www</literal>
+ 将被当作 <hostid>www.example.org.</hostid>。
+ </para>
+
+ <para>
+ 域信息文件的格式如下:
+ </para>
+ <programlisting>记录名 IN 记录类型 值</programlisting>
+
+ <indexterm>
+ <primary>DNS</primary>
+ <secondary>记录</secondary>
+ </indexterm>
+ <para>
+ 最常用的 DNS 记录:
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>SOA</term>
+
+ <listitem><para>域权威开始</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>NS</term>
+
+ <listitem><para>权威域名服务器</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>A</term>
+
+ <listitem><para>主机地址</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>CNAME</term>
+
+ <listitem><para>别名对应的正规名称</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>MX</term>
+
+ <listitem><para>邮件传递服务器</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>PTR</term>
+
+ <listitem><para>域名指针 (用于反向 DNS)
+ </para></listitem>
+ </varlistentry>
+ </variablelist>
+
+ <programlisting>
+example.org. IN SOA ns1.example.org. admin.example.org. (
+ 5 ; Serial
+ 10800 ; Refresh after 3 hours
+ 3600 ; Retry after 1 hour
+ 604800 ; Expire after 1 week
+ 86400 ) ; Minimum TTL of 1 day</programlisting>
+
+
+
+ <variablelist>
+ <varlistentry>
+ <term><hostid role="domainname">example.org.</hostid></term>
+
+ <listitem><para>域名, 同时也是这个域信息文件的原点。</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><hostid role="fqdn">ns1.example.org.</hostid></term>
+
+ <listitem><para>该域的主/权威域名服务器。</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>admin.example.org.</literal></term>
+
+ <listitem><para>此域的负责人的电子邮件地址,
+ 其中 <quote>@</quote> 被换掉了。
+ (<email>admin@example.org</email> 对应
+ <literal>admin.example.org</literal>)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>5</literal></term>
+
+ <listitem><para>文件的序号。 每次修改域文件时都必须增加这个数字。
+ 现今, 许多管理员会考虑使用
+ <literal>yyyymmddrr</literal> 这样的格式来表示序号。
+ <literal>2001041002</literal> 通常表示上次修改于
+ 04/10/2001, 而后面的
+ <literal>02</literal> 则表示在那天的第几次修改。
+ 序号非常重要, 它用于通知从域服务器更新数据。</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <programlisting>
+@ IN NS ns1.example.org.</programlisting>
+
+ <para>
+ 这是一个 NS 项。 每个准备提供权威应答的服务器都必须有一个对应项。
+ 这里的 <literal>@</literal> 表示
+ <hostid role="domainname">example.org.</hostid>。
+ <literal>@</literal> 会被理解为原点。
+ </para>
+
+ <programlisting>
+localhost IN A 127.0.0.1
+ns1 IN A 3.2.1.2
+ns2 IN A 3.2.1.3
+mail IN A 3.2.1.10
+@ IN A 3.2.1.30</programlisting>
+
+ <para>
+ A 记录代表及其名。 如上面看到的,
+ <hostid role="fqdn">ns1.example.org</hostid> 将解析为
+ <hostid role="ipaddr">3.2.1.2</hostid>。 在此再次使用了原点符,
+ <literal>@</literal>, 它表示
+ <hostid role="domainname">example.org</hostid> 应解析为
+ <hostid role="ipaddr">3.2.1.30</hostid>。
+ </para>
+
+ <programlisting>
+www IN CNAME @</programlisting>
+
+ <para>
+ 正规名记录通常用于对某台机器的别名给出对应的正式名字。
+ 在这个例子中, <hostid>www</hostid> 是名字为原点, 或者说
+ <hostid role="domainname">example.org</hostid>
+ (<hostid role="ipaddr">3.2.1.30</hostid>) 那台机器的别名。
+ CNAMEs 可以用来提供主机的别名, 或将同一名字在多台机器上作轮询。
+ </para>
+
+ <indexterm>
+ <primary>MX 记录</primary>
+ </indexterm>
+
+ <programlisting>
+@ IN MX 10 mail.example.org.</programlisting>
+
+ <para>
+ MX 记录表示哪个邮件服务器负责接收发到这个域的邮件。
+ <hostid role="fqdn">mail.example.org</hostid> 是邮件服务器的主机名,
+ 而 10 则是它的优先级。
+ </para>
+
+ <para>
+ 可以有多台邮件服务器, 其优先级分别是 3, 2,
+ 1。 向 <hostid
+ role="domainname">example.org</hostid> 进行投递的邮件服务器首先会尝试优先级最高
+ (数字最小) 的 MX, 然后是较低优先级的, 等等, 直到成功地投递了邮件为止。
+ </para>
+
+ <para>
+ 对于 in-addr.arpa 域名信息文件 (反向 DNS), 使用了同样的格式,
+ 只是 PTR 项代替了 A 或 CNAME 的位置。
+ </para>
+
+ <programlisting>$TTL 3600
+
+1.2.3.in-addr.arpa. IN SOA ns1.example.org. admin.example.org. (
+ 5 ; Serial
+ 10800 ; Refresh
+ 3600 ; Retry
+ 604800 ; Expire
+ 3600 ) ; Minimum
+
+@ IN NS ns1.example.org.
+@ IN NS ns2.example.org.
+
+2 IN PTR ns1.example.org.
+3 IN PTR ns2.example.org.
+10 IN PTR mail.example.org.
+30 IN PTR example.org.</programlisting>
+
+ <para>这个文件给出了上述假想域中 IP 地址到域名的映射关系。</para>
+ </sect3>
+ </sect2>
+
+ <sect2>
+ <title>缓存域名服务器</title>
+ <indexterm>
+ <primary>BIND</primary>
+ <secondary>缓存域名服务器</secondary>
+ </indexterm>
+
+ <para>缓存域名服务器是对任何域都不提供权威解析的域名服务器。
+ 它自己简单地完成查询, 并记住这些查询以备后续使用。
+ 要建立这样的服务器, 只需像平时一样配置一个域名服务器,
+ 而不配置域就可以了。</para>
+ </sect2>
<sect2 id="network-named-sandbox">
- <title>Running <application>named</application> in a Sandbox ** 翻译进行中 **</title>
+ <title>在沙盒中运行 <application>named</application></title>
<indexterm>
<primary>BIND</primary>
- <secondary>running in a sandbox</secondary>
+ <secondary>在沙盒中运行</secondary>
</indexterm>
- <para></para>
+ <indexterm>
+ <primary><command>chroot</command></primary>
+ </indexterm>
+ <para>要更安全地运行 &man.named.8;, 应该以非特权用户来运行它,
+ 并配置为 &man.chroot.8; 到一个沙盒目录中。
+ 这使得 <application>named</application> 服务无法访问任何沙盒外面的东西。
+ 假如 <application>named</application> 被攻破,
+ 这将减少它所能带来的破坏。 默认情况下, FreeBSD 提供了名为
+ <groupname>bind</groupname> 的用户和组来完成这样的目的。</para>
+
+ <note><para>许多人建议不这样做, 而
+ <application>named</application> 配置为 <command>chroot</command>,
+ 您应该在一个 &man.jail.8; 中运行 <application>named</application>。
+ 这一节并不涵盖这种情形。</para>
+ </note>
+
+ <para>由于 <application>named</application> 没有办法访问沙盒外面的任何东西
+ (例如共享库, 日志 socket 等等), 您需要做许多事情来让
+ <application>named</application> 正常工作。 下面的清单假定沙盒是
+ <filename>/etc/namedb</filename> 而您没有事先改过这个目录中的内容。
+ 以 <username>root</username> 的身份完成下列步骤:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>创建 <application>named</application>
+ 需要访问的所有目录:</para>
+
+ <screen>&prompt.root; <userinput>cd /etc/namedb</userinput>
+&prompt.root; <userinput>mkdir -p bin dev etc var/tmp var/run master slave</userinput>
+&prompt.root; <userinput>chown bind:bind slave var/*</userinput><co id="chown-slave"></screen>
+
+
+
+ <calloutlist>
+ <callout arearefs="chown-slave">
+ <para><application>named</application> 只需要写这些目录,
+ 这也是我们赋予它的全部权限。</para>
+ </callout>
+ </calloutlist>
+ </listitem>
+
+ <listitem>
+ <para>重新组织基本的域和配置文件:</para>
+ <screen>&prompt.root; <userinput>cp /etc/localtime etc</userinput><co id="localtime">
+&prompt.root; <userinput>mv named.conf etc && ln -sf etc/named.conf</userinput>
+&prompt.root; <userinput>mv named.root master</userinput>
+<!-- I don't like this next bit -->
+&prompt.root; <userinput>sh make-localhost && mv localhost.rev localhost-v6.rev master</userinput>
+&prompt.root; <userinput>cat > master/named.localhost
+$ORIGIN localhost.
+$TTL 6h
+@ IN SOA localhost. postmaster.localhost. (
+ 1 ; serial
+ 3600 ; refresh
+ 1800 ; retry
+ 604800 ; expiration
+ 3600 ) ; minimum
+ IN NS localhost.
+ IN A 127.0.0.1
+^D</userinput></screen>
+
+ <calloutlist>
+ <callout arearefs="localtime">
+ <para>这使得 <application>named</application> 能够将正确的时间传递给
+ &man.syslogd.8;。</para>
+ </callout>
+ </calloutlist>
+ </listitem>
+
+ <listitem>
+
+ <indexterm><primary>syslog</primary></indexterm>
+ <indexterm><primary>日志</primary>
+ <secondary>DNS</secondary></indexterm>
+
+ <para>如果您在运行 &os; 在 4.9-RELEASE 之前的版本, 需要联编一个静态连接的
+ <application>named-xfer</application>, 并将其复制到沙盒中:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/lib/libisc</userinput>
+&prompt.root; <userinput>make cleandir && make cleandir && make depend && make all</userinput>
+&prompt.root; <userinput>cd /usr/src/lib/libbind</userinput>
+&prompt.root; <userinput>make cleandir && make cleandir && make depend && make all</userinput>
+&prompt.root; <userinput>cd /usr/src/libexec/named-xfer</userinput>
+&prompt.root; <userinput>make cleandir && make cleandir && make depend && make NOSHARED=yes all</userinput>
+&prompt.root; <userinput>cp named-xfer /etc/namedb/bin && chmod 555 /etc/namedb/bin/named-xfer</userinput><co id="clean-cruft"></screen>
+
+ <para>在把静态连接的
+ <command>named-xfer</command> 装好之后需要清理一下,
+ 以免将过时的库或程序留在您的源代码副本中:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/lib/libisc</userinput>
+&prompt.root; <userinput>make cleandir</userinput>
+&prompt.root; <userinput>cd /usr/src/lib/libbind</userinput>
+&prompt.root; <userinput>make cleandir</userinput>
+&prompt.root; <userinput>cd /usr/src/libexec/named-xfer</userinput>
+&prompt.root; <userinput>make cleandir</userinput></screen>
+
+ <calloutlist>
+ <callout arearefs="clean-cruft">
+ <para>据说这一步有时会失败。 如果您遇到这样的问题, 执行下面的命令:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src && make cleandir && make cleandir</userinput></screen>
+
+ <para>并删除 <filename>/usr/obj</filename> 目录:</para>
+
+ <screen>&prompt.root; <userinput>rm -fr /usr/obj && mkdir /usr/obj</userinput></screen>
+
+ <para>这将把任何 <quote>垃圾</quote> 从您的源代码目录中删除,
+ 而后续工作将得以正常进行。</para>
+ </callout>
+ </calloutlist>
+
+ <para>如果您运行 &os; 的 4.9-RELEASE 或更新的版本, 则默认情况下
+ <filename>/usr/libexec</filename> 中的 <command>named-xfer</command>
+ 副本已经是静态连接的了。 您可以简单地把它用 &man.cp.1; 复制到沙盒中。</para>
+ </listitem>
+
+ <listitem>
+ <para>做一个 <application>named</application>
+ 能够看到并写入的 <filename>dev/null</filename>:</para>
+
+ <screen>&prompt.root; <userinput>cd /etc/namedb/dev && mknod null c 2 2</userinput>
+&prompt.root; <userinput>chmod 666 null</userinput></screen>
+ </listitem>
+
+ <listitem>
+ <para>将 <filename>/var/run/ndc</filename> 符号链接到
+ <filename>/etc/namedb/var/run/ndc</filename>:</para>
+
+ <screen>&prompt.root; <userinput>ln -sf /etc/namedb/var/run/ndc /var/run/ndc</userinput></screen>
+
+ <note>
+ <para>这主要是避免每次都不得不指定 &man.ndc.8;
+ <option>-c</option> 的选项。 由于
+ <filename>/var/run</filename> 会在每次启动时删除,
+ 如果您发现这是您在每次启动时都需要做的事情,
+ 则可以在 <username>root</username> 的
+ <filename>crontab</filename> 中增加相应的条目, 并使用
+ <option>@reboot</option> 选项。 参见 &man.crontab.5;
+ 以了解更多细节。</para>
+ </note>
+
+ </listitem>
+
+ <listitem>
+
+ <indexterm><primary>syslog</primary></indexterm>
+ <indexterm><primary>日志</primary>
+ <secondary>named</secondary></indexterm>
+
+ <para>配置 &man.syslogd.8; 来创建一个 <application>named</application>
+ 可以写的 <devicename>log</devicename> socket。 要完成它, 需要将
+ <literal>-l /etc/namedb/dev/log</literal> 加到
+ <filename>/etc/rc.conf</filename> 的
+ <varname>syslogd_flags</varname> 变量中。</para>
+ </listitem>
+
+ <listitem>
+
+ <indexterm><primary><command>chroot</command></primary></indexterm>
+
+ <para>启动 <application>named</application> 并让它自动地把自己
+ <command>chroot</command> 到沙盒中, 方法是把下面的内容加到
+ <filename>/etc/rc.conf</filename>:</para>
+
+ <programlisting>named_enable="YES"
+named_flags="-u bind -g bind -t /etc/namedb /etc/named.conf"</programlisting>
+
+ <note>
+ <para>请注意配置文件
+ <replaceable>/etc/named.conf</replaceable> 是以
+ <emphasis>相对于沙盒</emphasis> 的完整路径来指定的,
+ 例如上面那一行, 文件所在的目录实际上是
+ <filename>/etc/namedb/etc/named.conf</filename>。</para>
+ </note>
+ </listitem>
+ </itemizedlist>
+
+ <para>下一步是编辑
+ <filename>/etc/namedb/etc/named.conf</filename> 让
+ <application>named</application> 直到需要加载哪些域,
+ 以及它们在磁盘上的位置。 您可以用注释掉的那个例子
+ (没有明确地注释掉的哪些和不在沙盒中运行 DNS 服务器时的配置无异):</para>
+
+ <programlisting>options {
+ directory "/";<co id="directory">
+ named-xfer "/bin/named-xfer";<co id="named-xfer">
+ version ""; // Don't reveal BIND version
+ query-source address * port 53;
+};
+// ndc control socket
+controls {
+ unix "/var/run/ndc" perm 0600 owner 0 group 0;
+};
+// Zones follow:
+zone "localhost" IN {
+ type master;
+ file "master/named.localhost";<co id="master">
+ allow-transfer { localhost; };
+ notify no;
+};
+zone "0.0.127.in-addr.arpa" IN {
+ type master;
+ file "master/localhost.rev";
+ allow-transfer { localhost; };
+ notify no;
+};
+zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.int" {
+ type master;
+ file "master/localhost-v6.rev";
+ allow-transfer { localhost; };
+ notify no;
+};
+zone "." IN {
+ type hint;
+ file "master/named.root";
+};
+zone "private.example.net" in {
+ type master;
+ file "master/private.example.net.db";
+ allow-transfer { 192.168.10.0/24; };
+};
+zone "10.168.192.in-addr.arpa" in {
+ type slave;
+ masters { 192.168.10.2; };
+ file "slave/192.168.10.db";<co id="slave">
+};</programlisting>
+
+ <calloutlist>
+ <callout arearefs="directory">
+ <para>
+ <literal>directory</literal> 语句被指定为
+ <filename>/</filename>, 因为所有的
+ <application>named</application> 需要在这个文件中
+ (这相当于在 <quote>普通</quote> 模式下运行时的
+ <filename>/etc/namedb</filename>)。</para>
+ </callout>
+
+ <callout arearefs="named-xfer">
+ <para>指定到 <command>named-xfer</command> 执行文件的完整路径 (相对
+ <application>named</application> 的参照系)。 这是必须的步骤,
+ 因为 <application>named</application> 在默认情况下会从
+ <filename>/usr/libexec</filename> 查找 <command>named-xfer</command>。</para>
+ </callout>
+ <callout arearefs="master"><para>指定文件名 (相对于前面的
+ <literal>directory</literal> 语句指定的目录),
+ <application>named</application> 将在这里查找域信息文件。</para>
+ </callout>
+ <callout arearefs="slave"><para>指定文件名 (相对于前面的
+ <literal>directory</literal> 语句指定的目录),
+ <application>named</application> 将在这里写入成功地从主服务器拿到的域信息文件副本。
+ 这使为什么我们在前面的步骤中将 <filename>slave</filename> 的属主改为
+ <groupname>bind</groupname> 的原因。</para>
+ </callout>
+ </calloutlist>
+
+ <para>完成这些配置之后, 您可以重新启动服务器, 或重启
+ &man.syslogd.8; 服务并启动 &man.named.8;, 以确认
+ <varname>syslogd_flags</varname> 和
+ <varname>named_flags</varname> 的新值生效了。
+ 现在您应该已经在沙盒中运行 <application>named</application> 了!</para>
+
+ </sect2>
+
+ <sect2>
+ <title>安全</title>
+
+ <para>尽管 BIND 是最为常用的 DNS 实现, 但它总是有一些安全问题。
+ 时常会有人发现一些可能的甚至可以利用的安全漏洞。
+ </para>
+
+ <para>
+ 经常阅读 <ulink
+ url="http://www.cert.org/">CERT</ulink> 的安全公告并订阅
+ &a.security-notifications; 会是一个帮助您时刻了解最新
+ Internet 和 FreeBSD 安全问题的好习惯。
+ </para>
+
+ <tip><para>如果出现了问题, 将代码升级到最新版本并重新联编
+ <application>named</application> 不会带来任何麻烦。</para></tip>
+ </sect2>
+
+ <sect2>
+ <title>进一步阅读</title>
+
+ <para>BIND/<application>named</application> 联机手册:
+ &man.ndc.8; &man.named.8; &man.named.conf.5;</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink
+ url="http://www.isc.org/products/BIND/">官方的 ISC BIND
+ 页面</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="http://www.nominum.com/getOpenSourceResource.php?id=6">
+ BIND FAQ</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para><ulink url="http://www.oreilly.com/catalog/dns4/">O'Reilly
+ DNS 和 BIND 第4版</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.isi.edu/in-notes/rfc1034.txt">RFC1034
+ - 域名 - 概念和工具</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para><ulink
+ url="ftp://ftp.isi.edu/in-notes/rfc1035.txt">RFC1035
+ - 域名 - 实现及其标准</ulink></para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+ </sect1>
+
+ <sect1 id="network-bind9">
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Tom</firstname>
+ <surname>Rhodes</surname>
+ <contrib>撰写者 </contrib>
+ </author>
+ </authorgroup>
+ </sect1info>
+ <title><acronym>BIND</acronym>9 和 &os;</title>
+
+<!-- This section is here to get users up with BIND9 configurations! It
+ does not cover the terminology, theoretical discussion (why run a name
+ server) or the further reading which is still in the previous section.
+ I did things this way to avoid repetition of content and obviously we
+ cannot just remove the previous section since other supported releases
+ use it. When the previous section is removed then those comments
+ should be moved here. // Tom Rhodes -->
+
+ <indexterm><primary>bind9</primary>
+ <secondary>安装</secondary></indexterm>
+
+ <para>&os;&nbsp;5.3 将
+ <acronym>BIND</acronym>9 <acronym>DNS</acronym> 服务软件引入了发行包。
+ 与此同时, 这带来了新的安全特性, 文件布局, 以及自动的
+ &man.chroot.8; 配置。 这一节包含两部分,
+ 第一部分讨论了新特性以及如何配置它们, 而后一部分则介绍了升级的步骤,
+ 它将帮您顺利地迁移到 &os;&nbsp;5.3。 从此开始, 服务器将被简写为
+ &man.named.8; 而不是 <acronym>BIND</acronym>。
+ 这一节跳过了前一节中所介绍的术语以及一些理论上的讨论, 因此,
+ 建议您阅读前一节然后再看这一节。</para>
+
+ <para><command>named</command> 的配置文件目前存放在
+ <filename role="directory">/var/named/etc/namedb/</filename>,
+ 在使用前需要进行一些修改。 这也是绝大多数配置所在的位置。</para>
+
+ <sect2>
+ <title>配置主域</title>
+
+ <para>要配置主域您需要进入
+ <filename role="directory">/var/named/etc/namedb/</filename>
+ 并执行下面的命令:</para>
+
+ <screen>&prompt.root; <userinput>sh make-localhost</userinput></screen>
+
+ <para>如果一切正常, 则将在
+ <filename role="directory">master</filename> 目录中建立两个新的文件。
+ 它们的文件名是 <filename>localhost.rev</filename> 和
+ <filename>localhost-v6.rev</filename>, 分别用来解析本地的名字和
+ <acronym>IPv6</acronym> 配置中的名字。 作为默认的配置文件,
+ 它们已经在 <filename>named.conf</filename> 文件中进行了定义。</para>
+ </sect2>
+
+ <sect2>
+ <title>配置从域</title>
+
+ <para>可以通过配置从域来提供额外的域或子域的解析。
+ 多数情况下, <filename>master/localhost.rev</filename>
+ 可以复制到 <filename role="directory">slave</filename>
+ 中并进行修改。 一旦完成, 这些文件就可以加入到
+ <filename>named.conf</filename> 类似
+ <hostid role="fqdn">example.com</hostid> 的配置中:</para>
+
+ <programlisting>zone "example.com" {
+ type slave;
+ file "slave/example.com";
+ masters {
+ 10.0.0.1;
+ };
+};
+
+zone "0.168.192.in-addr.arpa" {
+ type slave;
+ file "slave/0.168.192.in-addr.arpa";
+ masters {
+ 10.0.0.1;
+ };
+};</programlisting>
+
+ <para>请注意在这个例子中, 主服务器的
+ <acronym>IP</acronym> 地址指明了我们要从哪里把域传过来;
+ 那台服务器本身并不一定要作为对外的
+ <acronym>DNS</acronym> 服务器来用。</para>
+ </sect2>
+
+ <sect2>
+ <title>系统的初始配置</title>
+
+ <para>为了让 <command>named</command> 服务能够在系统启动时自动加载,
+ 需要把下面的选项加到 <filename>rc.conf</filename> 文件中:</para>
+
+ <programlisting>named_enable="YES"</programlisting>
+
+ <para>尽管还有其他的一些可用选项, 这是运行域名服务器所需要的最小配置。
+ 请参考 &man.rc.conf.5; 联机手册了解更多的选项。 在
+ <filename>rc.conf</filename> 中进行了这些配置之后,
+ 可以通过下面的命令行来启动 <command>named</command>:</para>
+
+ <screen>&prompt.root; <userinput>/etc/rc.d/named start</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title><acronym>BIND</acronym>9 的安全</title>
+
+ <para>尽管 &os; 会自动地将 <command>named</command> 放到一个
+ &man.chroot.8; 环境中, 您仍然可以采取一些更严密的措施来防止可能的针对
+ <acronym>DNS</acronym> 服务的攻击。
+
+ <sect3>
+ <title>查询访问控制表</title>
+
+ <para>查询访问控制表可以用来限制对于域的查询。
+ 这些配置通过在 <literal>acl</literal> 语句中列出的
+ <acronym>IP</acronym> 地址来发挥作用。 要允许一个子网查询
+ example.org 中的主机, 可以做下面的定义:</para>
+
+ <programlisting>acl "example.com" {
+ 192.168.0.0/24;
+};
+
+zone "example.com" {
+ type slave;
+ file "slave/example.com";
+ masters {
+ 10.0.0.1;
+ };
+ allow-query { example.com; };
+};
+
+zone "0.168.192.in-addr.arpa" {
+ type slave;
+ file "slave/0.168.192.in-addr.arpa";
+ masters {
+ 10.0.0.1;
+ };
+ allow-query { example.com; };
+};</programlisting>
+ </sect3>
+
+ <sect3>
+ <title>限制版本查询</title>
+
+ <para>允许查询 <acronym>DNS</acronym> 服务的版本,
+ 可能会给攻击者敞开方便之门。
+ 心存恶意的用户能够利用这一信息找到存在已知漏洞的服务器,
+ 并对其实施攻击。 在 <filename>named.conf</filename>
+ 的 <literal>options</literal> 小节中可以伪造版本字符串:</para>
+
+ <programlisting>options {
+ directory "/etc/namedb";
+ pid-file "/var/run/named/pid";
+ dump-file "/var/dump/named_dump.db";
+ statistics-file "/var/stats/named.stats";
+ version "None of your business";</programlisting>
+ </sect3>
+<!-- Here is where I stopped for now
+ <sect3>
+ <title>Authentication</title>
+
+ <para> ... </para>
+
+-->
</sect2>
</sect1>
diff --git a/zh_CN.GB2312/books/handbook/pgpkeys/chapter.sgml b/zh_CN.GB2312/books/handbook/pgpkeys/chapter.sgml
index 97b5c70cfe..9290602717 100644
--- a/zh_CN.GB2312/books/handbook/pgpkeys/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/pgpkeys/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.242
+ Original Revision: 1.246
$FreeBSD$
-->
<!--
@@ -193,6 +193,11 @@
&pgpkey.brooks;
</sect2>
+ <sect2 id="pgpkey-gnn">
+ <title>&a.gnn;</title>
+ &pgpkey.gnn;
+ </sect2>
+
<sect2 id="pgpkey-pjd">
<title>&a.pjd;</title>
&pgpkey.pjd;
@@ -323,6 +328,11 @@
&pgpkey.mikeh;
</sect2>
+ <sect2 id="pgpkey-mheinen">
+ <title>&a.mheinen;</title>
+ &pgpkey.mheinen;
+ </sect2>
+
<sect2 id="pgpkey-ghelmer">
<title>&a.ghelmer;</title>
&pgpkey.ghelmer;
@@ -498,7 +508,7 @@
&pgpkey.dwmalone;
</sect2>
- <sect2>
+ <sect2 id="pgpkey-kwm">
<title>&a.kwm;</title>
&pgpkey.kwm;
</sect2>
@@ -823,6 +833,11 @@
&pgpkey.viny;
</sect2>
+ <sect2 id="pgpkey-ups">
+ <title>&a.ups;</title>
+ &pgpkey.ups;
+ </sect2>
+
<sect2 id="pgpkey-nectar">
<title>&a.nectar;</title>
&pgpkey.nectar;
diff --git a/zh_CN.GB2312/books/handbook/security/chapter.sgml b/zh_CN.GB2312/books/handbook/security/chapter.sgml
index e4f9313acc..49ba535915 100644
--- a/zh_CN.GB2312/books/handbook/security/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/security/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.225
+ Original Revision: 1.228
$FreeBSD$
-->
@@ -1265,7 +1265,7 @@ permit port ttyd0</programlisting>
所启动的服务的连接请求。 在基本配置之后将讨论更复杂的情况。</para>
<para>基本配置的形式通常是
- <literal>服务 : 主机选项 : 动作</literal>。
+ <literal>服务 : 地址 : 动作</literal>。
这里 <literal>服务</literal> 是从
<command>inetd</command> 启动的服务程序的名字。 而
<literal>地址</literal> 可以使任何有效的主机名、 一个
@@ -2724,8 +2724,8 @@ jdoe@example.org</screen>
any</literal> 从而避免了将自己锁在外面的尴尬局面。</para>
</warning>
- <para>目前一共有五个与 IPFW 有关的内核选项:</para>
-
+ <para>目前一共有四个与 IPFW 有关的内核选项:</para>
+
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
@@ -2776,9 +2776,9 @@ jdoe@example.org</screen>
</listitem>
</varlistentry>
</variablelist>
-
+
<note><para>先前版本的 FreeBSD 包括了一个
- <literal>IPFIREWALL_ACCT</literal> 选项。 它现在已经过时了,
+ <literal>IPFIREWALL_ACCT</literal> 选项。 它现在已经过时了,
因为新的防火墙代码已经包括了审计机制。</para>
</note>
</sect2>
@@ -3511,7 +3511,7 @@ An optional company name []:<userinput><replaceable>Another Name</replaceable></
<para>上述步骤将在当前目录中生成两个新文件:
一个是权威发证机构的签名文件, <filename>myca.key</filename> 另一个则是证书本身,
<filename>new.crt</filename>。 这些文件应放到一个目录中, 通常推荐放在
- <filename role="directory">/etc</filename> 下, 且只能被 root 读取。
+ <filename role="directory">/etc</filename> 下, 且只能被 <username>root</username> 读取。
0600 这样的权限应该就足够了, 您可以用 <command>chmod</command> 来完成修改。</para>
</sect2>
diff --git a/zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml b/zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml
index 00bdbda953..de65efba07 100644
--- a/zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml
@@ -1833,7 +1833,7 @@ raisechar=^^</programlisting>
例如, 如果您从内部控制台启动, 您可以使用 <option>-h</option>
来直接使用启动引导器和内核来使用串口作为它的控制台设备。
另外, 如果您从串口启动, 您可以使用 <option>-h</option>
- 来告诉启动引导器和内核使用显示设备作为控制台。/para>
+ 来告诉启动引导器和内核使用显示设备作为控制台。</para>
</listitem>
</varlistentry>
diff --git a/zh_CN.GB2312/books/handbook/users/chapter.sgml b/zh_CN.GB2312/books/handbook/users/chapter.sgml
index 5260329caf..4bcd03f5e9 100644
--- a/zh_CN.GB2312/books/handbook/users/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/users/chapter.sgml
@@ -1,7 +1,7 @@
<!--
The FreeBSD Chinese Documentation Project
- Original Revision: 1.47
+ Original Revision: 1.48
$FreeBSD$
-->
@@ -564,7 +564,7 @@ Other information:</screen>
NIS 是自动支持的,
不一定要在命令前指定 <literal>yp</literal>。
如果这让您有点不太明白, 不必担心,
- NIS 将在 <xref linkend="advanced-networking"> 介绍。</para>
+ NIS 将在 <xref linkend="network-servers"> 介绍。</para>
</note>
</sect2>
<sect2 id="users-passwd">
diff --git a/zh_CN.GB2312/books/handbook/x11/chapter.sgml b/zh_CN.GB2312/books/handbook/x11/chapter.sgml
index b61d47af4d..2e5e1a6514 100644
--- a/zh_CN.GB2312/books/handbook/x11/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/x11/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.152
+ Original Revision: 1.154
$FreeBSD$
-->
@@ -461,7 +461,7 @@
<indexterm><primary>微调 X11</primary></indexterm>
- <para>接下来是调整 <filename>xorg.conf.new</filename> (或 <filename>XF86Config.new</filename>, 如果运行 <application>&xfree86</application> 的话)
+ <para>接下来是调整 <filename>xorg.conf.new</filename> (或 <filename>XF86Config.new</filename>, 如果运行 <application>&xfree86;</application> 的话)
配置文件并作测试。 用文本编辑器如
&man.emacs.1; 或 &man.ee.1; 打开这个文件。 要做的第一件事是为当前系统的显示器设置刷新率。
这些值包括垂直和水平的同步频率。 把它们加到