Merge from chinsan's repo.
That's my 81th doc commit. PR: docs/99748 Submitted by: chinsan.tw_at_gmail.com
This commit is contained in:
parent
fb41f13390
commit
6f4acb5f13
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=28192
7 changed files with 260 additions and 444 deletions
|
@ -42,12 +42,12 @@
|
|||
<para>您必須安裝這些工具,才能使用接下來各章節會介紹到的例子。 這些工具的用法,會在後續相關章節談到。 </para>
|
||||
|
||||
<tip>
|
||||
<title>Use <filename role="package">textproc/docproj</filename> if possible</title>
|
||||
<title>建議安裝 <filename role="package">textproc/docproj</filename></title>
|
||||
|
||||
<para>You can save yourself a lot of time if you install the
|
||||
<filename role="package">textproc/docproj</filename> port. This is a
|
||||
<emphasis>meta-port</emphasis> which does not contain any software
|
||||
itself. Instead, it depends on various other ports being installed
|
||||
<para>裝了
|
||||
<filename role="package">textproc/docproj</filename> 可以更省時省力,它是個
|
||||
組合型的 port(meta-port),本身並非軟體,只是將一些常用工具組合起來而已。
|
||||
Instead, it depends on various other ports being installed
|
||||
correctly. Installing this port <emphasis>should</emphasis>
|
||||
automatically download and install all of the packages listed in this
|
||||
chapter that you need.</para>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
Original revision: 1.220
|
||||
Original revision: 1.225
|
||||
-->
|
||||
|
||||
<chapter id="cutting-edge">
|
||||
|
@ -37,44 +37,39 @@
|
|||
<!-- with feedback from various others -->
|
||||
</chapterinfo>
|
||||
|
||||
<title>The Cutting Edge</title>
|
||||
<title>更新、升級 FreeBSD</title>
|
||||
|
||||
<sect1 id="cutting-edge-synopsis">
|
||||
<title>Synopsis</title>
|
||||
<title>概述</title>
|
||||
|
||||
<para>&os; is under constant development between releases. For
|
||||
people who want to be on the cutting edge, there are several easy
|
||||
mechanisms for keeping your system in sync with the latest
|
||||
developments. Be warned—the cutting edge is not for everyone!
|
||||
This chapter will help you decide if you want to track the
|
||||
development system, or stick with one of the released
|
||||
versions.</para>
|
||||
<para>&os; 是個持續發展的作業系統。對於喜歡追求新鮮、刺激的使用者而言,
|
||||
有很多方法可以使您的系統輕鬆更新為最新版。
|
||||
注意:並非每個人都適合這麼做! 本章主要是協助您決定到底要跟開發版本,或是要使用較穩定的釋出版。
|
||||
</para>
|
||||
|
||||
<para>After reading this chapter, you will know:</para>
|
||||
<para>讀完這章,您將了解︰</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>The difference between the two development
|
||||
branches: &os.stable; and &os.current;.</para>
|
||||
<listitem><para>&os.stable; 與 &os.current; 這兩分支的不同之處;</para>
|
||||
</listitem>
|
||||
<listitem><para>How to keep your system up to date with
|
||||
<listitem><para>如何以
|
||||
<application>CSup</application>,
|
||||
<application>CVSup</application>,
|
||||
<application>CVS</application>, or
|
||||
<application>CTM</application>.</para>
|
||||
<application>CVS</application> 或
|
||||
<application>CTM</application> 來更新你的系統</para>
|
||||
</listitem>
|
||||
<listitem><para>How to rebuild and reinstall the entire base
|
||||
system with <command>make buildworld</command> (etc).</para>
|
||||
<listitem><para>如何以 <command>make buildworld</command> 等指令來重新編譯、安裝整個
|
||||
base system。</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<para>Before reading this chapter, you should:</para>
|
||||
<para>在開始閱讀這章之前,您需要︰</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>Properly set up your network connection (<xref
|
||||
linkend="advanced-networking">).</para>
|
||||
<listitem><para>先設好你的網路(<xref linkend="advanced-networking">)。</para>
|
||||
</listitem>
|
||||
<listitem><para>Know how to install additional third-party
|
||||
software (<xref linkend="ports">).</para></listitem>
|
||||
<listitem><para>知道如何透過 port/package 安裝軟體(<xref linkend="ports">)。</para></listitem>
|
||||
</itemizedlist>
|
||||
</sect1>
|
||||
|
||||
|
@ -83,10 +78,9 @@
|
|||
<indexterm><primary>-CURRENT</primary></indexterm>
|
||||
<indexterm><primary>-STABLE</primary></indexterm>
|
||||
|
||||
<para>There are two development branches to FreeBSD: &os.current; and
|
||||
&os.stable;. This section will explain a bit about each and describe
|
||||
how to keep your system up-to-date with each respective tree.
|
||||
&os.current; will be discussed first, then &os.stable;.</para>
|
||||
<para>FreeBSD 有兩個發展分支:&os.current; 及
|
||||
&os.stable;。本節將會陸續介紹,並介紹它們分別又是如何更新。
|
||||
首先,先介紹 &os.current;,接著再介紹 &os.stable;。</para>
|
||||
|
||||
<sect2 id="current">
|
||||
<title>Staying Current with &os;</title>
|
||||
|
@ -99,11 +93,10 @@
|
|||
twice before installing it. </para>
|
||||
|
||||
<sect3>
|
||||
<title>What Is &os.current;?</title>
|
||||
<title>什麼是 &os.current;?</title>
|
||||
<indexterm><primary>snapshot</primary></indexterm>
|
||||
|
||||
<para>&os.current; is the latest working sources for &os;.
|
||||
This includes work in progress, experimental changes, and
|
||||
<para>&os.current; 是 &os; 的最新版。它包含: work in progress, experimental changes, and
|
||||
transitional mechanisms that might or might not be present
|
||||
in the next official release of the software. While many
|
||||
&os; developers compile the &os.current; source code daily,
|
||||
|
@ -383,11 +376,11 @@
|
|||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>If you are installing a new system and want it to be as
|
||||
stable as possible, you can simply grab the latest dated
|
||||
branch snapshot from <ulink
|
||||
url="ftp://snapshots.jp.FreeBSD.org/pub/FreeBSD/snapshots/"></ulink>
|
||||
and install it like any other release. Or you can
|
||||
<para>If you are going to install a new system and want it
|
||||
to run monthly snapshot built from &os.stable;, please
|
||||
check the <ulink url="&url.base;/snapshots/">
|
||||
Snapshots</ulink> web page for more information.
|
||||
Alternatively, it is possible to
|
||||
install the most recent &os.stable; release from the
|
||||
<link linkend="mirrors">mirror sites</link> and follow
|
||||
the instructions below to upgrade your system to the
|
||||
|
@ -467,7 +460,7 @@
|
|||
</sect1>
|
||||
|
||||
<sect1 id="synching">
|
||||
<title>Synchronizing Your Source</title>
|
||||
<title>更新你的 Source</title>
|
||||
|
||||
<para>There are various ways of using an Internet (or email)
|
||||
connection to stay up-to-date with any given area of the &os;
|
||||
|
@ -552,9 +545,9 @@
|
|||
tree to rebuild the system.</para>
|
||||
|
||||
<warning>
|
||||
<title>Take a Backup</title>
|
||||
<title>Make a Backup</title>
|
||||
|
||||
<para>It cannot be stressed enough how important it is to take a
|
||||
<para>It cannot be stressed enough how important it is to make a
|
||||
backup of your system <emphasis>before</emphasis> you do this.
|
||||
While rebuilding the world is (as long as you follow these
|
||||
instructions) an easy task to do, there will inevitably be times
|
||||
|
@ -673,7 +666,7 @@
|
|||
|
||||
<para>Examine the files
|
||||
<filename>/usr/share/examples/etc/make.conf</filename>
|
||||
(called <filename>/etc/defaults/make.conf</filename> in &os; 4.X) and
|
||||
and
|
||||
<filename>/etc/make.conf</filename>. The first contains some
|
||||
default defines – most of which are commented out. To
|
||||
make use of them when you rebuild your system from source, add
|
||||
|
@ -684,10 +677,9 @@
|
|||
|
||||
<para>A typical user will probably want to copy the
|
||||
<makevar>CFLAGS</makevar> and
|
||||
<makevar>NO_PROFILE</makevar> (or <makevar>NOPROFILE</makevar> on
|
||||
&os; 5.X and older) lines found in
|
||||
<makevar>NO_PROFILE</makevar> lines found in
|
||||
<filename>/usr/share/examples/etc/make.conf</filename>
|
||||
(or in <filename>/etc/defaults/make.conf</filename> on &os; 4.X) to
|
||||
to
|
||||
<filename>/etc/make.conf</filename> and uncomment them.</para>
|
||||
|
||||
<para>Examine the other definitions (<makevar>COPTFLAGS</makevar>,
|
||||
|
@ -714,21 +706,13 @@
|
|||
In some cases <command>make buildworld</command> will check to see if
|
||||
these users or groups exist.</para>
|
||||
|
||||
<para>A recent example of this is when the
|
||||
<para>An example of this is when the
|
||||
<username>smmsp</username> user was added. Users had the
|
||||
installation process fail for them when
|
||||
&man.mtree.8; was trying to create
|
||||
<filename>/var/spool/clientmqueue</filename>.</para>
|
||||
|
||||
<para>The solution is to examine
|
||||
<filename>/usr/src/etc/group</filename> and compare its list of
|
||||
groups with your own. If there are any groups in the new file that
|
||||
are not in your file then copy them over. Similarly, you should
|
||||
rename any groups in <filename>/etc/group</filename> which have
|
||||
the same GID but a different name to those in
|
||||
<filename>/usr/src/etc/group</filename>.</para>
|
||||
|
||||
<para>Since 4.6-RELEASE you can run &man.mergemaster.8; in
|
||||
<para>The solution is to run &man.mergemaster.8; in
|
||||
pre-buildworld mode by providing the <option>-p</option> option.
|
||||
This will compare only those files that are essential for the success
|
||||
of <maketarget>buildworld</maketarget> or
|
||||
|
@ -781,7 +765,7 @@
|
|||
mode.</para>
|
||||
|
||||
<para>Alternatively, reboot the system, and at the boot prompt,
|
||||
enter the <option>-s</option> flag. The system will then boot
|
||||
select the <quote>single user</quote> option. The system will then boot
|
||||
single user. At the shell prompt you should then run:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>fsck -p</userinput>
|
||||
|
@ -830,8 +814,8 @@
|
|||
&prompt.root; <userinput>rm -rf *</userinput></screen>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Recompile the Source</title>
|
||||
<sect2 id="cutting-edge-compilebase">
|
||||
<title>Recompile the Base System</title>
|
||||
|
||||
<sect3>
|
||||
<title>Saving the Output</title>
|
||||
|
@ -922,22 +906,16 @@ Script done, …</screen>
|
|||
|
||||
<screen>&prompt.root; <userinput>make <replaceable>target</replaceable></userinput></screen>
|
||||
|
||||
<para>Beginning with version 2.2.5 of &os; (actually, it was
|
||||
first created on the &os.current; branch, and then retrofitted to
|
||||
&os.stable; midway between 2.2.2 and 2.2.5) the
|
||||
<maketarget>world</maketarget> target has been split in
|
||||
two: <maketarget>buildworld</maketarget> and
|
||||
<maketarget>installworld</maketarget>. Beginning with version
|
||||
5.3 of &os; the <maketarget>world</maketarget> target will be changed
|
||||
so it will not work at all by default because it is actually
|
||||
dangerous for most users.</para>
|
||||
<para>Where <replaceable>target</replaceable> will be one of
|
||||
many build options. The first target should always be
|
||||
<makevar>buildworld</makevar>.</para>
|
||||
|
||||
<para>As the names imply, <maketarget>buildworld</maketarget>
|
||||
builds a complete new tree under <filename>/usr/obj</filename>,
|
||||
and <maketarget>installworld</maketarget> installs this tree on
|
||||
and <maketarget>installworld</maketarget>, another target, installs this tree on
|
||||
the current machine.</para>
|
||||
|
||||
<para>This is very useful for 2 reasons. First, it allows you
|
||||
<para>Having separate options is very useful for two reasons. First, it allows you
|
||||
to do the build safe in the knowledge that no components of
|
||||
your running system will be affected. The build is
|
||||
<quote>self hosted</quote>. Because of this, you can safely
|
||||
|
@ -963,7 +941,7 @@ Script done, …</screen>
|
|||
|
||||
<screen>&prompt.root; <userinput>make buildworld</userinput></screen>
|
||||
|
||||
<para>It is now possible to specify a <option>-j</option> option to
|
||||
<para>It is possible to specify a <option>-j</option> option to
|
||||
<command>make</command> which will cause it to spawn several
|
||||
simultaneous processes. This is most useful on multi-CPU machines.
|
||||
However, since much of the compiling process is IO bound rather
|
||||
|
@ -980,11 +958,6 @@ Script done, …</screen>
|
|||
<para>If you have a multi-CPU machine and you are using an SMP
|
||||
configured kernel try values between 6 and 10 and see how they speed
|
||||
things up.</para>
|
||||
|
||||
<para>Be aware that this is still somewhat experimental, and commits
|
||||
to the source tree may occasionally break this feature. If the
|
||||
world fails to compile using this parameter try again without it
|
||||
before you report any problems.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
|
@ -994,8 +967,8 @@ Script done, …</screen>
|
|||
<secondary>timings</secondary>
|
||||
</indexterm>
|
||||
|
||||
<para>Many factors influence the build time, but currently a 500 MHz
|
||||
&pentium; III with 128 MB of RAM takes about 2 hours to build
|
||||
<para>Many factors influence the build time, but fairly recent
|
||||
machines may only take a one or two hours to build
|
||||
the &os.stable; tree, with no tricks or shortcuts used during the
|
||||
process. A &os.current; tree will take somewhat longer.</para>
|
||||
</sect3>
|
||||
|
@ -1024,7 +997,7 @@ Script done, …</screen>
|
|||
can then build a new kernel based on your normal kernel configuration
|
||||
file.</para>
|
||||
|
||||
<para>On modern versions of FreeBSD it is important to <link
|
||||
<para>On &os; it is important to <link
|
||||
linkend="make-buildworld">build world</link> before building a
|
||||
new kernel.</para>
|
||||
|
||||
|
@ -1057,7 +1030,7 @@ Script done, …</screen>
|
|||
<xref linkend="makeworld-singleuser">.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<sect2 id="make-installworld">
|
||||
<title>Install the New System Binaries</title>
|
||||
|
||||
<para>If you were building a version of &os; recent enough to have
|
||||
|
@ -1169,7 +1142,7 @@ Script done, …</screen>
|
|||
|
||||
<para>After &man.mergemaster.8; is done with the system files you will be
|
||||
prompted for other options. &man.mergemaster.8; may ask if you want to rebuild
|
||||
the password file and/or run &man.MAKEDEV.8; if you run a FreeBSD version prior to 5.0, and will finish up with an option to
|
||||
the password file and will finish up with an option to
|
||||
remove left-over temporary files.</para>
|
||||
</sect3>
|
||||
|
||||
|
@ -1187,7 +1160,7 @@ Script done, …</screen>
|
|||
not in <filename>/usr/src/etc</filename>.</para>
|
||||
|
||||
<para>If you are using &man.mergemaster.8; (as recommended),
|
||||
you can skip forward to the <link linkend="update-dev">next
|
||||
you can skip forward to the <link linkend="cutting-edge-rebooting">next
|
||||
section</link>.</para>
|
||||
|
||||
<para>The simplest way to do this by hand is to install the
|
||||
|
@ -1334,103 +1307,8 @@ Script done, …</screen>
|
|||
</tip>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="update-dev">
|
||||
<title>Update <filename>/dev</filename></title>
|
||||
|
||||
<note>
|
||||
<indexterm><primary>DEVFS</primary></indexterm>
|
||||
<para>If you are running FreeBSD 5.0 or later you can safely
|
||||
skip this section. These versions use &man.devfs.5; to
|
||||
allocate device nodes transparently for the user.</para>
|
||||
</note>
|
||||
|
||||
<para>In most cases, the &man.mergemaster.8; tool will realize when
|
||||
it is necessary to update the device nodes, and offer to complete it
|
||||
automatically. These instructions tell how to update the device
|
||||
nodes manually.</para>
|
||||
|
||||
<para>For safety's sake, this is a multi-step process.</para>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
<para>Copy <filename>/var/tmp/root/dev/MAKEDEV</filename> to
|
||||
<filename>/dev</filename>:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cp /var/tmp/root/dev/MAKEDEV /dev</userinput></screen>
|
||||
<indexterm>
|
||||
<primary><filename>MAKEDEV</filename></primary>
|
||||
</indexterm>
|
||||
|
||||
<para>If you used &man.mergemaster.8; to
|
||||
update <filename>/etc</filename>, then your
|
||||
<filename>MAKEDEV</filename> script should have been updated
|
||||
already, though it cannot hurt to check (with &man.diff.1;)
|
||||
and copy it manually if necessary.</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Now, take a snapshot of your current
|
||||
<filename>/dev</filename>. This snapshot needs to contain the
|
||||
permissions, ownerships, major and minor numbers of each filename,
|
||||
but it should not contain the time stamps. The easiest way to do
|
||||
this is to use &man.awk.1; to strip out some of the
|
||||
information:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||||
&prompt.root; <userinput>ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev.out</userinput></screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Remake all the device nodes:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>sh MAKEDEV all</userinput></screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Write another snapshot of the directory, this time to
|
||||
<filename>/var/tmp/dev2.out</filename>. Now look through these
|
||||
two files for any device node that you missed creating. There should
|
||||
not be any, but it is better to be safe than sorry.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>diff /var/tmp/dev.out /var/tmp/dev2.out</userinput></screen>
|
||||
|
||||
<para>You are most likely to notice disk slice discrepancies which
|
||||
will involve commands such as:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>sh MAKEDEV sd0s1</userinput></screen>
|
||||
|
||||
<para>to recreate the slice entries. Your precise circumstances may
|
||||
vary.</para>
|
||||
</step>
|
||||
</procedure>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Update <filename>/stand</filename></title>
|
||||
|
||||
<note>
|
||||
<para>This step is included only for completeness. It can safely be
|
||||
omitted. If you are using FreeBSD 5.2 or later, the
|
||||
<filename>/rescue</filename> directory is automatically updated
|
||||
for the user with current, statically compiled binaries during
|
||||
<command>make installworld</command>, thus obsoleting the need
|
||||
to update <filename>/stand</filename> (which does not exist at
|
||||
all on &os; 6.0 and later).</para>
|
||||
</note>
|
||||
|
||||
<para>For the sake of completeness, you may want to update the files in
|
||||
<filename>/stand</filename> as well. These files consist of hard
|
||||
links to the <filename>/stand/sysinstall</filename> binary. This
|
||||
binary should be statically linked, so that it can work when no other
|
||||
file systems (and in particular <filename>/usr</filename>) have been
|
||||
mounted.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/src/release/sysinstall</userinput>
|
||||
&prompt.root; <userinput>make all install</userinput></screen>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<sect2 id="cutting-edge-rebooting">
|
||||
<title>Rebooting</title>
|
||||
|
||||
<para>You are now done. After you have verified that everything appears
|
||||
|
@ -1577,9 +1455,6 @@ Script done, …</screen>
|
|||
&prompt.root; <userinput>cd /usr/src</userinput>
|
||||
&prompt.root; <userinput>make -DNO_CLEAN all</userinput></screen>
|
||||
|
||||
<note><para>On &os; 5.X and older, use
|
||||
<makevar>-DNOCLEAN</makevar> instead.</para></note>
|
||||
|
||||
<para>This will not undo the work of the previous
|
||||
<command>make buildworld</command>.</para>
|
||||
|
||||
|
|
|
@ -105,7 +105,7 @@
|
|||
</sect1>
|
||||
|
||||
<sect1 id="firewalls-concepts">
|
||||
<title>防火牆概念</title>
|
||||
<title>淺談防火牆概念</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>防火牆</primary>
|
||||
|
@ -114,35 +114,34 @@
|
|||
</indexterm>
|
||||
|
||||
<para>
|
||||
有兩種基本的方式可以建立防火牆規則:
|
||||
「先容式(exclusive)」或是「後容式(inclusive)」。
|
||||
基本上防火牆規則可分為兩種型態,分別為:「exclusive」以及「inclusive」。
|
||||
<!--inclusive/exclusive 參考 Mattlinuxer 的意見
|
||||
因為 exclusive 防火牆是先容許所有封包通過,再透過規則阻擋
|
||||
不想讓其通過的封包。而 inclusive 則是檔掉所有,後來再容許
|
||||
符合規則的封包通過。
|
||||
-->
|
||||
「先容式(exclusive)」類似「黑名單」,它先允許所有封包通過,
|
||||
「exclusive」類似「黑名單」,它先允許所有封包通過,
|
||||
然後違反規則的封包則禁止通過防火牆。
|
||||
相反的,「後容式(inclusive)」類似「白名單」,它先擋住所有封包通過,
|
||||
相反的,「inclusive」類似「白名單」,它先擋住所有封包通過,
|
||||
然後只允許有符合規則的才可通過防火牆。</para>
|
||||
|
||||
<para>
|
||||
整體來說,「後容式(inclusive)」的防火牆會比「先容式(exclusive)」的防火牆安全些。
|
||||
因為後容式明顯降低了不必要的風險。</para>
|
||||
整體來說,「inclusive」式防火牆會比「exclusive」式防火牆安全些。
|
||||
因為「inclusive」明顯降低了不必要的風險。</para>
|
||||
|
||||
<para>此外,使用「狀態防火牆(stateful firewall)」可讓安全性更嚴密。
|
||||
<para>此外,使用「stateful firewall」可讓安全性更嚴密。
|
||||
它會持續記錄通過防火牆開放的連線,
|
||||
並且只允許符合現存或開啟新的連線才能通過防火牆。
|
||||
狀態防火牆的缺點是如果在非常快的速度下開啟許多新連線,就可能會受到阻絕式服務攻擊
|
||||
(<acronym>DoS</acronym>, Denial of Service)。
|
||||
在大多數的防火牆方案中,也可以交互運用「狀態」及「非狀態」防火牆的組合,
|
||||
使該站的防火牆達到最佳化。
|
||||
在大多數的防火牆方案中,也可以交叉運用「stateful 」及「non-stateful 」防火牆的組合,
|
||||
讓該網站的防火牆達到最佳化。
|
||||
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="firewalls-apps">
|
||||
<title>防火牆軟體套件</title>
|
||||
<title>防火牆相關軟體</title>
|
||||
|
||||
|
||||
<para>在 &os; 基本系統中內建有三種不同的防火牆軟體套件。
|
||||
|
@ -193,46 +192,40 @@
|
|||
並且具有選擇性 <acronym>ALTQ</acronym>(交錯佇列,Alternate Queuing)
|
||||
<!--psilotum: 20060309 alternative queuing 參考 zh_CN 的翻譯 -->
|
||||
的功能。
|
||||
<acronym>ALTQ</acronym>提供了「服務品質」(<acronym>QoS</acronym>,
|
||||
Quality of Service)的頻寬管理功能,
|
||||
這提供了以過濾規則的方式來保障各種不同服務的頻寬。
|
||||
OpenBSD 計劃中已經對 PF 的使用指南提供了詳盡的解說,
|
||||
<acronym>ALTQ</acronym>提供了「<acronym>QoS</acronym>」(Quality of Service)頻寬管制功能,
|
||||
它可以用過濾規則的方式來保障各種不同服務的頻寬。
|
||||
另外,OpenBSD 計劃中已經對 PF 的使用指南提供了詳盡的解說,
|
||||
因此在這本手冊中我們不會作重複的贅述,而只介紹概要。</para>
|
||||
<!--20060309 psilotum:怎麼翻譯都覺得有點怪,所以最後一句重寫-->
|
||||
|
||||
<para>更多關於 PF 的資訊可於下列網址查詢: <ulink
|
||||
<para>更多關於 PF 的資訊可於下列網址查詢:<ulink
|
||||
url="http://pf4freebsd.love2party.net/"></ulink>.</para>
|
||||
|
||||
<sect2>
|
||||
<title>啟用 PF</title>
|
||||
|
||||
<para>PF 在 &os; 5.3 之後的系統中,可以輕鬆使用動態模組來載入。
|
||||
<para>PF 在 &os; 5.3 之後的系統中,就可以輕鬆使用 kernel 動態模組來載入。
|
||||
在 rc.conf 中加入 <literal>pf_enable="YES"</literal> 後,
|
||||
系統將會動態地載入 PF 核心動態模組。這個模組會在建立時也啟用
|
||||
&man.pflog.4; 記錄功能。</para>
|
||||
系統就會載入 PF 的 kernel 動態模組。這模組會在建立時也啟用 &man.pflog.4; 記錄功能。</para>
|
||||
|
||||
<note>
|
||||
<para>這個模組會假設核心內已有 <literal>options INET</literal> 和
|
||||
<para>這個模組會假設 kernel 內已有 <literal>options INET</literal> 和
|
||||
<literal>device bpf</literal>。
|
||||
除非編譯時在核心中有事先(像是在 &man.make.conf.5; 中)加入 <literal>NOINET6</literal>,
|
||||
&os; 6.0 以後的版本則是 <literal>NO_INET6</literal>
|
||||
這樣才會避免不打開 IPv6 支援,否則 pf 模組同時也需要 <literal>options INET6</literal>,
|
||||
也就是 IPv6 支援。</para>
|
||||
除非編譯 kernel 時已在像是 &man.make.conf.5; 設定檔中加入 <literal>NOINET6</literal>(
|
||||
&os; 6.0 以後的版本則是 <literal>NO_INET6</literal>)
|
||||
這樣才會避免不打開 IPv6 支援,
|
||||
否則 pf 模組同時也需要 <literal>options INET6</literal>,也就是 IPv6 支援。</para>
|
||||
</note>
|
||||
|
||||
<para>一旦載入 PF 核心模組或靜態地編譯入核心中,
|
||||
就可以使用 <command>pfctl</command> 來啟動或關閉
|
||||
<application>pf</application>。</para>
|
||||
<para>一旦載入 PF 的 kernel 模組或是靜態編譯入 kernel 內,
|
||||
就可以使用 <command>pfctl</command> 來啟動或關閉 <application>pf</application>。</para>
|
||||
|
||||
<para>這個例子示範了如何啟動
|
||||
<application>pf</application>:</para>
|
||||
<para>下面這個例子示範如何啟動 <application>pf</application>:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pfctl -e</userinput></screen>
|
||||
|
||||
<para><command>pfctl</command>指令提供了一個使用<application>pf</application>
|
||||
防火牆的方式。
|
||||
要了解更多使用 <command>pfctl</command> 的資訊,
|
||||
查閱 &man.pfctl.8; 的線上手冊會是個好方式。</para>
|
||||
<para><command>pfctl</command> 是使用 <application>pf</application> 防火牆的指令。
|
||||
若要了解更詳盡的 <command>pfctl</command> 運用,請查閱 &man.pfctl.8; 線上手冊。</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
|
@ -260,56 +253,51 @@
|
|||
在這裡只是要列出給你參考的一些資訊而已。
|
||||
將 PF 編譯入 kernel 中,會導致無法使用 kernel 的動態載入模組。</para>
|
||||
|
||||
<para>設定 PF 的核心選項範例在 kernel 原始碼中的
|
||||
<para>設定 PF 的 kernel 選項範例在 kernel 原始碼中的
|
||||
<filename>/usr/src/sys/conf/NOTES</filename>,轉貼內容如下:</para>
|
||||
|
||||
<programlisting>device pf
|
||||
device pflog
|
||||
device pfsync</programlisting>
|
||||
|
||||
<para><literal>device pf</literal> 啟用了
|
||||
「封包過濾(packet filter)」 的防火牆支援.</para>
|
||||
<para><literal>device pf</literal> 是用來啟動「packet filter(封包過濾)」的防火牆支援。</para>
|
||||
|
||||
<para><literal>device pflog</literal> 啟動了選擇性的 &man.pflog.4;
|
||||
虛擬網路設備 pseudo network device),它可以透過 &man.bpf.4;
|
||||
的描述符號來記錄流量。
|
||||
&man.pflogd.8; 服務可以用來儲存訊息,並可以用日誌的形式記錄在硬碟上。</para>
|
||||
<para>而 <literal>device pflog</literal>,此功能要裝不裝皆可,它會啟動 &man.pflog.4;,以 &man.bpf.4; 格式來記錄網路流量。
|
||||
&man.pflogd.8; daemon 則是用來紀錄這些訊息,並存在硬碟上。</para>
|
||||
<!-- psilotum:20060311 參考 zh_CN 翻譯 -->
|
||||
|
||||
<para><literal>device pfsync</literal> 啟動了選擇性 的&man.pfsync.4;
|
||||
虛擬網路設備,它可以用來監控「狀態的改變」。
|
||||
<literal>device pfsync</literal>並不是可載入模組,
|
||||
要使用的話,必須要編入自訂的核心中才行。</para>
|
||||
<para><literal>device pfsync</literal>,此功能要裝不裝皆可,它會啟動 &man.pfsync.4;,可以用來監控「狀態的改變」。
|
||||
請注意:<literal>device pfsync</literal>並不是 kernel 動態模組,要使用的話,必須要編入自訂的 kernel 中才行。</para>
|
||||
|
||||
<para>這些設定將會在你編譯及安裝好新核心後才會生效。</para>
|
||||
<para>這些設定將會在你編譯及安裝好新 kernel 後才會生效。</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>rc.conf 可用的選項</title>
|
||||
<title>rc.conf 其他相關的選項</title>
|
||||
|
||||
<para>你需要在 <filename>/etc/rc.conf</filename>
|
||||
中加入下列的設定以便在啟動系統時同時啟用 PF:</para>
|
||||
中加入下列的設定,以便在系統啟動時啟用 PF:</para>
|
||||
|
||||
<programlisting>pf_enable="YES" # 啟用 PF (如果需要的話載入模組)
|
||||
pf_rules="/etc/pf.conf" # PF 的規則定義檔案
|
||||
pf_flags="" # pfctl 啟動時附加的選項
|
||||
pf_rules="/etc/pf.conf" # PF 防火牆規則設定檔
|
||||
pf_flags="" # pfctl 啟動時的附加選項
|
||||
pflog_enable="YES" # 啟動 pflogd(8)
|
||||
pflog_logfile="/var/log/pflog" # pflogd 儲存記錄檔案的地方
|
||||
pflog_flags="" # pflogd 啟動時附加的選項</programlisting>
|
||||
|
||||
<para>如果在這個防火牆後方你有個區域網路,並透過它來轉送封包,
|
||||
你就必須要設定下列選項:</para>
|
||||
<para>如果您的防火牆後面有個 LAN(區域網路),並要透過它來轉送封包,
|
||||
就必須要設定下列選項:</para>
|
||||
|
||||
<programlisting>gateway_enable="YES" # 啟用作為區域網路閘道器</programlisting>
|
||||
<programlisting>gateway_enable="YES" # 啟用 LAN Gateway</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>啟用 <acronym>ALTQ</acronym></title>
|
||||
|
||||
<para><acronym>ALTQ</acronym>的選項只有在編入 &os; 核心中才能生效。
|
||||
<para><acronym>ALTQ</acronym> 只有在編入 &os; kernel 中才能生效。
|
||||
不是所有的網路卡驅動程式都支援 <acronym>ALTQ</acronym>。
|
||||
請看 &man.altq.4; 線上手冊來了解你使用的 &os; 版本中支援驅動程式的清單。
|
||||
下面列出的選項將會啟用 <acronym>ALTQ</acronym> 及加入其他附加的功能。</para>
|
||||
下面所列的將會啟用 <acronym>ALTQ</acronym> 及其他附加功能:</para>
|
||||
|
||||
<programlisting>options ALTQ
|
||||
options ALTQ_CBQ # Class Bases Queuing (CBQ)
|
||||
|
@ -319,13 +307,11 @@ options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
|
|||
options ALTQ_PRIQ # Priority Queuing (PRIQ)
|
||||
options ALTQ_NOPCC # Required for SMP build</programlisting>
|
||||
|
||||
<para><literal>options ALTQ</literal> 啟用了
|
||||
<acronym>ALTQ</acronym> 主架構。</para>
|
||||
<para><literal>options ALTQ</literal> 是啟用 <acronym>ALTQ</acronym> 主架構。</para>
|
||||
|
||||
<para><literal>options ALTQ_CBQ</literal> 啟用「基於分類的佇列」
|
||||
(Class Based Queuing, <acronym>CBQ</acronym>)支援。
|
||||
<para><literal>options ALTQ_CBQ</literal> 會啟用「<acronym>CBQ</acronym>」(Class Based Queuing, )支援。
|
||||
<acronym>CBQ</acronym> 允許你
|
||||
allows you to divide a connection's bandwidth into different
|
||||
divide a connection's bandwidth into different
|
||||
classes or queues to prioritize traffic based on filter
|
||||
rules.</para>
|
||||
|
||||
|
@ -398,13 +384,13 @@ options ALTQ_NOPCC # Required for SMP build</programlisting>
|
|||
</indexterm>
|
||||
|
||||
<note>
|
||||
<para>此小節的說明仍待陸續補充、更新,所以本內容可能並非完全符合現況。</para>
|
||||
<para>此一節的內容仍在陸續補充、更新,所以本節內容可能並未完全符合現況。</para>
|
||||
</note>
|
||||
|
||||
<para>IPFILTER 的作者為 Darren Reed。IPFILTER 並非
|
||||
operating system dependent:它是個 open source 應用程式,且已被移植到
|
||||
<para>IPFILTER 的作者為 Darren Reed。IPFILTER 並非得綁某特定作業系統才行:
|
||||
它是個跨 OS 平台的 open source 應用程式,且已被移植到
|
||||
&os;、NetBSD、OpenBSD、&sunos;、HP/UX 以及
|
||||
&solaris; 這些作業系統上。此外,IPFILTER 的支援以及維護也相當積極,也有定期釋出的更新版。</para>
|
||||
&solaris; 這些作業系統上。此外,IPFILTER 的支援、維護也相當積極,也有定期釋出的更新版。</para>
|
||||
|
||||
<para>IPFILTER is based on a kernel-side firewall and
|
||||
<acronym>NAT</acronym> mechanism that can be controlled and
|
||||
|
@ -537,7 +523,7 @@ options IPFILTER_DEFAULT_BLOCK</programlisting>
|
|||
<para>須在 <filename>/etc/rc.conf</filename> 內加入下列內容,以便在開機時就會啟用 IPF:</para>
|
||||
|
||||
<programlisting>ipfilter_enable="YES" # Start ipf firewall
|
||||
ipfilter_rules="/etc/ipf.rules" # 載入定義規則的文字檔案
|
||||
ipfilter_rules="/etc/ipf.rules" # IPF 防火牆規則設定檔
|
||||
ipmon_enable="YES" # 啟用 IP 監控記錄
|
||||
ipmon_flags="-Ds" # D = 使用服務程序 (daemon) 啟動
|
||||
# s = 使用 syslog 記錄
|
||||
|
@ -549,7 +535,7 @@ ipmon_flags="-Ds" # D =
|
|||
following to enable <acronym>NAT</acronym>
|
||||
functionality:</para>
|
||||
|
||||
<programlisting>gateway_enable="YES" # 啟用為區域網路閘道器
|
||||
<programlisting>gateway_enable="YES" # 啟用 LAN Gateway
|
||||
ipnat_enable="YES" # Start ipnat function
|
||||
ipnat_rules="/etc/ipnat.rules" # rules definition file for ipnat</programlisting>
|
||||
</sect2>
|
||||
|
@ -957,8 +943,7 @@ sh /etc/ipf.rules.script</programlisting>
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>從現在起,當你的系統開機時,
|
||||
你的 IPF 規則將會被載入</para>
|
||||
<para>從現在起,當系統開機時就會載入你所設的 IPF 規則。</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
|
@ -2043,8 +2028,7 @@ pass in quick on rl0 proto tcp from any to any port = 20 flags S keep state</pro
|
|||
</indexterm>
|
||||
|
||||
<note>
|
||||
<para>This section is work in progress. The contents might
|
||||
not be accurate at all times.</para>
|
||||
<para>此一節的內容仍在陸續補充、更新,所以本節內容可能並未完全符合現況。.</para>
|
||||
</note>
|
||||
|
||||
<para>The IPFIREWALL (IPFW) is a &os; sponsored firewall software
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
Original revision: 1.115
|
||||
Original revision: 1.119
|
||||
-->
|
||||
|
||||
<chapter id="l10n">
|
||||
|
@ -37,7 +37,7 @@
|
|||
and application levels, so where applicable we refer the reader
|
||||
to more specific sources of documentation.</para>
|
||||
|
||||
<para>After reading this chapter, you will know:</para>
|
||||
<para>讀完這章,您將了解︰</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>How different languages and locales are encoded
|
||||
on modern operating systems.</para></listitem>
|
||||
|
@ -51,7 +51,7 @@
|
|||
i18n-compliant applications.</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Before reading this chapter, you should:</para>
|
||||
<para>在開始閱讀這章之前,您需要︰</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>Know how to install additional third-party
|
||||
|
@ -60,10 +60,10 @@
|
|||
</sect1>
|
||||
|
||||
<sect1 id="l10n-basics">
|
||||
<title>The Basics</title>
|
||||
<title>L10N 基礎概念</title>
|
||||
|
||||
<sect2>
|
||||
<title>Ô£¬O I18N/L10N¡H</title>
|
||||
<title>什麼是 I18N/L10N?</title>
|
||||
<indexterm>
|
||||
<primary>internationalization</primary>
|
||||
<see>localization</see>
|
||||
|
@ -84,19 +84,17 @@
|
|||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Why Should I Use I18N/L10N?</title>
|
||||
<title>為何該使用 I18N/L10N?</title>
|
||||
|
||||
<para>I18N/L10N is used whenever you wish to either view, input, or
|
||||
process data in non-English languages.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>What Languages Are Supported in the I18N Effort?</title>
|
||||
<title>I18N 支援哪些語系?</title>
|
||||
|
||||
<para>I18N and L10N are not FreeBSD specific. Currently, one can
|
||||
choose from most of the major languages of the World, including
|
||||
but not limited to: Chinese, German, Japanese, Korean, French,
|
||||
Russian, Vietnamese and others.</para>
|
||||
<para>I18N 和 L10N 並非 FreeBSD 才有的,目前這世界上的幾乎任一主要語系都有支援,
|
||||
像是:中文、德文、日文、韓文、法文、俄文、越南文等等。</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
|
@ -184,7 +182,7 @@
|
|||
<listitem>
|
||||
<para>Language specific single C chars character sets
|
||||
(see &man.multibyte.3;), e.g.
|
||||
ISO-8859-1, ISO-8859-15, KOI8-R, CP437.</para>
|
||||
ISO8859-1, ISO8859-15, KOI8-R, CP437.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -197,8 +195,7 @@
|
|||
url="http://www.iana.org/assignments/character-sets">IANA Registry</ulink>.</para>
|
||||
|
||||
<note>
|
||||
<para>FreeBSD versions 4.5 and up use X11-compatible locale
|
||||
encodings instead.</para>
|
||||
<para>&os; use X11-compatible locale encodings instead.</para>
|
||||
</note>
|
||||
|
||||
</sect2>
|
||||
|
@ -326,6 +323,14 @@ me:\
|
|||
:lang=de_DE.ISO8859-1:\
|
||||
:tc=default:</programlisting>
|
||||
|
||||
<para>Before changing users Login Classes execute
|
||||
the following command</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen>
|
||||
|
||||
<para>to make new configuration in
|
||||
<filename>/etc/login.conf</filename> visible to the system.</para>
|
||||
|
||||
<bridgehead renderas=sect4>Changing Login Classes with &man.vipw.8;</bridgehead>
|
||||
|
||||
<indexterm>
|
||||
|
@ -487,13 +492,8 @@ keychange="<replaceable>fkey_number sequence</replaceable>"</programlisting>
|
|||
<para>By default the mouse cursor of the &man.syscons.4; driver occupies the
|
||||
0xd0-0xd3 range in the character set. If your language uses this
|
||||
range, you need to move the cursor's range outside of it. To enable
|
||||
the workaround for FreeBSD versions before 5.0, insert the following
|
||||
line into your kernel configuration:</para>
|
||||
|
||||
<programlisting>options SC_MOUSE_CHAR=0x03</programlisting>
|
||||
|
||||
<para>For FreeBSD versions 4.4 and up insert the following line
|
||||
into <filename>/etc/rc.conf</filename>:</para>
|
||||
the workaround for &os;, add the following line to
|
||||
<filename>/etc/rc.conf</filename>:</para>
|
||||
|
||||
<programlisting>mousechar_start=3</programlisting>
|
||||
|
||||
|
@ -522,17 +522,17 @@ keychange="<replaceable>fkey_number sequence</replaceable>"</programlisting>
|
|||
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>ISO-8859-1 or ISO-8859-15</entry>
|
||||
<entry>ISO8859-1 or ISO8859-15</entry>
|
||||
<entry><literal>cons25l1</literal></entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>ISO-8859-2</entry>
|
||||
<entry>ISO8859-2</entry>
|
||||
<entry><literal>cons25l2</literal></entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>ISO-8859-7</entry>
|
||||
<entry>ISO8859-7</entry>
|
||||
<entry><literal>cons25l7</literal></entry>
|
||||
</row>
|
||||
|
||||
|
@ -728,19 +728,14 @@ keychange="<replaceable>fkey_number sequence</replaceable>"</programlisting>
|
|||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>For the FreeBSD versions before 5.0 add the following line
|
||||
to your kernel configuration file:</para>
|
||||
|
||||
<programlisting>options SC_MOUSE_CHAR=0x03</programlisting>
|
||||
|
||||
<para>For FreeBSD versions 4.4 and up insert the following
|
||||
line into <filename>/etc/rc.conf</filename>:</para>
|
||||
<para>Add the following line
|
||||
to your <filename>/etc/rc.conf</filename> file:</para>
|
||||
|
||||
<programlisting>mousechar_start=3</programlisting>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Use following settings in
|
||||
<para>Also, use following settings in
|
||||
<filename>/etc/rc.conf</filename>:</para>
|
||||
|
||||
<programlisting>keymap="ru.koi8-r"
|
||||
|
@ -804,16 +799,6 @@ font8x8="cp866-8x8"</programlisting>
|
|||
<listitem>
|
||||
<para>Do <link linkend="setting-locale">non-X locale
|
||||
setup</link> first as described.</para>
|
||||
|
||||
<note>
|
||||
<para><anchor id="russian-note">The Russian KOI8-R locale
|
||||
may not work with old <application>&xfree86;</application> releases (lower than 3.3).
|
||||
<application>&xorg;</application> is now the default
|
||||
version of the X Window System on FreeBSD.
|
||||
This should not be an
|
||||
issue unless you are using an old version of
|
||||
FreeBSD.</para>
|
||||
</note>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -839,15 +824,7 @@ FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi"</programlisting>
|
|||
<listitem>
|
||||
<para>To activate a Russian keyboard, add the following to the
|
||||
<literal>"Keyboard"</literal> section of your
|
||||
<filename>XF86Config</filename> file.</para>
|
||||
|
||||
<para>For <application>&xfree86; 3.X</application>:</para>
|
||||
|
||||
<programlisting>XkbLayout "ru"
|
||||
XkbOptions "grp:caps_toggle"</programlisting>
|
||||
|
||||
<para>For <application>&xorg;</application> (or
|
||||
<application>&xfree86; 4.X</application>):</para>
|
||||
<filename>xorg.conf</filename> file.</para>
|
||||
|
||||
<programlisting>Option "XkbLayout" "us,ru"
|
||||
Option "XkbOptions" "grp:toggle"</programlisting>
|
||||
|
@ -867,23 +844,13 @@ Option "XkbOptions" "grp:toggle"</programlisting>
|
|||
<para>If you have <quote>&windows;</quote> keys on your keyboard,
|
||||
and notice that some non-alphabetical keys are mapped
|
||||
incorrectly in RUS mode, add the following line in your
|
||||
<filename>XF86Config</filename> file.</para>
|
||||
|
||||
<para>For <application>&xfree86; 3.X</application>:</para>
|
||||
|
||||
<programlisting>XkbVariant "winkeys"</programlisting>
|
||||
|
||||
<para>For <application>&xorg;</application> (or
|
||||
<application>&xfree86; 4.X</application>):</para>
|
||||
<filename>xorg.conf</filename> file.</para>
|
||||
|
||||
<programlisting>Option "XkbVariant" ",winkeys"</programlisting>
|
||||
|
||||
<note>
|
||||
<para>The Russian XKB keyboard may not work with old <application>&xfree86;</application>
|
||||
versions, see the <link linkend="russian-note">above
|
||||
note</link> for more information. The Russian XKB
|
||||
keyboard may also not work with non-localized
|
||||
applications as well.</para>
|
||||
<para>The Russian XKB keyboard may not work with non-localized
|
||||
applications.</para>
|
||||
</note>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
|
|
@ -2,21 +2,19 @@
|
|||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
Original revision: 1.407
|
||||
Original revision: 1.420
|
||||
-->
|
||||
|
||||
<appendix id="mirrors">
|
||||
<title>¨ú±o FreeBSD</title>
|
||||
<title>取得 FreeBSD 的方式</title>
|
||||
|
||||
<sect1 id="mirrors-cdrom">
|
||||
<title>CDROM ¤Î DVD Publishers</title>
|
||||
<title>CDROM 及 DVD 發行商</title>
|
||||
|
||||
<sect2>
|
||||
<title>Retail Boxed Products</title>
|
||||
<title>盒裝產品的零售處:</title>
|
||||
|
||||
<para>FreeBSD is available as a boxed product (FreeBSD CDs,
|
||||
additional software, and printed documentation) from several
|
||||
retailers:</para>
|
||||
<para>FreeBSD 盒裝產品(含 FreeBSD 光碟及其他一些軟體、書面文件)的零售業者:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
@ -36,10 +34,9 @@
|
|||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>CD and DVD Sets</title>
|
||||
<title>CD 及 DVD 合集</title>
|
||||
|
||||
<para>FreeBSD CD and DVD sets are available from many online
|
||||
retailers:</para>
|
||||
<para>FreeBSD 光碟(CD 及 DVD)的網路零售業者:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
@ -63,18 +60,6 @@
|
|||
</address>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<address>
|
||||
<otheraddr>fastdiscs.com</otheraddr>
|
||||
<street>6 Eltham Close</street>
|
||||
<city>Leeds</city>, <postcode>LS6 2TY</postcode>
|
||||
<country>United Kingdom</country>
|
||||
Phone: <phone>+44 870 1995 171</phone>
|
||||
Email: <email>sales@fastdiscs.com</email>
|
||||
WWW: <otheraddr><ulink url="http://fastdiscs.com/freebsd/"></ulink></otheraddr>
|
||||
</address>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<address>
|
||||
<otheraddr>FreeBSD Mall, Inc.</otheraddr>
|
||||
|
@ -185,10 +170,9 @@
|
|||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Distributors</title>
|
||||
<title>經銷商(Distributors)</title>
|
||||
|
||||
<para>If you are a reseller and want to carry FreeBSD CDROM products,
|
||||
please contact a distributor:</para>
|
||||
<para>若你是區域經銷商,並想代理經銷 FreeBSD 光碟產品的話,請與下列的代理商聯繫:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
@ -256,7 +240,7 @@
|
|||
</sect1>
|
||||
|
||||
<sect1 id="mirrors-ftp">
|
||||
<title>FTP Sites</title>
|
||||
<title>FTP 站</title>
|
||||
|
||||
<para>The official sources for FreeBSD are available via anonymous FTP
|
||||
from a worldwide set of mirror sites. The site
|
||||
|
@ -292,7 +276,7 @@
|
|||
<title>Anonymous CVS</title>
|
||||
|
||||
<sect2>
|
||||
<title><anchor id="anoncvs-intro">Introduction</title>
|
||||
<title><anchor id="anoncvs-intro">anoncvs 簡介</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>CVS</primary>
|
||||
|
@ -359,37 +343,37 @@
|
|||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><emphasis>Austria</emphasis>:
|
||||
<para><emphasis>Austria(奧地利)</emphasis>:
|
||||
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
|
||||
(Use <command>cvs login</command> and enter any
|
||||
password when prompted.)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>France</emphasis>:
|
||||
<para><emphasis>France(法國)</emphasis>:
|
||||
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
|
||||
(pserver (password <quote>anoncvs</quote>), ssh (no password))
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>Germany</emphasis>:
|
||||
<para><emphasis>Germany(德國)</emphasis>:
|
||||
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
|
||||
(Use <command>cvs login</command> and enter the password
|
||||
<quote>anoncvs</quote> when prompted.)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>Germany</emphasis>:
|
||||
<para><emphasis>Germany(德國)</emphasis>:
|
||||
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
|
||||
(rsh, pserver, ssh, ssh/2022)
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>Japan</emphasis>:
|
||||
<para><emphasis>Japan(日本)</emphasis>:
|
||||
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
|
||||
(Use <command>cvs login</command> and enter the password
|
||||
<quote>anoncvs</quote> when prompted.)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>USA</emphasis>:
|
||||
<para><emphasis>USA(美國)</emphasis>:
|
||||
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
|
||||
(ssh only - no password)</para>
|
||||
|
||||
|
@ -398,7 +382,7 @@ SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_
|
|||
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><emphasis>USA</emphasis>:
|
||||
<para><emphasis>USA(美國)</emphasis>:
|
||||
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ssh only - no
|
||||
password)</para>
|
||||
|
||||
|
@ -838,7 +822,7 @@ Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known host
|
|||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Taiwan/R.O.C.</term>
|
||||
<term>Taiwan/R.O.C.(台灣/中華民國)</term>
|
||||
|
||||
<listitem>
|
||||
<itemizedlist>
|
||||
|
@ -867,7 +851,7 @@ Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known host
|
|||
<title>Using CVSup</title>
|
||||
|
||||
<sect2 id="cvsup-intro">
|
||||
<title>Introduction</title>
|
||||
<title>CVSup 簡介</title>
|
||||
|
||||
<para><application>CVSup</application> is a software package for
|
||||
distributing and updating source trees from a master CVS
|
||||
|
@ -2023,6 +2007,13 @@ doc/zh_*</screen>
|
|||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><literal>projects-all release=cvs</literal></term>
|
||||
<listitem>
|
||||
<para>Sources for the FreeBSD projects repository.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><literal>src-all release=cvs</literal></term>
|
||||
|
||||
|
@ -2339,7 +2330,7 @@ doc/zh_*</screen>
|
|||
<title>Using Portsnap</title>
|
||||
|
||||
<sect2 id="portsnap-intro">
|
||||
<title>Introduction</title>
|
||||
<title>Portsnap 簡介</title>
|
||||
|
||||
<para><application>Portsnap</application> is a system for securely
|
||||
distributing the &os; ports tree. Approximately once an hour,
|
||||
|
@ -2557,14 +2548,14 @@ doc/zh_*</screen>
|
|||
<listitem>
|
||||
<para>The line of development for FreeBSD-6.X, also known
|
||||
as FreeBSD 6-STABLE</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_6_1</term>
|
||||
|
||||
<listitem>
|
||||
<para>The release branch for FreeBSD-6.1, used only for
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_6_1</term>
|
||||
|
||||
<listitem>
|
||||
<para>The release branch for FreeBSD-6.1, used only for
|
||||
security advisories and other critical fixes.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -2587,6 +2578,15 @@ doc/zh_*</screen>
|
|||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_5_5</term>
|
||||
|
||||
<listitem>
|
||||
<para>The release branch for FreeBSD-5.5, used only
|
||||
for security advisories and other critical fixes.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_5_4</term>
|
||||
|
||||
|
@ -2762,6 +2762,14 @@ doc/zh_*</screen>
|
|||
tagged with any special name for releases.</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>RELENG_6_1_0_RELEASE</term>
|
||||
|
||||
<listitem>
|
||||
<para>FreeBSD 6.1</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_6_0_0_RELEASE</term>
|
||||
|
||||
|
@ -2770,6 +2778,14 @@ doc/zh_*</screen>
|
|||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_5_5_0_RELEASE</term>
|
||||
|
||||
<listitem>
|
||||
<para>FreeBSD 5.5</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELENG_5_4_0_RELEASE</term>
|
||||
|
||||
|
|
|
@ -43,8 +43,7 @@
|
|||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Methods to test that your card is working using
|
||||
sample applications.</para>
|
||||
<para>如何運用樣本程式,以測試音效卡是否正常運作。</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -52,15 +51,15 @@
|
|||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to playback and encode MP3s and other audio.</para>
|
||||
<para>如何播放、錄製 MP3 及其他聲音檔案格式。</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How video is supported by the X server.</para>
|
||||
<para>X server 是如何支援顯示卡。</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Some video player/encoder ports which give good results.</para>
|
||||
<para>Ports Collections 內有哪些好用的影像播放、錄製軟體。</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -89,11 +88,8 @@
|
|||
</itemizedlist>
|
||||
|
||||
<warning>
|
||||
<para>Trying to mount audio CDs
|
||||
with the &man.mount.8; command will
|
||||
result in an error, at least, and a <emphasis>kernel
|
||||
panic</emphasis>, at worst. These media have specialized
|
||||
encodings which differ from the usual ISO-filesystem.</para>
|
||||
<para>如果要用 &man.mount.8; 指令來 mount 音樂光碟的話,通常會發生錯誤,
|
||||
甚至導致 <emphasis>kernel panic</emphasis>。 這是因為音樂光碟是特殊編碼,而非一般的 ISO 檔案系統之故。</para>
|
||||
</warning>
|
||||
|
||||
</sect1>
|
||||
|
@ -121,14 +117,13 @@
|
|||
<title>ł]ŠwľŽÄĽd</title>
|
||||
|
||||
<sect2 id="sound-device">
|
||||
<title>Configuring the System</title>
|
||||
<title>設定系統</title>
|
||||
|
||||
<indexterm><primary>PCI</primary></indexterm>
|
||||
<indexterm><primary>ISA</primary></indexterm>
|
||||
<indexterm><primary>sound cards</primary></indexterm>
|
||||
<para>Before you begin, you should know the model of the card you
|
||||
have, the chip it uses, and whether it is a PCI or ISA card.
|
||||
FreeBSD supports a wide variety of both PCI and ISA cards.
|
||||
<para>開始設定之前,必須先知道你的音效卡型號、晶片為何,以及是 PCI 或 ISA 規格。
|
||||
FreeBSD 有支援許多種的 PCI、ISA 音效卡,
|
||||
Check the supported audio devices list of the <ulink
|
||||
url="&rel.current.hardware;">Hardware Notes</ulink> to see if
|
||||
your card is supported. This document will also mention which
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
Original revision: 1.252
|
||||
Original revision: 1.258
|
||||
-->
|
||||
|
||||
<chapter id="ports">
|
||||
|
@ -334,12 +334,10 @@ R-deps: </screen>
|
|||
<indexterm>
|
||||
<primary><command>pkg_add</command></primary>
|
||||
</indexterm>
|
||||
<para>You can use the &man.pkg.add.1; utility to install a
|
||||
FreeBSD software package from a local file or from a server on
|
||||
the network.</para>
|
||||
<para>可以用 &man.pkg.add.1; 從本機上或者透過網路來安裝任一 FreeBSD package。</para>
|
||||
|
||||
<example>
|
||||
<title>手動下載、安裝 Package (譯者chinsan: 因比較不便而不建議這麼做)</title>
|
||||
<title>手動下載、安裝 Package (譯者chinsan: 這方法比較不便,建議改用 pkg_add -r )</title>
|
||||
|
||||
<screen>&prompt.root; <userinput>ftp -a <replaceable>ftp2.FreeBSD.org</replaceable></userinput>
|
||||
Connected to ftp2.FreeBSD.org.
|
||||
|
@ -515,8 +513,7 @@ docbook =
|
|||
<primary>packages</primary>
|
||||
<secondary>deleting</secondary>
|
||||
</indexterm>
|
||||
<para>To remove a previously installed software package, use the
|
||||
&man.pkg.delete.1; utility.
|
||||
<para>若要移除已裝的軟體,那麼請多利用 &man.pkg.delete.1; 工具,比如:
|
||||
</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
|
||||
|
@ -524,10 +521,8 @@ docbook =
|
|||
|
||||
<sect2>
|
||||
<title>其他細節部份</title>
|
||||
<para>All package information is stored within the
|
||||
<filename>/var/db/pkg</filename> directory. The installed
|
||||
file list and descriptions of each package can be found within
|
||||
files in this directory.
|
||||
<para>所有已裝的 package 資訊都會存到 <filename>/var/db/pkg</filename> 目錄內,
|
||||
在該目錄下可以找到記載已裝的軟體檔案清單及該軟體簡介的檔案。
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
@ -535,56 +530,49 @@ docbook =
|
|||
<sect1 id="ports-using">
|
||||
<title>使用 Ports 管理機制</title>
|
||||
|
||||
<para>The following sections provide basic instructions on using the
|
||||
Ports Collection to install or remove programs from your
|
||||
system. The detailed description of available <command>make</command>
|
||||
targets and environment variables is available in &man.ports.7;.</para>
|
||||
<para>下面我們會介紹如何使用 Ports Collection 來安裝、移除軟體的基本用法。
|
||||
至於其他可用的 <command>make</command> 詳細用法與環境設定,可參閱 &man.ports.7;。</para>
|
||||
|
||||
<sect2 id="ports-tree">
|
||||
<title>記得安裝 Ports Collection</title>
|
||||
|
||||
<para>Before you can install ports, you must first obtain the
|
||||
Ports Collection—which is essentially a set of
|
||||
<filename>Makefiles</filename>, patches, and description files
|
||||
placed in <filename>/usr/ports</filename>.
|
||||
<para>在安裝任一 ports 之前,必須先裝上
|
||||
Ports Collection —— 它主要是由 <filename>/usr/ports</filename> 內一堆
|
||||
<filename>Makefiles</filename>, patches 以及一些軟體簡介檔所組成的。
|
||||
</para>
|
||||
|
||||
<para>When installing your FreeBSD system,
|
||||
<application>sysinstall</application> asked if you would like
|
||||
to install the Ports Collection. If you chose no, you can
|
||||
follow these instructions to obtain the ports
|
||||
collection:</para>
|
||||
<para>在裝 FreeBSD 時,若忘了在 <application>sysinstall</application> 內勾選要裝 Ports Collection 的話,
|
||||
沒關係,可以照下列方式來安裝 ports collection:</para>
|
||||
|
||||
<procedure>
|
||||
<title>CVSup 方式</title>
|
||||
|
||||
<para>This is a quick method for getting and keeping your copy of the
|
||||
Ports Collection up to date using <application>CVSup</application>.
|
||||
If you want to learn more about <application>CVSup</application>, see
|
||||
<link linkend="cvsup">Using CVSup</link>.</para>
|
||||
<para>使用 <application>CVSup</application> 是安裝、更新 Ports Collection 的快速方法之一。
|
||||
若想更瞭解 <application>CVSup</application> 用法的話,請參閱 <link linkend="cvsup">使用 CVSup</link>。</para>
|
||||
|
||||
<para>第一次跑 <application>CVSup</application> 之前,請先確認 <filename role="directory">/usr/ports</filename>
|
||||
是空的! 若你已經裝了 Ports Collection ,但又自行加上其他 patch 檔,那麼 <application>CVSup</application>
|
||||
並不會刪除你自行加上的 patch 檔,這樣可能會導致要安裝某些軟體時,發生 patch 失敗或編譯失敗。</para>
|
||||
|
||||
<step>
|
||||
<para>Install the <filename
|
||||
role="package">net/cvsup-without-gui</filename> package:</para>
|
||||
<para>安裝 <filename role="package">net/cvsup-without-gui</filename> package:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg_add -r cvsup-without-gui</userinput></screen>
|
||||
|
||||
<para>See <link
|
||||
linkend="cvsup-install">CVSup Installation</link> (<xref
|
||||
linkend="cvsup-install">) for more details.</para>
|
||||
<para>細節用法請參閱 <link linkend="cvsup-install">安裝 CVSup</link>(<xref
|
||||
linkend="cvsup-install">)。</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Run <command>cvsup</command>:</para>
|
||||
<para>執行 <command>cvsup</command>:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cvsup -L 2 -h <replaceable>cvsup.FreeBSD.org</replaceable> /usr/share/examples/cvsup/ports-supfile</userinput></screen>
|
||||
<screen>&prompt.root; <userinput>cvsup -L 2 -h <replaceable>cvsup.tw.FreeBSD.org</replaceable> /usr/share/examples/cvsup/ports-supfile</userinput></screen>
|
||||
|
||||
<para>Change
|
||||
<replaceable>cvsup.FreeBSD.org</replaceable> to a
|
||||
<application>CVSup</application> server near you. See
|
||||
<link linkend="cvsup-mirrors">CVSup Mirrors</link> (<xref
|
||||
linkend="cvsup-mirrors">) for a complete listing of mirror
|
||||
sites.</para>
|
||||
<para>請把
|
||||
<replaceable>cvsup.tw.FreeBSD.org</replaceable> 請改成離你比較近(快)的
|
||||
<application>CVSup</application> Server。
|
||||
這部分可以參閱完整的 <link linkend="cvsup-mirrors">CVSup mirror</link> 站列表(<xref
|
||||
linkend="cvsup-mirrors">)。</para>
|
||||
|
||||
<note>
|
||||
<para>One may want to use his own
|
||||
|
@ -1094,11 +1082,9 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
|
|||
<primary>portupgrade</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>The <application>portupgrade</application> utility is designed
|
||||
to easily upgrade installed ports. It is available from the <filename
|
||||
role="package">sysutils/portupgrade</filename> port. Install it like
|
||||
any other port, using the <command>make <makevar>install
|
||||
clean</makevar></command> command:</para>
|
||||
<para><application>portupgrade</application> 可以輕鬆升級已裝的軟體。
|
||||
該工具可從 <filename role="package">sysutils/portupgrade</filename> port 安裝,
|
||||
安裝方式就如同其他 port 一樣,用 <command>make <makevar>install clean</makevar></command> 指令就可以了:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/ports/sysutils/portupgrade</userinput>
|
||||
&prompt.root; <userinput>make install clean</userinput></screen>
|
||||
|
@ -1148,37 +1134,32 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
|
|||
<primary>portmanager</primary>
|
||||
</indexterm>
|
||||
|
||||
<para><application>Portmanager</application> is another utility for
|
||||
easy upgrading of installed ports. It is available from the
|
||||
<filename role="package">sysutils/portmanager</filename> port:</para>
|
||||
<para><application>Portmanager</application> 也可以用來輕鬆升級已裝的軟體。
|
||||
該工具可從 <filename role="package">sysutils/portmanager</filename> port 安裝:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd <filename role="directory">/usr/ports/sysutils/portmanager</filename></userinput>
|
||||
&prompt.root; <userinput>make install clean</userinput></screen>
|
||||
|
||||
<para>All the installed ports can be upgraded using this simple
|
||||
command:</para>
|
||||
<para>所有已裝的軟體,都可以輕鬆用類似下列指令來升級:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portmanager -u</userinput></screen>
|
||||
|
||||
<para>You can add the <option>-ui</option> flag to get asked for
|
||||
confirmation of every step <application>Portmanager</application>
|
||||
will perform. <application>Portmanager</application> can also be
|
||||
used to install new ports on the system. Unlike the usual
|
||||
<command>make install clean</command> command, it will upgrade all
|
||||
the dependencies prior to building and installing the
|
||||
selected port.</para>
|
||||
<para>此外,使用參數可以改為 <option>-ui</option>,如此一來 <application>Portmanager</application>
|
||||
在升級一些有特殊選項的軟體時,就會詢問該如何升級。
|
||||
<application>Portmanager</application> 也可以用來裝新 port。與以往常用的
|
||||
<command>make install clean</command> 指令不同之處在於:它會先升級你要裝的 port 所相依的所有 ports,
|
||||
然後才開始編譯、安裝要裝的 port。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portmanager <replaceable>x11/gnome2</replaceable></userinput></screen>
|
||||
|
||||
<para>If there are any problems regarding the dependencies for the
|
||||
selected port, you can use <application>Portmanager</application> to
|
||||
rebuild all of them in the correct order. Once finished, the
|
||||
problematic port will be rebuilt too.</para>
|
||||
<para>若要裝的 port 之軟體相依關係有問題時,也可以用 <application>Portmanager</application>
|
||||
使它們重歸正軌。而 <application>Portmanager</application> 解決相依問題完畢之後,該 port
|
||||
也會重新編譯,以因應正確的相依關係。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portmanager <replaceable>graphics/gimp</replaceable> -f</userinput></screen>
|
||||
|
||||
<para>For more information see
|
||||
<application>Portmanager</application>'s manual page.</para>
|
||||
<para>其他運用方式,請參閱
|
||||
<application>Portmanager</application> 的線上手冊。</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
|
@ -1189,12 +1170,10 @@ ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
|
|||
<primary>ports</primary>
|
||||
<secondary>disk-space</secondary>
|
||||
</indexterm>
|
||||
<para>Using the Ports Collection will use up disk
|
||||
space over time. After building and installing software from the
|
||||
ports, you should always remember to clean up
|
||||
the temporary <filename class="directory">work</filename> directories using the <command>make
|
||||
<makevar>clean</makevar></command> command. You can sweep the whole
|
||||
Ports Collection with the following command:</para>
|
||||
<para>因為使用 Ports Collection 遲早可能會用光硬碟空間,
|
||||
所以在裝完軟體後,記得要以 <command>make <makevar>clean</makevar></command>
|
||||
指令來清除臨時的 <filename class="directory">work</filename> 目錄。
|
||||
此外,可以用下列指令來清除整個 Ports Collection 內的臨時目錄:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portsclean -C</userinput></screen>
|
||||
|
||||
|
|
Loading…
Reference in a new issue