aboutsummaryrefslogtreecommitdiff
path: root/zh_CN.GB2312/books
diff options
context:
space:
mode:
Diffstat (limited to 'zh_CN.GB2312/books')
-rw-r--r--zh_CN.GB2312/books/handbook/ports/chapter.sgml124
1 files changed, 70 insertions, 54 deletions
diff --git a/zh_CN.GB2312/books/handbook/ports/chapter.sgml b/zh_CN.GB2312/books/handbook/ports/chapter.sgml
index c6329b8f75..fb254fa543 100644
--- a/zh_CN.GB2312/books/handbook/ports/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/ports/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Documentation Project
- Original Revision: 1.227
+ Original Revision: 1.239
$FreeBSD$
-->
@@ -16,7 +16,7 @@
<indexterm><primary>packages</primary></indexterm>
<para>FreeBSD 捆绑了很多系统工具作为基本系统的一部分。然而,在实际工作中,
您可能仍需要安装额外的第三方应用程序。 FreeBSD
- 提供了两种安装第三方应用程序的方法: FreeBSD ports collection 和二进制软件包
+ 提供了两种安装第三方应用程序的方法: FreeBSD Ports Collection 和二进制软件包
(package)。 无论用哪种方式, 您都可以从本地媒体 (设备)
或直接通过网络来安装您喜欢的最新版本的应用程序。</para>
@@ -27,13 +27,13 @@
<para>如何安装第三方的二进制软件包。</para>
</listitem>
<listitem>
- <para>如何从ports collection安装第三方软件。</para>
+ <para>如何从Ports Collection安装第三方软件。</para>
</listitem>
<listitem>
<para>如何删除先前安装的软件包。</para>
</listitem>
<listitem>
- <para>如何改动ports collection里面的一些参数,定制软件使用。</para>
+ <para>如何改动Ports Collection里面的一些参数,定制软件使用。</para>
</listitem>
<listitem>
<para>如何找到您需要的软件包。</para>
@@ -172,16 +172,16 @@
<para>保持更新 ports, 订阅邮件列表 &a.ports; 和递交错误报告 &a.ports-bugs;。</para>
<warning>
- <para>在安装任何应用程序之前,应该首先检查 <ulink
+ <para>安装任何应用程序之前, 应首先检查 <ulink
url="http://vuxml.freebsd.org/"></ulink>
- 上是否有与所安装的应用程序有关的安全问题报告。</para>
-
- <para>另外,也可以安装 <filename
- role="package">security/portaudit</filename>。
- 除了可以自动地检测所有已经安装的软件中是否有已知的安全漏洞之外,
- 在开始编译新的 port 之前它也会检查是否存在已知的问题。
- 另外,在安装了一些软件包之后,也可以使用 <command>portaudit
- -F -a</command> 来强制系统作一下检查。</para>
+ 上是否有关于您所安装的应用程序的安全问题报告。</para>
+
+ <para>您也可以安装 <filename
+ role="package">security/portaudit</filename>,
+ 它能够自动地检查已经安装的应用程序的漏洞;
+ 此外, 在您安装程序之前它也会首先检查是否存在已知的漏洞。
+ 另外, 您也可以使用 <command>portaudit
+ -F -a</command> 这个命令在安装了某个软件包之后作出检查。</para>
</warning>
<para>这章的其余部分将介绍如何使用packages和ports来安装和管理第三方软件。</para>
@@ -400,7 +400,7 @@ docbook =
<para>在第二列的符号指出了安装版本的相关时间和本地ports目录树中可用的版本。</para>
- <informaltable frame="none">
+ <informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
@@ -460,31 +460,33 @@ docbook =
<sect1 id="ports-using">
<title>使用Ports Collection</title>
- <para>下面的章节提供了使用ports collection来安装或卸载程序的基本用法。</para>
+ <para>下面的章节提供了使用Ports Collection来安装或卸载程序的基本用法。</para>
<sect2 id="ports-tree">
<title>获得Ports Collection</title>
- <para>在您能使用ports之前, 您必须先获得 ports collection &mdash;
+ <para>在您能使用 ports 之前, 您必须先获得 Ports Collection &mdash;
本质上是 <filename>/usr/ports</filename> 目录下的一堆
<filename>Makefile</filename>、 补丁和描述文件。
</para>
<para>在您安装 FreeBSD 系统的时候, <application>sysinstall</application>
- 会询问您是否需要安装 ports collection。 如果您选择 no,
- 那您可以用下面的指令来安装ports collection:</para>
+ 会询问您是否需要安装 Ports Collection。 如果您选择 no,
+ 那您可以用下面的指令来安装 Ports Collection:</para>
<procedure>
<title>Sysinstall 方式</title>
<para>这种方式使用 <application>sysinstall</application>
- 再次手动安装ports collection。</para>
+ 再次手动安装Ports Collection。</para>
<step>
- <para>用<username>root</username>用户, 运行
- <command>/stand/sysinstall</command>命令,像下面显示的:</para>
+ <para>以 <username>root</username> 用户身份, 运行
+ <command>sysinstall</command>
+ (对于 &os; 5.2 之前的版本, 应该是
+ <command>/stand/sysinstall</command>), 如下所示:</para>
- <screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
+ <screen>&prompt.root; <userinput>sysinstall</userinput></screen>
</step>
<step>
@@ -517,7 +519,7 @@ docbook =
</procedure>
<para>您可以使用 <application>CVSup</application>,这个程序让您获得和更新
- ports collection。 <application>CVSup</application> 需要使用
+ Ports Collection。 <application>CVSup</application> 需要使用
<filename>/usr/share/examples/cvsup/ports-supfile</filename> 这个配置文件。
如果您想获得关于 <application>CVSup</application> 这个应用程序的更多信息,
请看 <link linkend="cvsup">使用 CVSup</link> (<xref linkend="cvsup">) 和本文。</para>
@@ -525,7 +527,7 @@ docbook =
<procedure>
<title>CVSup 方法</title>
- <para>使用 <application>CVSup</application> 获得 ports collection,
+ <para>使用 <application>CVSup</application> 获得 Ports Collection,
是一个非常快捷的方法。 如果您想保持您的 ports 树的最新状态,
或了解更多关于 <application>CVSup</application>
的内容, 您可以阅读刚才提及的内容。</para>
@@ -560,7 +562,7 @@ docbook =
</step>
<step>
- <para>运行这个命令之后将下载和应用所有变化的ports系统,
+ <para>运行这个命令之后将下载和应用所有变化的 ports 系统,
但并不在您的系统中重新编译 ports 系统。</para>
</step>
</procedure>
@@ -573,7 +575,7 @@ docbook =
<primary>ports</primary>
<secondary>安装</secondary>
</indexterm>
- <para>当提到 Ports collection 时,
+ <para>当提到 Ports Collection 时,
第一个要说明的就是何谓 <quote>skeleton</quote>。 简单地说,
port skeleton 是让一个程序在 FreeBSD
上简洁地编译并安装的所需文件的最小组合。 每个 port skeleton 包含:</para>
@@ -637,14 +639,14 @@ docbook =
<warning>
<para>在安装任何 port 之前, 应该首先确保已经更新到了最新的
- ports collection, 并检查 <ulink
+ Ports Collection, 并检查 <ulink
url="http://vuxml.freebsd.org/"></ulink> 中是否有与那个
port 有关的安全问题。</para>
<para>在安装应用程序之前, 可以使用
<application>portaudit</application> 来自动地检查是否存在已知的安全问题。
这个工具同样可以在
- ports collection (<filename
+ Ports Collection (<filename
role="package">security/portaudit</filename>) 中找到。
在安装新的 port 之前, 可以考虑先运行一下
<command>portaudit -F</command> 来抓取最新的漏洞数据库。
@@ -668,9 +670,10 @@ docbook =
下面的章节假设您已经有了一张FreeBSD的安装光盘。
</para>
- <para>把 FreeBSD 的光盘放入驱动器。Mount到 <filename>/cdrom</filename>。
- (如果您使用了不同的挂接点,这个安装将不会工作)。 首先, 进入到您要安装的
- port 所在的目录:</para>
+ <para>将 FreeBSD CD-ROM 放进驱动器。 将其挂接到
+ <filename>/cdrom</filename>。 (如果您使用了与此不同的挂接点,
+ 请设置 <makevar>CD_MOUNTPTS</makevar> make 变量)。
+ 首先, 进入要安装的 port 所在的目录:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput></screen>
@@ -728,13 +731,17 @@ docbook =
</note>
<note>
- <para>在一些shell中,为了对这些程序做快速查找的操作,
- 它对环境变量 <envar>PATH</envar> 指定的目录中的可执行命令有缓存。
- 对于在基本系统中的一部分 shell (就像 <command>tcsh</command>),
- 和在 port 中的一些 shell (举个例子,
- <filename role="package">shells/zsh</filename>),
- 如果您使用了这些 shell 中的一个, 您必须在安装完一个 port 后执行
- <command>rehash</command> 命令, 这样新安装的程序才能使用。</para>
+ <para>一些 shell 会缓存环境变量
+ <envar>PATH</envar> 中指定的目录里的可执行文件,
+ 以加速查找它们的速度。 如果您使用的是这类 shell,
+ 在安装 port 之后可能需要执行 <command>rehash</command>
+ 命令, 然后才能运行新安装的那些命令。
+ 这个命令可以在类似
+ <command>tcsh</command> 的 shell 中使用。 对于类似
+ <command>sh</command> 或 <filename
+ role="package">shells/bash</filename> 的 shell,
+ 对应的命令是 <command>hash -r</command>。
+ 请参见您的 shell 的文档以了解进一步的情况。</para>
</note>
<note>
@@ -922,13 +929,14 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
<primary>ports</primary>
<secondary>磁盘空间</secondary>
</indexterm>
- <para>使用 ports collection 显然会吃掉您的一些磁盘空间。
- 基于这样的考虑您应该经常通过 <command>make
- <makevar>clean</makevar></command> 来清理工作目录。
- 它将会在您编译和安装 port 之后删除
- <filename>work</filename> 目录。
- 您也可以考虑从 <filename>distfiles</filename>
- 目录中删掉对应的 tar 文件, 并在用完之后卸载 port。</para>
+ <para>使用 Ports Collection 显然会逐渐地吃掉您的磁盘空间。
+ 由于 ports tree 趋于不断增大, 在构建和安装软件之后,
+ 您应该通过使用 <command>make
+ <makevar>clean</makevar></command>
+ 来清理包含临时文件的 <filename class="directory">work</filename>
+ 目录。 这一命令会删除 <filename class="directory">work</filename>,
+ 因为在您构建并安装完之后它就没用了。 如果已经安装或不再需要,
+ 您也可以从 <filename class="directory">distfiles</filename> 目录中删除源代码包。</para>
<para>一些用户还通过把一些不需要的 port 分类放入
<filename>refuse</filename> 文件来避免下载它们。 这样在运行
@@ -948,7 +956,7 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
<secondary>升级</secondary>
</indexterm>
<note>
- <para>一旦您更新了 ports collection, 在开始升级之前,
+ <para>一旦您更新了 Ports Collection, 在开始升级之前,
应该首先检查一下
<filename>/usr/ports/UPDATING</filename> 文件。
它描述了在升级时可能遇到的问题, 以及因应的步骤。</para>
@@ -980,14 +988,22 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
<replaceable>pkgname</replaceable></command>,
如果您认为 <application>portupgrade</application>
应该升级所有基于那个 port 的软件,
- 则需要指定 <option>-r</option>;
- 使用 <option>-R</option>
- 则它用到的所有包也会以通升级。
- 要使用预编译的包而不是 ports 来安装,
- 则可以指定
- <option>-P</option> 选项; 如果只想下载需要的 distfile
- 而不编译或安装什么, 则指定 <option>-F</option>。
- 更具体的细节请参考 &man.portupgrade.1;。</para>
+ 则需要指定 <option>-r</option>; 而如果使用
+ <option>-R</option> 则它用到的所有包也会被升级。</para>
+
+ <para>要使用预编译的 package 而不是 ports 来进行安装, 需要指定
+ <option>-P</option>。 如果指定了这个选项,
+ <application>portupgrade</application>
+ 会搜索 <envar>PKG_PATH</envar> 中指定的本地目录,
+ 如果没有找到, 则从远程站点下载。 如果本地没有找到,
+ 而且远程站点也没有成功地下载预编译包, 则
+ <application>portupgrade</application> 将使用 ports。
+ 要禁止使用 port, 可以指定 <option>-PP</option>。</para>
+
+ <para>如果只想下载 distfiles (或者, 如果指定了 <option>-P</option>
+ 的话, 是 packages) 而不想构建或安装任何东西,
+ 可以使用 <option>-F</option>。
+ 要了解更多细节, 请参考 &man.portupgrade.1;。</para>
<note>
<para>规律性地更新 package 数据库非常重要。 您可以使用