diff options
author | Ruey-Cherng Yu <rcyu@FreeBSD.org> | 2017-06-02 18:26:37 +0000 |
---|---|---|
committer | Ruey-Cherng Yu <rcyu@FreeBSD.org> | 2017-06-02 18:26:37 +0000 |
commit | 92c9803a58a44191bff39322572bc960529b0c19 (patch) | |
tree | 94bb961ad301b9f26e881bde5b9d8d201ebf7d44 | |
parent | 952ff021bca34278ec9ef73da185d032039a6e78 (diff) | |
download | doc-92c9803a58a44191bff39322572bc960529b0c19.tar.gz doc-92c9803a58a44191bff39322572bc960529b0c19.zip |
- Update po file with newest handbook document.
- Translation of the following sections:
13.3. One-time Passwords
13.8. OpenSSH
13.14. Shared Administration with Sudo
21.5. FreeBSD as a Guest on VirtualBox™
21.6. FreeBSD as a Host with VirtualBox
23.5. Updating FreeBSD from Source
23.6. Tracking for Multiple Machines
Submitted by: cwlin@gmail.com
Differential Revision: https://reviews.freebsd.org/D10888
Notes
Notes:
svn path=/head/; revision=50316
-rw-r--r-- | zh_TW.UTF-8/books/handbook/book.xml | 2127 | ||||
-rw-r--r-- | zh_TW.UTF-8/books/handbook/zh_TW.po | 25234 |
2 files changed, 13826 insertions, 13535 deletions
diff --git a/zh_TW.UTF-8/books/handbook/book.xml b/zh_TW.UTF-8/books/handbook/book.xml index aaf2acee55..99017642e8 100644 --- a/zh_TW.UTF-8/books/handbook/book.xml +++ b/zh_TW.UTF-8/books/handbook/book.xml @@ -129,6 +129,7 @@ <!ENTITY pgpkey.davide SYSTEM "davide.key"> <!ENTITY pgpkey.davidxu SYSTEM "davidxu.key"> <!ENTITY pgpkey.db SYSTEM "db.key"> +<!ENTITY pgpkey.dbaio SYSTEM "dbaio.key"> <!ENTITY pgpkey.dbn SYSTEM "dbn.key"> <!ENTITY pgpkey.dchagin SYSTEM "dchagin.key"> <!ENTITY pgpkey.dcs SYSTEM "dcs.key"> @@ -141,6 +142,7 @@ <!ENTITY pgpkey.demon SYSTEM "demon.key"> <!ENTITY pgpkey.den SYSTEM "den.key"> <!ENTITY pgpkey.des SYSTEM "des.key"> +<!ENTITY pgpkey.dexter SYSTEM "dexter.key"> <!ENTITY pgpkey.dfr SYSTEM "dfr.key"> <!ENTITY pgpkey.dhartmei SYSTEM "dhartmei.key"> <!ENTITY pgpkey.dhn SYSTEM "dhn.key"> @@ -164,6 +166,7 @@ <!ENTITY pgpkey.emax SYSTEM "emax.key"> <!ENTITY pgpkey.erj SYSTEM "erj.key"> <!ENTITY pgpkey.erwin SYSTEM "erwin.key"> +<!ENTITY pgpkey.eugen SYSTEM "eugen.key"> <!ENTITY pgpkey.fabient SYSTEM "fabient.key"> <!ENTITY pgpkey.fanf SYSTEM "fanf.key"> <!ENTITY pgpkey.farrokhi SYSTEM "farrokhi.key"> @@ -250,6 +253,7 @@ <!ENTITY pgpkey.johans SYSTEM "johans.key"> <!ENTITY pgpkey.jon SYSTEM "jon.key"> <!ENTITY pgpkey.jonathan SYSTEM "jonathan.key"> +<!ENTITY pgpkey.joneum SYSTEM "joneum.key"> <!ENTITY pgpkey.josef SYSTEM "josef.key"> <!ENTITY pgpkey.jpaetzel SYSTEM "jpaetzel.key"> <!ENTITY pgpkey.jrm SYSTEM "jrm.key"> @@ -412,6 +416,7 @@ <!ENTITY pgpkey.rafan SYSTEM "rafan.key"> <!ENTITY pgpkey.rakuco SYSTEM "rakuco.key"> <!ENTITY pgpkey.ray SYSTEM "ray.key"> +<!ENTITY pgpkey.rcyu SYSTEM "rcyu.key"> <!ENTITY pgpkey.rdivacky SYSTEM "rdivacky.key"> <!ENTITY pgpkey.rea SYSTEM "rea.key"> <!ENTITY pgpkey.rees SYSTEM "rees.key"> @@ -535,6 +540,7 @@ <!ENTITY pgpkey.wollman SYSTEM "wollman.key"> <!ENTITY pgpkey.woodsb02 SYSTEM "woodsb02.key"> <!ENTITY pgpkey.wosch SYSTEM "wosch.key"> +<!ENTITY pgpkey.wulf SYSTEM "wulf.key"> <!ENTITY pgpkey.wxs SYSTEM "wxs.key"> <!ENTITY pgpkey.xmj SYSTEM "xmj.key"> <!ENTITY pgpkey.xride SYSTEM "xride.key"> @@ -640,6 +646,7 @@ <year>2014</year> <year>2015</year> <year>2016</year> + <year>2017</year> <holder>The FreeBSD Documentation Project</holder> </copyright> @@ -1588,7 +1595,7 @@ <listitem> <para><link xlink:href="http://www.ixsystems.com/">iXsystems</link> <indexterm> <primary>iXsystems</primary> - </indexterm> - 統合存儲 (Unified Storage) 設備的 TrueNAS 產品線是以 FreeBSD 為基礎。除了該公司自己的商業產品外,iXsystems 也管理著 PC-BSD 和 FreeNAS 兩個開源計劃的開發。</para> + </indexterm> - 統合存儲 (Unified Storage) 設備的 TrueNAS 產品線是以 FreeBSD 為基礎。除了該公司自己的商業產品外,iXsystems 也管理著 TrueOS 和 FreeNAS 兩個開源計劃的開發。</para> </listitem> <listitem> @@ -1616,9 +1623,13 @@ </listitem> <listitem> - <para><link xlink:href="http://www.sandvine.com/">Sandvine</link> <indexterm> + <para xml:lang="en"><link xlink:href="http://www.sandvine.com/">Sandvine</link> + <indexterm xml:lang="en"> <primary>Sandvine</primary> - </indexterm> - Sandvine 使用 FreeBSD 作為它們的高性能即時網路處理平台,來建立它們的智慧網路策略控制產品。</para> + </indexterm> - Sandvine uses FreeBSD as the basis of their + high performance real-time network processing platforms + that make up their intelligent network policy control + products.</para> </listitem> <listitem> @@ -1643,7 +1654,7 @@ <para><link xlink:href="https://www.stormshield.eu">Stormshield</link> <indexterm> <primary>Stormshield</primary> - </indexterm> - Stormshield 網路安全設備使用了硬體化版本的 FreeBSD 做為基礎,BSD 授權條款讓我們我們的智慧財產與系統可以整合,並同時回饋大量有趣的發展給社群。</para> + </indexterm> - Stormshield 網路安全設備使用了硬體化版本的 FreeBSD 做為基礎,BSD 授權條款讓他們可將其智慧財產與系統整合並同時回饋大量有趣的發展給社群。</para> </listitem> <listitem> @@ -1721,8 +1732,8 @@ </listitem> <listitem> - <para><link xlink:href="http://www.pcbsd.org/">PC-BSD</link> <indexterm> - <primary>PC-BSD</primary> + <para><link xlink:href="http://www.pcbsd.org/">TrueOS</link> <indexterm> + <primary>TrueOS</primary> </indexterm> - 訂製版本的 FreeBSD,裝備了給桌面使用者使用的圖型化工具來展示 FreeBSD 強大的功能給所有使用者,專門設計來緩解使用者在 Windows 與 OS X 間的過渡。</para> </listitem> @@ -2100,7 +2111,7 @@ <para>一般來說,本章所寫的安裝說明是針對 <trademark>i386</trademark> 和 <acronym>AMD64</acronym> 架構。如果可以用於其他平台,將會列表說明。 安裝程式和本章所敘述的內容可能會有些微差異,所以請將本章視為通用的指引,而不是完全照著來做。</para> <note> - <para>喜歡用圖形化安裝程式安裝 FreeBSD 的使用者, 可能會對 <application>pc-sysinstall</application> 有興趣,這是 PC-BSD 計畫所使用的。 他可以用來安裝圖形化桌面 (PC-BSD) 或是指令列版本的 FreeBSD。 細節請參考 PC-BSD 使用者 Handbook (<link xlink:href="http://wiki.pcbsd.org/index.php/Colophon">http://wiki.pcbsd.org/index.php/Colophon</link>)。</para> + <para>喜歡用圖形化安裝程式安裝 FreeBSD 的使用者, 可能會對 <application>pc-sysinstall</application> 有興趣,這是 TrueOS 計畫所使用的。 他可以用來安裝圖形化桌面 (TrueOS) 或是指令列版本的 FreeBSD。 細節請參考 TrueOS 使用者 Handbook (<link xlink:href="https://www.trueos.org/handbook/trueos.html">https://www.trueos.org/handbook/trueos.html</link>)。</para> </note> <para>讀完這章,您將了解︰</para> @@ -2356,7 +2367,7 @@ <step> <title>取得 <application>Image Writer <trademark class="registered">Windows</trademark> 版</application></title> - <para><application>Image Writer <trademark class="registered">Windows</trademark> 版</application> 是一個免費的應用程式,可以正確地將映像檔寫入隨身碟。 從 <uri xlink:href="https://launchpad.net/win32-image-writer/">https://launchpad.net/win32-image-writer/</uri> 下載,並解壓縮到一個資料夾。</para> + <para><application>Image Writer <trademark class="registered">Windows</trademark> 版</application> 是一個免費的應用程式,可以正確地將映像檔寫入隨身碟。可從 <uri xlink:href="https://sourceforge.net/projects/win32diskimager/">https://sourceforge.net/projects/win32diskimager/</uri> 下載,並解壓縮到一個資料夾。</para> </step> <step> @@ -2721,7 +2732,7 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen> <para>有時在 <filename>/var/tmp</filename> 會需要較多的空間,當新軟體安裝,套件工具會從套件中取出暫存的複本置於 <filename>/var/tmp</filename>。若在 <filename>/var/tmp</filename> 沒有足夠的空間,要安裝大型軟體套件,例如 <application>Firefox</application>, <application>Apache OpenOffice</application> 或 <application>LibreOffice</application> 會很困難。</para> </note> - <para><filename>/usr</filename> 分割區會保存許多支持系統運作的檔案,包含 FreeBSD Port 套件集以及系統原始碼。這個分割區建議至少要有 2 GB 的空間。</para> + <para><filename>/usr</filename> 分割區保存了許多支持系統運作的檔案,包含 FreeBSD Port 套件集以及系統原始碼,這個分割區建議至少要有 2 GB 的空間。</para> <para>在規劃分割區大小時,請牢記空間需求,當因某個分割區空間不足時要改使用其他分割區時會很麻煩。</para> @@ -2982,7 +2993,7 @@ Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen> </mediaobject> </figure> - <para>選擇 <keycap>T</keycap> 來設定儲存池類型 (<literal>Pool Type</literal>) 以及要組成儲存池的磁碟。自動 <acronym>ZFS</acronym> 安裝程式目前僅支援建立單一頂層 vdev,除了在串連 (Stripe) 模式。要建立更複雜的儲存池,需使用 <xref linkend="bsdinstall-part-shell"/> 的操作來建立儲存池。安裝程式支援建立各種儲存池類型,包含串連 Stripe (不建議,沒有備援功能)、鏡像 Mirror (效能較佳,但可用空間較少) 以及 RAID-Z 1, 2, 與 3 (分別有能力承受同時 1, 2 與 3 個磁碟的損壞)。在選擇儲存池類型時會有提示顯示在螢幕的下方,提示所需要的磁碟數以及在使用 RAID-Z 時,每個配置最佳的磁碟數。</para> + <para>選擇 <keycap>T</keycap> 來設定儲存池類型 (<literal>Pool Type</literal>) 以及要組成儲存池的磁碟。自動 <acronym>ZFS</acronym> 安裝程式目前僅支援建立單一頂層 vdev,除了在串連 (Stripe) 模式。要建立更複雜的儲存池,需使用 <xref linkend="bsdinstall-part-shell"/> 的操作來建立儲存池。安裝程式支援建立各種儲存池類型,包含串連 Stripe (不建議,沒有備援功能)、鏡像 Mirror (效能較佳,但可用空間較少) 以及 RAID-Z 1, 2, 與 3 (分別有能力承受同時 1, 2 與 3 個磁碟的損壞)。在選擇儲存池類型時會在螢幕的下方提示所需的磁碟數量,以及在使用 RAID-Z 時,每種配置最佳的磁碟數。</para> <figure xml:id="bsdinstall-zfs-vdev_type"> <title><acronym>ZFS</acronym> 儲存池類型</title> @@ -6127,7 +6138,7 @@ subversion-static-<replaceable>1.8.8_2</replaceable> subversion16-<replaceable>1.6.23_4</replaceable> subversion17-<replaceable>1.7.16_2</replaceable></screen> - <para>套件名稱包含版本編號,且若 Port 使用 Python 為基礎,也會包含用來編譯該套件的 Python 版本。有些 Port 會有多個版本可使用,如 <application>subversion</application> ,因編譯選項不同,有多個版本可用,這個例子中即指靜態連結版本的 <application>subversion</application>。在指定要安裝的套件時,最好使用 Port 來源來指定該應用程式,Port 來源是指應用程式在 Port 樹中的路徑。再輸入一次 <command>pkg search</command> 並加上 <option>-o</option> 來列出每個套件來源:</para> + <para>套件名稱包含版本編號,且若 Port 使用 Python 為基礎,也會包含用來編譯該套件的 Python 版本。有些 Port 會有多個版本可使用,如 <application>Subversion</application> ,因編譯選項不同,有多個版本可用,這個例子中即指靜態連結版本的 <application>Subversion</application>。在指定要安裝的套件時,最好使用 Port 來源來指定該應用程式,Port 來源是指應用程式在 Port 樹中的路徑。再輸入一次 <command>pkg search</command> 並加上 <option>-o</option> 來列出每個套件來源:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg search -o <replaceable>subversion</replaceable></userinput> devel/git-subversion @@ -6218,7 +6229,7 @@ Info: Lists information about open files (similar to fstat(1))</screen> <screen xml:lang="en"><prompt>#</prompt> <userinput>/usr/sbin/pkg</userinput></screen> - <para>您必須有網際網路連線供啟動程式使用。</para> + <para>您必須有可用的網際網路連線供啟動程式使用方可成功。</para> <para>否則,要安裝 Port 套件,則須執行:</para> @@ -6577,7 +6588,7 @@ Deinstalling ca_root_nss-3.15.1_1... done</screen> <sect3> <title>自訂 Port 安裝</title> - <para>部份 Port 提供編譯選項,可用來開啟或關閉應用程式中的元件、安全選項、或其他允許自訂的項目。這類的應用程式例子包括 <package>www/firefox</package>, <package>security/gpgme</package> 以及 <package>mail/sylpheed-claws</package>。若 Port 相依的其他 Port 有可設定的選項時,預設的模式會提示使用者選擇選單中的選項,這可能會讓安裝的過程暫停讓使用者操作數次。要避免這個情況,可在 Port skeleton 中執行 <command>make config-recursive</command> 來一次設定所有選項。然後再執行 <command>make install [clean]</command> 編譯與安裝該 Port。</para> + <para>部份 Port 提供編譯選項,可用來開啟或關閉應用程式中的元件、安全選項、或其他允許自訂的項目。這類的應用程式例子包括 <package>www/firefox</package>, <package>security/gpgme</package> 以及 <package>mail/sylpheed-claws</package>。若 Port 相依的其他 Port 有可設定的選項時,預設的模式會提示使用者選擇選單中的選項,這可能會讓安裝的過程暫停讓使用者操作數次。要避免這個情況,可一次設定所有選項,只要在 Port skeleton 中執行 <command>make config-recursive</command>,然後再執行 <command>make install [clean]</command> 編譯與安裝該 Port。</para> <tip> <para>使用 <buildtarget>config-recursive</buildtarget> 時,會使用 <buildtarget>all-depends-list</buildtarget> Target 來收集所有要設定 Port 清單。建議執行 <command>make config-recursive</command> 直到所有相依的 Port 選項都已定義,直到 Port 的選項畫面不會再出現,來確定所有相依的選項都已經設定。</para> @@ -7085,7 +7096,7 @@ ports-mgmt/pkg <term>視窗管理程式 (Window Manager)</term> <listitem> - <para>X 並不規定螢幕上的視窗該長什麼樣、要如何移動滑鼠指標、 要用什麼鍵來在視窗切換、每個視窗的標題列長相,及是否該有關閉按鈕,等等。事實上,X 把這部分交給所謂的視窗管理程式來管理。可用的<link xlink:href="http://xwinman.org/">視窗管理程式有很多種</link>,每一種視窗管理程式都提供不同的使用介面風格:有些支援虛擬桌面,有些允許自訂組合鍵來管理桌面,有些有 <quote>開始</quote> 鈕,有些則是可更換佈景主題,可自行安裝新的佈景主題以更換外觀。 視窗管理程式可在 Port 套件集的 <filename>x11-wm</filename> 分類找到。</para> + <para>X 並不規定螢幕上的視窗該長什麼樣、要如何移動滑鼠指標、 要用什麼鍵來在視窗切換、每個視窗的標題列長相,及是否該有關閉按鈕,等等。事實上,X 把這部分交給所謂的視窗管理程式來管理。可用的<link xlink:href="http://www.xwinman.org/">視窗管理程式有很多種</link>,每一種視窗管理程式都提供不同的使用介面風格:有些支援虛擬桌面,有些允許自訂組合鍵來管理桌面,有些有 <quote>開始</quote> 鈕,有些則是可更換佈景主題,可自行安裝新的佈景主題以更換外觀。 視窗管理程式可在 Port 套件集的 <filename>x11-wm</filename> 分類找到。</para> <para>每個視窗管理程式也各有其不同的設定機制,有些需要手動修改設定檔, 而有的則可透過圖型化工具來完成大部分的設定工作。</para> </listitem> @@ -7773,10 +7784,7 @@ EndSection</programlisting> <para>編輯 <filename>local.conf</filename> 完之後,請確認有使用 <literal></fontconfig></literal> 標籤結尾,若沒有使用會讓所做的更改被忽略。</para> - <para xml:lang="en">Users can add personalized settings by creating their own - <filename>~/.config/fontconfig/fonts.conf</filename>. This - file uses the same <acronym>XML</acronym> format described - above.</para> + <para>使用者可透過建立自己的 <filename>~/.config/fontconfig/fonts.conf</filename> 來加入個人化的設定,此檔案使用與上述說明相同的 <acronym>XML</acronym> 格式。</para> <indexterm xml:lang="en"><primary>LCD screen</primary></indexterm> <indexterm xml:lang="en"><primary>Fonts</primary> @@ -8437,7 +8445,7 @@ EndSection</programlisting> <para>隨著 FreeBSD 優越的效能及穩定性越來越熱門,它同時適合作為每日使用的桌面系統。FreeBSD 套件或 Port 有超過 24,000 個可用的應用程式,可以簡單的建立一個自訂的桌面環境來執行各種不同的桌面應用程式。本章將示範如何安裝數個桌面應用程式,包含網頁瀏覽器、辦工軟體、文件閱覽程式以及財務軟體。</para> <note> - <para>比起重頭設定,更偏好安裝預先編譯好桌面環境的 FreeBSD 版本的使用者可參考 <link xlink:href="http://www.pcbsd.org/">pcbsd.org 網站</link></para> + <para>比起重頭設定與編譯,較偏好使用 FreeBSD 桌面環境已預先編譯好版本的使用者可參考 <link xlink:href="http://www.trueos.org/">trueos.org 網站</link>。</para> </note> <para>在閱讀這章之前,你必須了解如何:</para> @@ -9219,7 +9227,7 @@ EndSection</programlisting> <sect1 xml:id="multimedia-synopsis"> <title>概述</title> - <para>FreeBSD 廣泛地支援各種音效卡, 讓您可以享受來自電腦上的高傳真音質(Hi-Fi), 此外還包括了錄製和播放 MPEG Audio Layer 3 (<acronym>MP3</acronym>)、 Waveform Audio File (<acronym>WAV</acronym>)、Ogg Vorbis 以及其他許多種格式聲音的能力。同時 FreeBSD Port 套件集也包含了許多可讓您可以錄音、編修音效以及控制 MIDI 配備的應用程式。</para> + <para>FreeBSD 廣泛地支援各種音效卡, 讓使用者可以享受來自電腦上的高傳真音質(Hi-Fi), 此外還包括了錄製和播放 MPEG Audio Layer 3 (<acronym>MP3</acronym>)、 Waveform Audio File (<acronym>WAV</acronym>)、Ogg Vorbis 以及其他許多種格式聲音的能力。同時 FreeBSD Port 套件集也包含了許多可讓您可以錄音、編修音效以及控制 MIDI 配備的應用程式。</para> <para> FreeBSD 也能播放一般的視訊檔和 <acronym>DVD</acronym>。 FreeBSD Port 套件集中含有可編碼、轉換以及播放格種影像媒體的應用程式。</para> @@ -12930,7 +12938,7 @@ lp: <screen xml:lang="en"><prompt>#</prompt> <userinput>kldload linux</userinput></screen> - <para xml:lang="en">For 64-bit compatibility:</para> + <para>對 64-位元的相容性:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>kldload linux64</userinput></screen> @@ -12951,8 +12959,7 @@ lp: <programlisting xml:lang="en">linux_enable="YES"</programlisting> - <para xml:lang="en">On 64-bit machines, <filename>/etc/rc.d/abi</filename> will - automatically load the module for 64-bit emulation.</para> + <para>在 64-位元的機器上,<filename>/etc/rc.d/abi</filename> 會自動載入用來做 64-位元模擬的模組。</para> <indexterm><primary>核心選項</primary> <secondary>COMPAT_LINUX</secondary></indexterm> @@ -16924,7 +16931,7 @@ boot:</screen> <entry xml:lang="en">boot <optional><replaceable>-options</replaceable></optional> <optional><replaceable>kernelname</replaceable></optional></entry> - <entry>使用指定的選項或核心名稱立即啟動核心。由指令列指定核心名稱前必須先執行 <command>unload</command>,否則會使用先前載入過的核心。若 <emphasis>kernelname</emphasis> 不是完整的路徑則會搜尋 <emphasis>/boot/kernel</emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。</entry> + <entry>使用任何指定的選項或核心名稱立即啟動核心,要由指令列指定核心名稱必須先執行 <command>unload</command>,否則會使用先前載入過的核心。若 <emphasis>kernelname</emphasis> 不是完整的路徑則會搜尋 <emphasis>/boot/kernel</emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。</entry> </row> <row> @@ -17602,67 +17609,20 @@ cat changed <secondary>one-time passwords</secondary> </indexterm> - <para xml:lang="en">By default, FreeBSD includes support for One-time Passwords In - Everything (<acronym>OPIE</acronym>). <acronym>OPIE</acronym> - is designed to prevent replay attacks, in which an attacker - discovers a user's password and uses it to access a system. - Since a password is only used once in <acronym>OPIE</acronym>, a - discovered password is of little use to an attacker. - <acronym>OPIE</acronym> uses a secure hash and a - challenge/response system to manage passwords. The FreeBSD - implementation uses the <acronym>MD5</acronym> hash by - default.</para> + <para>預設 FreeBSD 已內建一次性密碼 (One-time Passwords In Everything, <acronym>OPIE</acronym>)。<acronym>OPIE</acronym> 設計用來避免重送攻擊 (Replay attack),重送攻擊指的是攻擊者發現了某位使用者的密碼,然後使用該密碼來存取系統。由於在 <acronym>OPIE</acronym> 的環境下,一組密碼只能被使用一次,被發現的密碼對攻擊者而言便沒有什麼作用。<acronym>OPIE</acronym> 使用了安全的加密方式與詰問/回應系統 (Challenge/response system) 來管理密碼。FreeBSD 在實作上預設採用 <acronym>MD5</acronym> 加密。</para> + + <para><acronym>OPIE</acronym> 使用了三種不同類型的密碼,第一種是一般的 <trademark class="registered">UNIX</trademark> 或 Kerberos 密碼,第二種是由 <command>opiekey</command> 所產生的一次性密碼,第三種是用來生一次性密碼的 <quote>秘密密碼 (Secret password)</quote>,秘密密碼與 <trademark class="registered">UNIX</trademark> 密碼無關且不應相同。</para> - <para xml:lang="en"><acronym>OPIE</acronym> uses three different types of - passwords. The first is the usual <trademark class="registered">UNIX</trademark> or Kerberos password. - The second is the one-time password which is generated by - <command>opiekey</command>. The third type of password is the - <quote>secret password</quote> which is used to generate - one-time passwords. The secret password has nothing to do with, - and should be different from, the <trademark class="registered">UNIX</trademark> password.</para> - - <para xml:lang="en">There are two other pieces of data that are important to - <acronym>OPIE</acronym>. One is the <quote>seed</quote> or - <quote>key</quote>, consisting of two letters and five digits. - The other is the <quote>iteration count</quote>, a number - between 1 and 100. <acronym>OPIE</acronym> creates the one-time - password by concatenating the seed and the secret password, - applying the <acronym>MD5</acronym> hash as many times as - specified by the iteration count, and turning the result into - six short English words which represent the one-time password. - The authentication system keeps track of the last one-time - password used, and the user is authenticated if the hash of the - user-provided password is equal to the previous password. - Because a one-way hash is used, it is impossible to generate - future one-time passwords if a successfully used password is - captured. The iteration count is decremented after each - successful login to keep the user and the login program in sync. - When the iteration count gets down to <literal>1</literal>, - <acronym>OPIE</acronym> must be reinitialized.</para> - - <para xml:lang="en">There are a few programs involved in this process. A - one-time password, or a consecutive list of one-time passwords, - is generated by passing an iteration count, a seed, and a secret - password to <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry>. In addition to initializing - <acronym>OPIE</acronym>, <citerefentry><refentrytitle>opiepasswd</refentrytitle><manvolnum>1</manvolnum></citerefentry> is used to change - passwords, iteration counts, or seeds. The relevant credential - files in <filename>/etc/opiekeys</filename> are examined by - <citerefentry><refentrytitle>opieinfo</refentrytitle><manvolnum>1</manvolnum></citerefentry> which prints out the invoking user's current - iteration count and seed.</para> - - <para xml:lang="en">This section describes four different sorts of operations. - The first is how to set up one-time-passwords for the first time - over a secure connection. The second is how to use - <command>opiepasswd</command> over an insecure connection. The - third is how to log in over an insecure connection. The fourth - is how to generate a number of keys which can be written down or - printed out to use at insecure locations.</para> + <para>對 <acronym>OPIE</acronym> 來說還有另外兩個部份的資料很重要。其中一個是<quote>種子碼 (Seed)</quote> 或稱<quote>金鑰 (Key)</quote>,由兩個字母與五個數字組成。另一個則是<quote>疊代次數 (Iteration count)</quote>,是一個介於 1 到 100 間的數字。<acronym>OPIE</acronym> 會將種子碼與秘密密碼串連後,套用 <acronym>MD5</acronym> 加密數次後 (根據疊代次數),再將結果轉換成六個簡短的英文單字來產生一次性密碼。認証系統會持續追蹤最後使用的一次性密碼,若使用者提供的密碼加密後與前一次的密碼相同則可通過認証。由於採用了單向的加密方式,若使用過的密碼被成功擷取也無法拿來產生之後的一次性密碼。疊代次數會在每一次登入成功之後減少,來保持使用者與登入程式間的同步。當疊代次數減少至 <literal>1</literal> 時,<acronym>OPIE</acronym> 便要重新初始化。</para> + + <para>這個整個程序會牽涉到幾個程式。傳送疊代次數、種子碼與秘密密碼來產生一組一次性密碼或數個一次性密碼的 <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry>。除了初始化 <acronym>OPIE</acronym> 之外,用來更改密碼、疊代次數或種子碼的 <citerefentry><refentrytitle>opiepasswd</refentrytitle><manvolnum>1</manvolnum></citerefentry>。會讀取放在 <filename>/etc/opiekeys</filename> 的相關憑証檔來列出使用者目前的疊代次數與種子碼的 <citerefentry><refentrytitle>opieinfo</refentrytitle><manvolnum>1</manvolnum></citerefentry>。</para> + + <para>本章節將介紹四種不同的操作,第一是如何在安全連線下做第一次的一次性密碼設定,第二是如何使用在不安全的連線下使用 <command>opiepasswd</command>,第三是如何在不安全的連線下登入系統,第四是如何產生數個可以被記錄或列印下來在不安全的場所使的金鑰。</para> <sect2> <title>初始化 <acronym>OPIE</acronym></title> - <para xml:lang="en">To initialize <acronym>OPIE</acronym> for the first time, - run this command from a secure location:</para> + <para>第一次要初始化 <acronym>OPIE</acronym>,要在安全的場所執行以下指令:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>opiepasswd -c</userinput> Adding unfurl: @@ -17676,41 +17636,17 @@ Again new secret pass phrase: ID unfurl OTP key is 499 to4268 MOS MALL GOAT ARM AVID COED</screen> - <para xml:lang="en">The <option>-c</option> sets console mode which assumes - that the command is being run from a secure location, such as - a computer under the user's control or a - <acronym>SSH</acronym> session to a computer under the user's - control.</para> + <para><option>-c</option> 會設定採用假設指令在安全場所執行的 Console 模式,如在使用者掌控之中的電腦或者透過 <acronym>SSH</acronym> 連線到一台在使用者掌控之中的電腦。</para> - <para xml:lang="en">When prompted, enter the secret password which will be - used to generate the one-time login keys. This password - should be difficult to guess and should be different than the - password which is associated with the user's login account. - It must be between 10 and 127 characters long. Remember this - password.</para> + <para>提示出現後,輸入用來產生一次性登入金鑰的秘密密碼,應使用一個不容易被猜出來的密碼,且應與使用者登入帳號所使用的密碼不同,密碼必須介於 10 到 127 個字元長度之間,然後請記住這個密碼。</para> - <para xml:lang="en">The <literal>ID</literal> line lists the login name - (<literal>unfurl</literal>), default iteration count - (<literal>499</literal>), and default seed - (<literal>to4268</literal>). When logging in, the system will - remember these parameters and display them, meaning that they - do not have to be memorized. The last line lists the - generated one-time password which corresponds to those - parameters and the secret password. At the next login, use - this one-time password.</para> + <para><literal>ID</literal> 行會列出登入名稱 (<literal>unfurl</literal>)、預設的疊代次數 (<literal>499</literal>) 以及預設的種子碼 (<literal>to4268</literal>)。在進行登入時,系統會記住這些參數並且顯示出來,這也代表不需要另外記錄這些資訊。最後一行會列出根據這些參數與秘密密碼所產生出來的一次性密碼,在下一次登入時便要使用這個一次性密碼。</para> </sect2> <sect2> - <title>不安全連線初始化</title> + <title>在不安全連線下做初始化</title> - <para xml:lang="en">To initialize or change the secret password on an - insecure system, a secure connection is needed to some place - where <command>opiekey</command> can be run. This might be a - shell prompt on a trusted machine. An iteration count is - needed, where 100 is probably a good value, and the seed can - either be specified or the randomly-generated one used. On - the insecure connection, the machine being initialized, use - <citerefentry><refentrytitle>opiepasswd</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para> + <para>要在不安全的系統上初始化或更改秘密密碼會需要某個可使用安全的連線的地方執行 <command>opiekey</command>,這可能是在某一台信任的主機上的 Shell。初始化需要設定疊代次數,100 可能是不錯的數字,種子碼可以自行指定或隨機產生,在不安全連線下要被初始化主機須使用 <citerefentry><refentrytitle>opiepasswd</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>opiepasswd</userinput> @@ -17726,9 +17662,7 @@ New secret pass phrase: ID mark OTP key is 499 gr4269 LINE PAP MILK NELL BUOY TROY</screen> - <para xml:lang="en">To accept the default seed, press <keycap>Return</keycap>. - Before entering an access password, move over to the secure - connection and give it the same parameters:</para> + <para>要採用預設的種子碼,可直接按下 <keycap>Return</keycap> 做初始化。接著在輸入回應之前移到安全的連線然後給予相同的加密參數產生密碼:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>opiekey 498 to4268</userinput> Using the MD5 algorithm to compute response. @@ -17736,16 +17670,13 @@ Reminder: Do not use opiekey from telnet or dial-in sessions. Enter secret pass phrase: GAME GAG WELT OUT DOWN CHAT</screen> - <para xml:lang="en">Switch back over to the insecure connection, and copy the - generated one-time password over to the relevant - program.</para> + <para>切換回不安全的連線,然後複製產生的一次性密碼貼上。</para> </sect2> <sect2> <title>產生單組一次性密碼</title> - <para xml:lang="en">After initializing <acronym>OPIE</acronym> and logging in, - a prompt like this will be displayed:</para> + <para>在初始化 <acronym>OPIE</acronym> 之後進行登入會顯示如下的提示訊息:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>telnet example.com</userinput> Trying 10.0.0.1... @@ -17758,25 +17689,15 @@ login: <userinput><username></userinput> otp-md5 498 gr4269 ext Password: </screen> - <para xml:lang="en">The <acronym>OPIE</acronym> prompts provides a useful - feature. If <keycap>Return</keycap> is pressed at the - password prompt, the prompt will turn echo on and display - what is typed. This can be useful when attempting to type in - a password by hand from a printout.</para> + <para><acronym>OPIE</acronym> 的提示提供了一個很有用的功能,若在密碼提示時按下 <keycap>Return</keycap>,便會開啟回應功能並顯示輸入的內容,這個功能在嘗試手工輸入列印出來的密碼時很有用。</para> <indexterm xml:lang="en"><primary>MS-DOS</primary></indexterm> <indexterm xml:lang="en"><primary>Windows</primary></indexterm> <indexterm xml:lang="en"><primary>MacOS</primary></indexterm> - <para xml:lang="en">At this point, generate the one-time password to answer - this login prompt. This must be done on a trusted system - where it is safe to run <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry>. There are versions - of this command for <trademark class="registered">Windows</trademark>, <trademark class="registered">Mac OS</trademark> and FreeBSD. This command - needs the iteration count and the seed as command line - options. Use cut-and-paste from the login prompt on the - machine being logged in to.</para> + <para>此時,要產生一次性密碼來回應登入時的提示,這必須在受信任且可安全執行 <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry> 的系統上完成。這個指令有提供 <trademark class="registered">Windows</trademark>, <trademark class="registered">Mac OS</trademark> 與 FreeBSD 版本,使用時需要疊代次數與種子碼做為在指令列的參數,剪下在要登入主機在登入時所提示的訊息。</para> - <para xml:lang="en">On the trusted system:</para> + <para>在信任的系統上執行:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>opiekey 498 to4268</userinput> Using the MD5 algorithm to compute response. @@ -17784,17 +17705,13 @@ Reminder: Do not use opiekey from telnet or dial-in sessions. Enter secret pass phrase: GAME GAG WELT OUT DOWN CHAT</screen> - <para xml:lang="en">Once the one-time password is generated, continue to log - in.</para> + <para>在產生一次性密碼後,回到登入畫面繼續登入。</para> </sect2> <sect2> <title>產生多組一次性密碼</title> - <para xml:lang="en">Sometimes there is no access to a trusted machine or - secure connection. In this case, it is possible to use - <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry> to generate a number of one-time passwords - beforehand. For example:</para> + <para>有時會無法存取信任的主機或沒有安全的連線,在這種情況下,可以使用 <citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來預先產生多個一次性密碼,例如:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>opiekey -n 5 30 zz99999</userinput> Using the MD5 algorithm to compute response. @@ -17806,37 +17723,21 @@ Enter secret pass phrase: <userinput><secret password></userinput> 29: RIO ODIN GO BYE FURY TIC 30: GREW JIVE SAN GIRD BOIL PHI</screen> - <para xml:lang="en">The <option>-n 5</option> requests five keys in sequence, - and <option>30</option> specifies what the last iteration - number should be. Note that these are printed out in - <emphasis>reverse</emphasis> order of use. The really - paranoid might want to write the results down by hand; - otherwise, print the list. Each line shows both the iteration - count and the one-time password. Scratch off the passwords as - they are used.</para> + <para><option>-n 5</option> 會請求產生連續五個金鑰,而 <option>30</option> 則是指定最後一個疊代的編號。注意這些列印出的結果的順序與使用的順序<emphasis>相反</emphasis>。十足的偏執狂可能會想要用手寫下結果,否則就列印出清單。每一行會同時顯示疊代次數及一次性密碼,在密碼使用過後便可劃掉。</para> </sect2> <sect2> <title>限制使用 <trademark class="registered">UNIX</trademark> 密碼</title> - <para xml:lang="en"><acronym>OPIE</acronym> can restrict the use of <trademark class="registered">UNIX</trademark> - passwords based on the IP address of a login session. The - relevant file is <filename>/etc/opieaccess</filename>, which - is present by default. Refer to <citerefentry><refentrytitle>opieaccess</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more - information on this file and which security considerations to - be aware of when using it.</para> + <para><acronym>OPIE</acronym> 可以根據登入階段的 IP 位置限制使用 <trademark class="registered">UNIX</trademark> 密碼,相關的檔案為 <filename>/etc/opieaccess</filename>,這個檔案預設便存在。請參考 <citerefentry><refentrytitle>opieaccess</refentrytitle><manvolnum>5</manvolnum></citerefentry> 來取得更多有關此檔案的資訊以及當使用時要考量的安全性問題。</para> - <para xml:lang="en">Here is a sample <filename>opieaccess</filename>:</para> + <para>這裡有一個範本 <filename>opieaccess</filename>:</para> <programlisting xml:lang="en">permit 192.168.0.0 255.255.0.0</programlisting> - <para xml:lang="en">This line allows users whose IP source address (which is - vulnerable to spoofing) matches the specified value and mask, - to use <trademark class="registered">UNIX</trademark> passwords at any time.</para> + <para>這一行允許來源 IP 位址 (容易受到詐騙的位址) 符合指定值與遮罩的使用者在任何時間可使用 <trademark class="registered">UNIX</trademark> 密碼登入。</para> - <para xml:lang="en">If no rules in <filename>opieaccess</filename> are - matched, the default is to deny non-<acronym>OPIE</acronym> - logins.</para> + <para>若在 <filename>opieaccess</filename> 中沒有符合的規則,預設會拒絕非 <acronym>OPIE</acronym> 的登入。</para> </sect2> </sect1> @@ -19382,34 +19283,13 @@ racoon_enable="yes"</programlisting> <secondary>OpenSSH</secondary> </indexterm> - <para xml:lang="en"><application>OpenSSH</application> is a set of network - connectivity tools used to provide secure access to remote - machines. Additionally, <acronym>TCP/IP</acronym> connections - can be tunneled or forwarded securely through - <acronym>SSH</acronym> connections. - <application>OpenSSH</application> encrypts all traffic to - effectively eliminate eavesdropping, connection hijacking, and - other network-level attacks.</para> - - <para xml:lang="en"><application>OpenSSH</application> is maintained by the - OpenBSD project and is installed by default in FreeBSD. It is - compatible with both <acronym>SSH</acronym> version 1 and 2 - protocols.</para> + <para><application>OpenSSH</application> 是一套網路連線工具,可安全的存取遠端的主機,此外,透過 <acronym>SSH</acronym> 連線可以建立 <acronym>TCP/IP</acronym> 連線通道或安全的轉送 <acronym>TCP/IP</acronym> 的封包。<application>OpenSSH</application> 會對所有傳輸的資料做加密,可有效的避免竊聽 (Eavesdropping)、或連線劫持 (Connection hijacking) 與其他網路層的攻擊。</para> + + <para><application>OpenSSH</application> 由 OpenBSD 專案所維護且在 FreeBSD 預設會安裝,它可同時相容 <acronym>SSH</acronym> 版本 1 與 2 通訊協定。</para> - <para xml:lang="en">When data is sent over the network in an unencrypted form, - network sniffers anywhere in between the client and server can - steal user/password information or data transferred during the - session. <application>OpenSSH</application> offers a variety of - authentication and encryption methods to prevent this from - happening. More information about - <application>OpenSSH</application> is available from <link xlink:href="http://www.openssh.com/">http://www.openssh.com/</link>.</para> - - <para xml:lang="en">This section provides an overview of the built-in client - utilities to securely access other systems and securely transfer - files from a FreeBSD system. It then describes how to configure a - <acronym>SSH</acronym> server on a FreeBSD system. More - information is available in the man pages mentioned in this - chapter.</para> + <para>當以未加密的方式在網路上傳送資料時,任何在客戶端與伺服器之間的網路竊聽程式 (Network sniffer) 皆可竊取使用者/密碼資訊或者在連線階段傳送的資料,<application>OpenSSH</application> 提供了數種認証與加密方式來避免這種事情發生。更多有關 <application>OpenSSH</application> 的資訊可於 <link xlink:href="http://www.openssh.com/">http://www.openssh.com/</link> 取得。</para> + + <para>本節會簡單介紹如何使用內建的客戶端工具安全的存取其他系統及安全的傳輸檔案到 FreeBSD 系統,然後會說明如何設定在 FreeBSD 系統上的 <acronym>SSH</acronym> 伺服器。更多的資訊可於本章節所提及的操作手冊 (Man page) 取得。</para> <sect2> <title>使用 SSH 客戶端工具</title> @@ -19419,12 +19299,7 @@ racoon_enable="yes"</programlisting> <secondary>client</secondary> </indexterm> - <para xml:lang="en">To log into a <acronym>SSH</acronym> server, use - <command>ssh</command> and specify a username that exists on - that server and the <acronym>IP</acronym> address or hostname - of the server. If this is the first time a connection has - been made to the specified server, the user will be prompted - to first verify the server's fingerprint:</para> + <para>要登入一台 <acronym>SSH</acronym> 伺服器,可使用 <command>ssh</command> 然後指定在伺服器上存在的使用者名稱與 <acronym>IP</acronym> 位址或伺服器的主機名稱。若這是第一次連線到指定的伺服器,會提示該使用者伺服器的指紋做第一次檢驗:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>ssh <replaceable>user@example.com</replaceable></userinput> The authenticity of host 'example.com (10.0.0.1)' can't be established. @@ -19433,26 +19308,9 @@ Are you sure you want to continue connecting (yes/no)? <userinput>yes</userinput Permanently added 'example.com' (ECDSA) to the list of known hosts. Password for user@example.com: <userinput><replaceable>user_password</replaceable></userinput></screen> - <para xml:lang="en"><acronym>SSH</acronym> utilizes a key fingerprint system - to verify the authenticity of the server when the client - connects. When the user accepts the key's fingerprint by - typing <literal>yes</literal> when connecting for the first - time, a copy of the key is saved to - <filename>.ssh/known_hosts</filename> in the user's home - directory. Future attempts to login are verified against the - saved key and <command>ssh</command> will display an alert if - the server's key does not match the saved key. If this - occurs, the user should first verify why the key has changed - before continuing with the connection.</para> - - <para xml:lang="en">By default, recent versions of - <application>OpenSSH</application> only accept - <acronym>SSH</acronym>v2 connections. By default, the client - will use version 2 if possible and will fall back to version 1 - if the server does not support version 2. To force - <command>ssh</command> to only use the specified protocol, - include <option>-1</option> or <option>-2</option>. - Additional options are described in <citerefentry><refentrytitle>ssh</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> + <para><acronym>SSH</acronym> 會在客戶端連線時利用金鑰指紋 (Key fingerprint) 系統來驗證伺服器的真偽,當使用者在第一次連線時輸入 <literal>yes</literal> 接受了這個金鑰指紋,便會將該金鑰的複本儲存到使用者家目錄的 <filename>.ssh/known_hosts</filename>,未來嘗試登入時便會以這個存好的金鑰來驗證,若伺服器的金鑰與儲存的金鑰不同將會顯示警告訊息。若出現這個警告時,使用者應在繼續連線之前檢查金鑰變動的原因。</para> + + <para>最近版本的 <application>OpenSSH</application> 預設只會接受 <acronym>SSH</acronym>v2 的連線。客戶端預設會盡可能使用版本 2 的通訊協定,若伺服器不支援版本 2 的通訊協定便會向下相容版本 1 的協定。要強制 <command>ssh</command> 只能使用指定的通訊協定,可使用 <option>-1</option> 或 <option>-2</option>,其他的選項在 <citerefentry><refentrytitle>ssh</refentrytitle><manvolnum>1</manvolnum></citerefentry> 中有說明。</para> <indexterm xml:lang="en"> <primary>OpenSSH</primary> @@ -19462,11 +19320,7 @@ Password for user@example.com: <userinput><replaceable>user_password</replaceabl <primary><citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</manvolnum></citerefentry></primary> </indexterm> - <para xml:lang="en">Use <citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</manvolnum></citerefentry> to securely copy a file to or from a - remote machine. This example copies - <filename>COPYRIGHT</filename> on the remote system to a file - of the same name in the current directory of the local - system:</para> + <para>使用 <citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</manvolnum></citerefentry> 可從遠端主機安全的複製一個檔案,以下範例會複製在遠端主機的 <filename>COPYRIGHT</filename> 到本地主機的目前目錄:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>scp <replaceable>user@example.com:/COPYRIGHT COPYRIGHT</replaceable></userinput> Password for user@example.com: <userinput><replaceable>*******</replaceable></userinput> @@ -19474,36 +19328,16 @@ COPYRIGHT 100% |*****************************| 4735 00:00 <prompt>#</prompt></screen> - <para xml:lang="en">Since the fingerprint was already verified for this host, - the server's key is automatically checked before prompting for - the user's password.</para> - - <para xml:lang="en">The arguments passed to <command>scp</command> are similar - to <command>cp</command>. The file or files to copy is the - first argument and the destination to copy to is the second. - Since the file is fetched over the network, one or more of the - file arguments takes the form - <option>user@host:<path_to_remote_file></option>. Be - aware when copying directories recursively that - <command>scp</command> uses <option>-r</option>, whereas - <command>cp</command> uses <option>-R</option>.</para> - - <para xml:lang="en">To open an interactive session for copying files, use - <command>sftp</command>. Refer to <citerefentry><refentrytitle>sftp</refentrytitle><manvolnum>1</manvolnum></citerefentry> for a list of - available commands while in an <command>sftp</command> - session.</para> + <para>由於這個主機的指紋已驗證過,在提示用者輸入密碼之前伺服器的金鑰已自動檢查。</para> + + <para>傳給 <command>scp</command> 的參數與傳給 <command>cp</command> 的參數相似。第一個參數是要複製的檔案,第二個參數是目地,由於檔案是透過網路取得,檔案參數需要使用 <option>user@host:<path_to_remote_file></option> 格式。注意,在 <command>scp</command> 要遞迴複製目錄是使用 <option>-r</option>,如同 <command>cp</command> 使用 <option>-R</option>。</para> + + <para>要開啟可互動的連線來複製檔案可使用 <command>sftp</command>,請參考 <citerefentry><refentrytitle>sftp</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來取得在 <command>sftp</command> 連線時可用的指令清單。</para> <sect3 xml:id="security-ssh-keygen"> <title>以金鑰為基礎的認證</title> - <para xml:lang="en">Instead of using passwords, a client can be configured - to connect to the remote machine using keys. To generate - <acronym>RSA</acronym> - authentication keys, use <command>ssh-keygen</command>. To - generate a public and private key pair, specify the type of - key and follow the prompts. It is recommended to protect - the keys with a memorable, but hard to guess - passphrase.</para> + <para>除了使用密碼之外,客戶端可以設定成使用金鑰來連線到遠端的主機。要產生 <acronym>RSA</acronym> 認証金鑰可使用 <command>ssh-keygen</command>。要產生成對的公鑰與私鑰,可指定金鑰的類型並依提示操作。建議使用容易記住但較難猜出的密碼來保護這個金鑰。</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>ssh-keygen -t rsa</userinput> Generating public/private rsa key pair. @@ -19529,66 +19363,28 @@ The key's randomart image is: <calloutlist> <callout arearefs="co-ssh-keygen-passphrase1"> - <para xml:lang="en">Type a passphrase here. It can contain spaces and - symbols.</para> + <para>在此輸入密碼,密碼不可含有空白或符號。</para> </callout> <callout arearefs="co-ssh-keygen-passphrase2"> - <para xml:lang="en">Retype the passphrase to verify it.</para> + <para>再輸入一次密碼驗證。</para> </callout> </calloutlist> - <para xml:lang="en">The private key - is stored in <filename>~/.ssh/id_rsa</filename> - and the public key - is stored in <filename>~/.ssh/id_rsa.pub</filename>. - The - <emphasis>public</emphasis> key must be copied to - <filename>~/.ssh/authorized_keys</filename> on the remote - machine for key-based authentication to - work.</para> + <para>私鑰會儲存於 <filename>~/.ssh/id_rsa</filename> 而公鑰會儲存於 <filename>~/.ssh/id_rsa.pub</filename>。<emphasis>公鑰</emphasis>必須複製到遠端主機的<filename>~/.ssh/authorized_keys</filename> 來讓以金鑰為基礎的認証可以運作。</para> <warning> - <para xml:lang="en">Many users believe that keys are secure by design and - will use a key without a passphrase. This is - <emphasis>dangerous</emphasis> behavior. An - administrator can verify that a key pair is protected by a - passphrase by viewing the private key manually. If the - private key file contains the word - <literal>ENCRYPTED</literal>, the key owner is using a - passphrase. In addition, to better secure end users, - <literal>from</literal> may be placed in the public key - file. For example, adding - <literal>from="192.168.10.5"</literal> in front of the - <literal>ssh-rsa</literal> - prefix will only allow that specific user to log in from - that <acronym>IP</acronym> address.</para> + <para>許多使用者認為金鑰的設計是安全的並在產生金鑰時未使用密碼,這樣的行為其實很<emphasis>危險</emphasis>。管理者可以手動查看私鑰來檢查金鑰對是否受密碼保護,如果私鑰檔案中包含 <literal>ENCRYPTED</literal> 字詞,則代表金鑰的擁有者有使用密碼。此外,要更進一步保護最終使用者的安全,可在公鑰檔案中放入 <literal>from</literal>,例如,在 <literal>ssh-rsa</literal> 前加上 <literal>from="192.168.10.5"</literal> 將只允許指定的使用者由該 IP 位址登入。</para> </warning> - <para xml:lang="en">The options and files vary with different versions of - <application>OpenSSH</application>. - To avoid problems, consult <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> - - <para xml:lang="en">If a passphrase is used, the user is prompted for - the passphrase each time a connection is made to the server. - To load <acronym>SSH</acronym> keys into memory and remove - the need to type the passphrase each time, use - <citerefentry><refentrytitle>ssh-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry> and <citerefentry><refentrytitle>ssh-add</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> - - <para xml:lang="en">Authentication is handled by - <command>ssh-agent</command>, using the private keys that - are loaded into it. <command>ssh-agent</command> - can be used to launch another application like a - shell or a window manager.</para> - - <para xml:lang="en">To use <command>ssh-agent</command> in a shell, start it - with a shell as an argument. Add the identity by - running <command>ssh-add</command> and entering the - passphrase for the private key. - The user will then be able to <command>ssh</command> - to any host that has the corresponding public key installed. - For example:</para> + <para>不同版本 <application>OpenSSH</application> 的選項與檔案會不同,要避免發生問題請參考 <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry>。</para> + + <para>若使用了密碼,在每次連線到伺服器時都會提示使用者輸入密碼。要將 <acronym>SSH</acronym> 金鑰載入到記憶體並讓每次連線時不必再輸入密碼,可使用 <citerefentry><refentrytitle>ssh-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry> 與 <citerefentry><refentrytitle>ssh-add</refentrytitle><manvolnum>1</manvolnum></citerefentry>。</para> + + <para>認証可用 <command>ssh-agent</command> 來管理,只要將私鑰載入,<command>ssh-agent</command> 可用在執行其他應用程式,如 Shell 或視窗管理程式。</para> + + <para>要在 Shell 使用 <command>ssh-agent</command>,使用 Shell 做為參數來啟動 <command>ssh-agent</command>。執行 <command>ssh-add</command> 來加入識別碼,然後輸入私鑰的密碼。使用者將可使用 <command>ssh</command> 連線到任何有安裝對應公鑰的主機,例如:</para> <screen xml:lang="en"><prompt>%</prompt> ssh-agent <replaceable>csh</replaceable> <prompt>%</prompt> ssh-add @@ -19598,25 +19394,15 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <calloutlist> <callout arearefs="co-ssh-agent-passphrase"> - <para xml:lang="en">Enter the passphrase for the key.</para> + <para>輸入金鑰的密碼。</para> </callout> </calloutlist> - <para xml:lang="en">To use <command>ssh-agent</command> in - <application>Xorg</application>, add an entry for it in - <filename>~/.xinitrc</filename>. This provides the - <command>ssh-agent</command> services to all programs - launched in <application>Xorg</application>. An example - <filename>~/.xinitrc</filename> might look like this:</para> + <para>要在 <application>Xorg</application> 使用 <command>ssh-agent</command> 可在 <filename>~/.xinitrc</filename> 加入一個設定項目,這可讓 <command>ssh-agent</command> 對所有在 <application>Xorg</application> 中執行的程式提供服務。<filename>~/.xinitrc</filename> 範例如下:</para> <programlisting xml:lang="en">exec ssh-agent <replaceable>startxfce4</replaceable></programlisting> - <para xml:lang="en">This launches <command>ssh-agent</command>, which in - turn launches <application>XFCE</application>, every time - <application>Xorg</application> starts. Once - <application>Xorg</application> has been restarted so that - the changes can take effect, run <command>ssh-add</command> - to load all of the <acronym>SSH</acronym> keys.</para> + <para>這會在每次啟動 <application>Xorg</application> 時,反過來先執行 <command>ssh-agent</command> 再由執行 <application>XFCE</application>,一但 <application>Xorg</application> 被重新啟動,要讓所有變更生效需執行 <command>ssh-add</command> 來載入所有的 <acronym>SSH</acronym> 金鑰。</para> </sect3> <sect3 xml:id="security-ssh-tunneling"> @@ -19627,26 +19413,21 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <secondary>tunneling</secondary> </indexterm> - <para xml:lang="en"><application>OpenSSH</application> has the ability to - create a tunnel to encapsulate another protocol in an - encrypted session.</para> + <para><application>OpenSSH</application> 可以建立一個通道 (Tunnel) 來封裝其他通訊協定到一個加密的連線。</para> - <para xml:lang="en">The following command tells <command>ssh</command> to - create a tunnel for - <application>telnet</application>:</para> + <para>以下指令會告訴 <command>ssh</command> 建立一個供 <application>telnet</application> 使用的通道:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>5023:localhost:23 user@foo.example.com</replaceable></userinput> <prompt>%</prompt></screen> - <para xml:lang="en">This example uses the following options:</para> + <para>這個例子使用了以下選項:</para> <variablelist> <varlistentry> <term xml:lang="en"><option>-2</option></term> <listitem> - <para xml:lang="en">Forces <command>ssh</command> to use version 2 to - connect to the server.</para> + <para>強制 <command>ssh</command> 使用版本 2 的通訊協定連線到伺服器。</para> </listitem> </varlistentry> @@ -19654,9 +19435,7 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <term xml:lang="en"><option>-N</option></term> <listitem> - <para xml:lang="en">Indicates no command, or tunnel only. If omitted, - <command>ssh</command> initiates a normal - session.</para> + <para>代表不需下指令、只建立通道。若省略這個選項 <command>ssh</command> 會初始化一個正常的連線。</para> </listitem> </varlistentry> @@ -19664,8 +19443,7 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <term xml:lang="en"><option>-f</option></term> <listitem> - <para xml:lang="en">Forces <command>ssh</command> to run in the - background.</para> + <para>強制 <command>ssh</command> 在背景執行。</para> </listitem> </varlistentry> @@ -19673,9 +19451,7 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <term xml:lang="en"><option>-L</option></term> <listitem> - <para xml:lang="en">Indicates a local tunnel in - <replaceable>localport:remotehost:remoteport</replaceable> - format.</para> + <para>代表這是一個本地通道,使用 <replaceable>localport:remotehost:remoteport</replaceable> 格式。</para> </listitem> </varlistentry> @@ -19683,29 +19459,14 @@ Identity added: /usr/home/user/.ssh/id_rsa (/usr/home/user/.ssh/id_rsa) <term xml:lang="en"><option>user@foo.example.com</option></term> <listitem> - <para xml:lang="en">The login name to use on the specified remote - <acronym>SSH</acronym> server.</para> + <para>在指定的遠端 <acronym>SSH</acronym> 伺服器要使用的登入名稱。</para> </listitem> </varlistentry> </variablelist> - <para xml:lang="en">An <acronym>SSH</acronym> tunnel works by creating a - listen socket on <systemitem>localhost</systemitem> on the - specified <literal>localport</literal>. It then forwards - any connections received on <literal>localport</literal> via - the <acronym>SSH</acronym> connection to the specified - <literal>remotehost:remoteport</literal>. In the example, - port <literal>5023</literal> on the client is forwarded to - port <literal>23</literal> on the remote machine. Since - port 23 is used by <application>telnet</application>, this - creates an encrypted <application>telnet</application> - session through an <acronym>SSH</acronym> tunnel.</para> - - <para xml:lang="en">This method can be used to wrap any number of insecure - <acronym>TCP</acronym> protocols such as - <acronym>SMTP</acronym>, <acronym>POP3</acronym>, and - <acronym>FTP</acronym>, as seen in the following - examples.</para> + <para>SSH 通道會建立一個傾聽 <systemitem>localhost</systemitem> 指定 <literal>localport</literal> 的 Socket ,然後會透過 <acronym>SSH</acronym> 連線轉送任何在 <literal>localport</literal> 接收的連線。以這個例子來說在客戶端的 Port <literal>5023</literal> 會被轉送到遠端主機的 Port <literal>23</literal>,由於 Port 23 是由 <application>telnet</application> 使用,所以這會透過 <acronym>SSH</acronym> 通道建立一個加密的 <application>telnet</application> 連線。</para> + + <para>這個方法可用來包裝許多不安全的 <acronym>TCP</acronym> 通訊協定,例如 <acronym>SMTP</acronym>, <acronym>POP3</acronym> 以及 <acronym>FTP</acronym>,如下例所示。</para> <example> <title>建立供 <acronym>SMTP</acronym> 使用的安全通道</title> @@ -19718,58 +19479,31 @@ Connected to localhost. Escape character is '^]'. 220 mailserver.example.com ESMTP</screen> - <para xml:lang="en">This can be used in conjunction with - <command>ssh-keygen</command> and additional user accounts - to create a more seamless <acronym>SSH</acronym> tunneling - environment. Keys can be used in place of typing a - password, and the tunnels can be run as a separate - user.</para> + <para>這可配合 <command>ssh-keygen</command> 與另一個使用者帳號與來建立一個更無縫的 <acronym>SSH</acronym> 通道環境,可使用金鑰來代替手動輸入密碼,然後該通道便可以另一個使用者執行。</para> </example> <example> <title>安全存取 <acronym>POP3</acronym> 伺服器</title> - <para xml:lang="en">In this example, there is an <acronym>SSH</acronym> - server that accepts connections from the outside. On the - same network resides a mail server running a - <acronym>POP3</acronym> server. To check email in a - secure manner, create an <acronym>SSH</acronym> connection - to the <acronym>SSH</acronym> server and tunnel through to - the mail server:</para> + <para>在這個例子中有一個 <acronym>SSH</acronym> 伺服器會接受來自外部的連線,在同個網段下有一個郵件伺服器執行 <acronym>POP3</acronym> 伺服器。要使用較安全的方式檢查有沒有新郵件可建立一個 <acronym>SSH</acronym> 連線到 <acronym>SSH</acronym> 伺服器然後透過通道連線到郵件伺服器:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>2110:mail.example.com:110 user@ssh-server.example.com</replaceable></userinput> user@ssh-server.example.com's password: <userinput>******</userinput></screen> - <para xml:lang="en">Once the tunnel is up and running, point the email - client to send <acronym>POP3</acronym> requests to - <systemitem>localhost</systemitem> on port 2110. This - connection will be forwarded securely across the tunnel to - <systemitem>mail.example.com</systemitem>.</para> + <para>一但通道啟動並執行後,指定郵件客戶端將 <acronym>POP3</acronym> 請求傳送到 <systemitem>localhost</systemitem> 的 Port 2110,這個連線將會被安全的透過通道轉送到 <systemitem>mail.example.com</systemitem>。</para> </example> <example> <title>跳過防火牆</title> - <para xml:lang="en">Some firewalls - filter both incoming and outgoing connections. For - example, a firewall might limit access from remote - machines to ports 22 and 80 to only allow - <acronym>SSH</acronym> and web surfing. This prevents - access to any other service which uses a port other than - 22 or 80.</para> + <para>有些防火牆會同時過濾傳入與傳出的連線。例如,防火牆很可能會限制來自遠端主機只能存取 Port 22 與 80 來只讓 <acronym>SSH</acronym> 與網頁瀏覽器連線,這會使得 Port 使用 22 或 80 以外的服務無法存取。</para> - <para xml:lang="en">The solution is to create an <acronym>SSH</acronym> - connection to a machine outside of the network's firewall - and use it to tunnel to the desired service:</para> + <para>這問題的解決方法是建立一個 <acronym>SSH</acronym> 連線到在防火牆防護之外主機然後使用該連線的通道連到想要使用的服務:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>8888:music.example.com:8000 user@unfirewalled-system.example.org</replaceable></userinput> user@unfirewalled-system.example.org's password: <userinput>*******</userinput></screen> - <para xml:lang="en">In this example, a streaming Ogg Vorbis client can now - be pointed to <systemitem>localhost</systemitem> port - 8888, which will be forwarded over to - <systemitem>music.example.com</systemitem> on port 8000, - successfully bypassing the firewall.</para> + <para>在這個例子中,串流 Ogg Vorbis 客戶端現在可以指向 <systemitem>localhost</systemitem> Port 8888,連線將會被轉送到 <systemitem>music.example.com</systemitem> 於 Port 8000,成功的跳過防火牆。</para> </example> </sect3> </sect2> @@ -19782,112 +19516,59 @@ user@unfirewalled-system.example.org's password: <userinput>*******</userinput>< <secondary>enabling</secondary> </indexterm> - <para xml:lang="en">In addition to providing built-in <acronym>SSH</acronym> - client utilities, a FreeBSD system can be configured as an - <acronym>SSH</acronym> server, accepting connections from - other <acronym>SSH</acronym> clients.</para> + <para>除了提供內建的 <acronym>SSH</acronym> 客戶端工具外,還可以設定 FreeBSD 系統為一個 <acronym>SSH</acronym> 伺服器,以接受來自其他 <acronym>SSH</acronym> 客戶端的連線。</para> - <para xml:lang="en">To see if <application>sshd</application> is operating, - use the <citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</manvolnum></citerefentry> command:</para> + <para>要查看 <application>sshd</application> 是否正在運作,可使用 <citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</manvolnum></citerefentry> 指令:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service sshd status</userinput></screen> - <para xml:lang="en">If the service is not running, add the following line to - <filename>/etc/rc.conf</filename>.</para> + <para>若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>。</para> <programlisting xml:lang="en">sshd_enable="YES"</programlisting> - <para xml:lang="en">This will start <application>sshd</application>, the - daemon program for <application>OpenSSH</application>, the - next time the system boots. To start it now:</para> + <para>這會讓下次系統開機時啟動 <application>OpenSSH</application> 的 Daemon 程式 <application>sshd</application>。若要立即啟動:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service sshd start</userinput></screen> - <para xml:lang="en">The first time <application>sshd</application> starts on a - FreeBSD system, the system's host keys will be automatically - created and the fingerprint will be displayed on the console. - Provide users with the fingerprint so that they can verify it - the first time they connect to the server.</para> + <para>在 FreeBSD 系統第一次啟動 <application>sshd</application> 時便會自動產生系統的主機金鑰且會顯示指紋在 Console 上,這個指紋可供使用者在第一次連線到伺服器時驗證用。</para> - <para xml:lang="en">Refer to <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</manvolnum></citerefentry> for the list of available options - when starting <application>sshd</application> and a more - complete discussion about authentication, the login process, - and the various configuration files.</para> + <para>請參考 <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 可取得在啟動 <application>sshd</application> 時可用選項的清單以及更多完整有關認証、登入程序與各種設定檔的資訊。</para> - <para xml:lang="en">At this point, the <application>sshd</application> should - be available to all users with a username and password on - the system.</para> + <para>現在,<application>sshd</application> 應可供所有在系統上有使用者名稱及密碼的使用者使用。</para> </sect2> <sect2> <title>SSH 伺服器安全性</title> - <para xml:lang="en">While <application>sshd</application> is the most widely - used remote administration facility for FreeBSD, brute force - and drive by attacks are common to any system exposed to - public networks. Several additional parameters are available - to prevent the success of these attacks and will be described - in this section.</para> - - <para xml:lang="en">It is a good idea to limit which users can log into the - <acronym>SSH</acronym> server and from where using the - <literal>AllowUsers</literal> keyword in the - <application>OpenSSH</application> server configuration file. - For example, to only allow <systemitem class="username">root</systemitem> to log in from - <systemitem class="ipaddress">192.168.1.32</systemitem>, add - this line to <filename>/etc/ssh/sshd_config</filename>:</para> + <para>在 FreeBSD 廣泛使用 <application>sshd</application> 做為遠端管理基礎設施的同時,所有暴露在公有網路上的系統也會時常受到暴力攻擊 (Brute force attack) 與路過攻擊 (Drive by attack)。在本節會介紹一些可用來避免這些攻擊的參數。</para> + + <para>使用在 <application>OpenSSH</application> 伺服器設定檔的 <literal>AllowUsers</literal> 關鍵字限制可以登入到 <acronym>SSH</acronym> 伺服器的使用者及來源是一個不錯的方式。例如要只允許來自 <systemitem class="ipaddress">192.168.1.32</systemitem> 的 <systemitem class="username">root</systemitem> 登入,可加入下行到 <filename>/etc/ssh/sshd_config</filename>:</para> <programlisting xml:lang="en">AllowUsers root@192.168.1.32</programlisting> - <para xml:lang="en">To allow <systemitem class="username">admin</systemitem> - to log in from anywhere, list that user without specifying an - <acronym>IP</acronym> address:</para> + <para>要允許來自任何地方的 <systemitem class="username">admin</systemitem> 登入,可只列出使用者名稱,不指定 <acronym>IP</acronym> 位址:</para> <programlisting xml:lang="en">AllowUsers admin</programlisting> - <para xml:lang="en">Multiple users should be listed on the same line, like - so:</para> + <para>有多位使用者也應列在同一行,例如:</para> <programlisting xml:lang="en">AllowUsers root@192.168.1.32 admin</programlisting> - <para xml:lang="en">After making changes to - <filename>/etc/ssh/sshd_config</filename>, - tell <application>sshd</application> to reload its - configuration file by running:</para> + <para>在對 <filename>/etc/ssh/sshd_config</filename> 做完變更後,執行以下指令告訴 <application>sshd</application> 重新載入設定檔: + </para> <screen xml:lang="en"><prompt>#</prompt> <userinput>service sshd reload</userinput></screen> <note> - <para xml:lang="en">When this keyword is used, it is important to list each - user that needs to log into this machine. Any user that is - not specified in that line will be locked out. Also, the - keywords used in the <application>OpenSSH</application> - server configuration file are case-sensitive. If the - keyword is not spelled correctly, including its case, it - will be ignored. Always test changes to this file to make - sure that the edits are working as expected. Refer to - <citerefentry><refentrytitle>sshd_config</refentrytitle><manvolnum>5</manvolnum></citerefentry> to verify the spelling and use of the - available keywords.</para> + <para>在使用了這個關鍵字時,列出每一位需要登入此主機的使用者很重要,任何未被在該行指定的使用者將無法登入。同時,在 <application>OpenSSH</application> 伺服器設定檔使用的關鍵字是區分大小寫的,若關鍵字未正確的拼寫 (含其大小寫),則將會被忽略,永遠要記得測試對這個檔案所做的更改來確保伺服器有如預期的方式運作。請參考 <citerefentry><refentrytitle>sshd_config</refentrytitle><manvolnum>5</manvolnum></citerefentry> 來檢查拼寫以及可用的關鍵字。</para> </note> - <para xml:lang="en">In addition, users may be forced to use two factor - authentication via the use of a public and private key. When - required, the user may generate a key pair through the use - of <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry> and send the administrator the public - key. This key file will be placed in the - <filename>authorized_keys</filename> as described above in - the client section. To force the users to use keys only, - the following option may be configured:</para> + <para>此外,使用者可能被強制要透過公鑰與私鑰使用雙重認證 (Two factor authentication)。當需要時,使用者可以透過使用 <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry> 產生一堆金鑰然後將公鑰傳送給管理者,這個金鑰檔會如以上在客戶端章節所述的被放在 <filename>authorized_keys</filename>。要強制使用者只能使用這個金鑰,可能需要設定以下選項:</para> <programlisting xml:lang="en">AuthenticationMethods publickey</programlisting> <tip> - <para xml:lang="en">Do not confuse <filename>/etc/ssh/sshd_config</filename> - with <filename>/etc/ssh/ssh_config</filename> (note the - extra <literal>d</literal> in the first filename). The - first file configures the server and the second file - configures the client. Refer to <citerefentry><refentrytitle>ssh_config</refentrytitle><manvolnum>5</manvolnum></citerefentry> for a - listing of the available client settings.</para> + <para>請不要將 <filename>/etc/ssh/sshd_config</filename> 以及 <filename>/etc/ssh/ssh_config</filename> 搞混 (注意在第一節檔名有多出個 <literal>d</literal>),第一個檔案用來設定伺服器,而第二個檔案用來設定客戶端。請參考 <citerefentry><refentrytitle>ssh_config</refentrytitle><manvolnum>5</manvolnum></citerefentry> 來取得可用的客戶端設定清單。</para> </tip> </sect2> </sect1> @@ -20870,104 +20551,42 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> <secondary>Sudo</secondary> </indexterm> - <para xml:lang="en">System administrators often need the ability to grant - enhanced permissions to users so they may perform privileged - tasks. The idea that team members are provided access - to a FreeBSD system to perform their specific tasks opens up unique - challenges to every administrator. These team members only - need a subset of access beyond normal end user levels; however, - they almost always tell management they are unable to - perform their tasks without superuser access. Thankfully, there - is no reason to provide such access to end users because tools - exist to manage this exact requirement.</para> - - <para xml:lang="en">Up to this point, the security chapter has covered permitting - access to authorized users and attempting to prevent unauthorized - access. Another problem arises once authorized users have access - to the system resources. In many cases, some users may need - access to application startup scripts, or a team of - administrators need to maintain the system. Traditionally, the - standard users and groups, file permissions, and even the - <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> command would manage this access. And as applications - required more access, as more users needed to use system - resources, a better solution was required. The most used - application is currently <application>Sudo</application>.</para> - - <para xml:lang="en"><application>Sudo</application> allows administrators - to configure more rigid access to system commands - and provide for some advanced logging features. - As a tool, it is available from the Ports Collection as - <package role="port">security/sudo</package> or by use of - the <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> utility. To use the <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> tool:</para> + <para>系統管理者通常會要能夠授予額外的權限給其他使用者,以讓這些使用者可以執行需權限的工作。要讓團隊成員可以存取 FreeBSD 系統來完成其特定的工作對所有管理者都會帶來挑戰,這些團隊成員通常只需要比一般使用者多出一些存取權限便可作業,但他們總是會告訴管理者若沒有超級使用者的存取權便無法完成其工作。幸好,有工具可以管理這類的需求,這樣便不需提供這麼大的權限給一般使用者。</para> + + <para>到目前為止,安全性章節已說明了如何允許已授權的使用者存取以及嘗試防止未經授權的存取,而現在有另一個問題,是由已授權的使用者擁有權限存取系統資源造成的。在很多的情況,使用者會需要存取應用程式啟動 Script 的權限或是管理者團隊需要維護系統,以往會使用標準的使用者與群組、檔案權限、甚至是 <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> 指令來管理存取權,但當應用程式需要更多存取權,更多使用者需要使用系統資源時,便需要更好的解決方案,目前最常用來解決此問題的應用程式便是 <application>Sudo</application>。</para> + + <para><application>Sudo</application> 讓管理者可以對系統指令的存取設下更嚴格的限制並提供進階的記錄功能。如同其他工具,它可自 Port 套件集取得,於其中的 <package role="port">security/sudo</package>,或使用 <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具取得,若要使用 <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具可:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg install sudo</userinput></screen> - <para xml:lang="en">After the installation is complete, the installed - <command>visudo</command> will open the configuration file with - a text editor. Using <command>visudo</command> is highly - recommended as it comes with a built in syntax checker to verify - there are no errors before the file is saved.</para> - - <para xml:lang="en">The configuration file is made up of several small sections - which allow for extensive configuration. In the following - example, web application maintainer, user1, needs to start, - stop, and restart the web application known as - <replaceable>webservice</replaceable>. To - grant this user permission to perform these tasks, add - this line to the end of - <filename>/usr/local/etc/sudoers</filename>:</para> + <para>安裝完成之後,可用安裝的 <command>visudo</command> 以文字編輯器開啟設定檔,強烈建議使用 <command>visudo</command> 來編輯設定檔,由於它有內建的語法檢查程式可在檔案儲存之前檢驗是否有誤。</para> + + <para>設定檔由個小節所組成,透過這些小節可做常廣泛的設定,在以下的範例中,網站應用程式維護人員 user1 需要啟動、停止與重新啟動名稱為 <replaceable>webservice</replaceable> 的網站應用程式 。要授權此使用者執行這些工作的權限,可加入此行到 <filename>/usr/local/etc/sudoers</filename> 的最後:</para> <programlisting xml:lang="en">user1 ALL=(ALL) /usr/sbin/service webservice *</programlisting> - <para xml:lang="en">The user may now start <replaceable>webservice</replaceable> - using this command:</para> + <para>現在使用者可使用此指令來啟動 <replaceable>webservice</replaceable>:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>sudo /usr/sbin/service <replaceable>webservice</replaceable> start</userinput></screen> - <para xml:lang="en">While this configuration allows a single user access to the - <application>webservice</application> service; however, in most - organizations, there is an entire web team in charge of managing - the service. A single line can also give access to an entire - group. These steps will create a web group, add a user to this - group, and allow all members of the group to manage the - service:</para> + <para>雖然這項設定可以讓一位使用者存取 <application>webservice</application> 服務,但在大部份組織中會有一整個網站小組負責管理該服務,因此也可以一行來授予整個群組存取權,以下步驟會建立一個網站群組、加入使用者到這個群組,然後讓該群組中的所有成員能夠管理服務:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pw groupadd -g 6001 -n webteam</userinput></screen> - <para xml:lang="en">Using the same <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> command, the user is added to - the webteam group:</para> + <para>同樣使用 <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> 指令來加入該使用到 webteam 群組:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pw groupmod -m user1 -n webteam</userinput></screen> - <para xml:lang="en">Finally, this line in - <filename>/usr/local/etc/sudoers</filename> allows any - member of the webteam group to manage - <replaceable>webservice</replaceable>:</para> + <para>最後,在 <filename>/usr/local/etc/sudoers</filename> 中的這行設定可以讓 webteam 群組的所有成員可以管理 <replaceable>webservice</replaceable>:</para> <programlisting xml:lang="en">%webteam ALL=(ALL) /usr/sbin/service webservice *</programlisting> - <para xml:lang="en">Unlike <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <application>Sudo</application> - only requires the end user password. This adds an advantage where - users will not need shared passwords, a finding in most security - audits and just bad all the way around.</para> + <para>與 <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> 不同的是 <application>Sudo</application> 只需要一般使用者的密碼,這有一個使用者不需要共用密碼的優點,在大多數安全稽查都會發現共用密碼的問題且這種情況只有壞處可言。</para> - <para xml:lang="en">Users permitted to run applications with - <application>Sudo</application> only enter their own passwords. - This is more secure and gives better control than <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry>, - where the <systemitem class="username">root</systemitem> - password is entered and the user acquires all - <systemitem class="username">root</systemitem> - permissions.</para> + <para>使用 <application>Sudo</application> 允許使用者執行應用程式只需要輸入使用者自己的密碼,這更安全且提供比 <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> 更佳的控制權,因為 <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> 只要輸入 <systemitem class="username">root</systemitem> 密碼之後該使用者便可取得所有的 <systemitem class="username">root</systemitem> 權限。</para> <tip> - <para xml:lang="en">Most organizations are moving or have moved toward a two - factor authentication model. In these cases, the user may - not have a password to enter. <application>Sudo</application> - provides for these cases with the <literal>NOPASSWD</literal> - variable. Adding it to the configuration above - will allow all members of the <replaceable>webteam</replaceable> - group to manage the service without the password - requirement:</para> + <para>大多數組織已正在導入或已導入雙重認証 (Two factor authentication),在這個情境下使用者可以不用輸入密碼,<application>Sudo</application> 提供了 <literal>NOPASSWD</literal> 變數來供這個情境使用,可將該設定加入到上述的設定將可允許所有 <replaceable>webteam</replaceable> 群組的成員不需要輸入密碼便可管理該服務:</para> <programlisting xml:lang="en">%webteam ALL=(ALL) NOPASSWD: /usr/sbin/service webservice *</programlisting> </tip> @@ -20975,64 +20594,31 @@ jail:httpd:memoryuse:deny=2G/jail</programlisting> <sect2 xml:id="security-sudo-loggin"> <title>記錄輸出</title> - <para xml:lang="en">An advantage to implementing - <application>Sudo</application> is the ability to enable - session logging. Using the built in log mechanisms - and the included <application>sudoreplay</application> - command, all commands initiated through - <application>Sudo</application> are logged for later - verification. To enable this feature, add a default log - directory entry, this example uses a user variable. - Several other log filename conventions exist, consult the - manual page for <application>sudoreplay</application> for - additional information.</para> + <para>採用 <application>Sudo</application> 的另一個優點是能夠開啟連線階段的記錄。使用內建立記錄機制與內含的 <application>sudoreplay</application> 指令,所有透過 <application>Sudo</application> 初始化的指令會被記錄下來供往後檢驗用。要開啟這個功能要加入預設記錄目錄的項目,在以下範例中使用了使用者變數來做目錄名稱,也還有許多其他記錄檔名稱慣例,可參考 <application>sudoreplay</application> 的操作手冊來取得進一步資訊。</para> <programlisting xml:lang="en">Defaults iolog_dir=/var/log/sudo-io/%{user}</programlisting> <tip> - <para xml:lang="en">This directory will be created automatically after the - logging is configured. It is best to let the system create - directory with default permissions just to be safe. In - addition, this entry will also log administrators who use the - <application>sudoreplay</application> command. To change - this behavior, read and uncomment the logging options inside - <filename>sudoers</filename>.</para> + <para>這個目錄會在記錄功能設定之後自動建立,最好讓系統以預設的權限來建立目錄比較保險,除此之外,這個設定項目也會記錄使用 <application>sudoreplay</application> 指令的管理者,要更改設定請閱讀並取消在 <filename>sudoers</filename> 中記錄選項的註解。</para> </tip> - <para xml:lang="en">Once this directive has been added to the - <filename>sudoers</filename> file, any user configuration - can be updated with the request to log access. In the - example shown, the updated <replaceable>webteam</replaceable> - entry would have the following additional changes:</para> + <para>一旦這個設定加入至 <filename>sudoers</filename> 檔案之後,所有的使用者設定項目便可加上記錄存取動作的項目,在 <replaceable>webteam</replaceable> 項目加入額外設定之後的範例如下: </para> <programlisting xml:lang="en">%webteam ALL=(ALL) NOPASSWD: LOG_INPUT: LOG_OUTPUT: /usr/sbin/service webservice *</programlisting> - <para xml:lang="en">From this point on, all <replaceable>webteam</replaceable> - members altering the status of the - <replaceable>webservice</replaceable> application - will be logged. The list of previous and current sessions - can be displayed with:</para> + <para>從此之後,所有 <replaceable>webteam</replaceable> 修改 <replaceable>webservice</replaceable> 應用程式狀態的成員將會被記錄下來。要列出先前與目前連線階段的記錄可:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>sudoreplay -l</userinput></screen> - <para xml:lang="en">In the output, to replay a specific session, search for the - <literal>TSID=</literal> entry, and pass that to - <application>sudoreplay</application> with no other options to - replay the session at normal speed. For example:</para> + <para>在輸出結果中要重播指定連線階段的記錄可搜尋 <literal>TSID=</literal> 項目,然後傳送給 <application>sudoreplay</application> 且不加其他選項便可以一般速度重播連線階段,例如:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>sudoreplay user1/00/00/02</userinput></screen> <warning> - <para xml:lang="en">While sessions are logged, any administrator is - able to remove sessions and leave only a question of why they - had done so. It is worthwhile to add a daily check - through an intrusion detection system (<acronym>IDS</acronym>) - or similar software so that other administrators are alerted - to manual alterations.</para> + <para>雖然所有連線階段都會被記錄,但任何管理者都可以移除連線階段,使得沒人知道它們做了什麼事,所以非常值得在入侵偵測系統 (<acronym>IDS</acronym>) 或類似的軟體加入每日檢查,以便在有人為修改時通知其他管理人員。</para> </warning> - <para xml:lang="en">The <command>sudoreplay</command> is extremely extendable. - Consult the documentation for more information.</para> + <para><command>sudoreplay</command> 的擴充空間非常大,請參考說明文件來取得更多資訊。</para> </sect2> </sect1> </chapter> @@ -25419,6 +25005,129 @@ da0: <STECH Simple Drive 1.04> s/n WD-WXE508CAN263 detached <para>這個機制一般會用在記憶卡與 <acronym>USB</acronym> 隨身碟,也可用在任何 Block 裝置,包含光碟機或 <acronym>iSCSI</acronym> <acronym>LUN</acronym>。</para> </sect2> + + <sect2> + <title><acronym>USB</acronym> 大容量儲存目標</title> + + <note> + <para><citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</manvolnum></citerefentry> 驅動程式是一個在 FreeBSD 12.0 之後才可用的 <acronym>USB</acronym> 裝置模式驅動程式。</para> + </note> + + <para xml:lang="en">When running on <acronym>USB</acronym> + <acronym>OTG</acronym>-compliant hardware like that built into + many embedded boards, the FreeBSD <acronym>USB</acronym> stack + can run in <emphasis>device mode</emphasis>. Device mode + makes it possible for the computer to present itself as + different kinds of <acronym>USB</acronym> device classes, + including serial ports, network adapters, and mass storage. A + <acronym>USB</acronym> host like a laptop or desktop computer + is able to access them just like physical + <acronym>USB</acronym> devices.</para> + + <para xml:lang="en">The <citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</manvolnum></citerefentry> kernel module allows the + <acronym>USB</acronym> stack to switch between host-side and + device-side automatically, depending on what is connected to + the <acronym>USB</acronym> port. Connecting a + <acronym>USB</acronym> device like a memory stick to the + <acronym>USB</acronym> <acronym>OTG</acronym> port causes FreeBSD + to switch to host mode. Connecting a <acronym>USB</acronym> + host like a computer causes FreeBSD to switch to device + mode.</para> + + <para xml:lang="en">What FreeBSD presents to the <acronym>USB</acronym> host + depends on the <varname>hw.usb.template</varname> sysctl. See + <citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</manvolnum></citerefentry> for the list of available values. Note + that for the host to notice the configuration change, it must + be either physically disconnected and reconnected, or forced + to rescan the <acronym>USB</acronym> bus in a system-specific + way. When FreeBSD is running on the host, <citerefentry vendor="current"><refentrytitle>usbconfig</refentrytitle><manvolnum>8</manvolnum></citerefentry> + <command>reset</command> can be used. This also must be done + after loading <filename>usb_template.ko</filename> if the + <acronym>USB</acronym> host was already connected to the + <acronym>USB</acronym> <acronym>OTG</acronym> socket.</para> + + <para xml:lang="en">The <varname>hw.usb.template</varname> sysctl + is set to 0 by default, making FreeBSD work as a + <acronym>USB</acronym> Mass Storage target. Both + <citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</manvolnum></citerefentry> and <citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</manvolnum></citerefentry> kernel modules must + be loaded. <citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</manvolnum></citerefentry> interfaces to the CTL subsystem, + the same one that is used for <acronym>iSCSI</acronym> or + Fibre Channel targets. On the host side, + <acronym>USB</acronym> Mass Storage initiators can only access + a single <acronym>LUN</acronym>, + <acronym>LUN</acronym> 0.</para> + + <para xml:lang="en"><acronym>USB</acronym> Mass Storage does not require the + <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon to be running, although it can be used if + desired. This is different from <acronym>iSCSI</acronym>. + Thus, there are two ways to configure the target: + <citerefentry><refentrytitle>ctladm</refentrytitle><manvolnum>8</manvolnum></citerefentry>, or <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Both require the + <filename>cfumass.ko</filename> kernel module to be loaded. + The module can be loaded manually:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>kldload cfumass</userinput></screen> + + <para xml:lang="en">If <filename>cfumass.ko</filename> has not been built into + the kernel, <filename>/boot/loader.conf</filename> can be set + to load the module at boot:</para> + + <programlisting xml:lang="en">cfumass_load="YES"</programlisting> + + <para xml:lang="en">A <acronym>LUN</acronym> can be created without the + <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>ctladm create -b block -o file=/data/target0</userinput></screen> + + <para xml:lang="en">This presents the contents of the image file + <filename>/data/target0</filename> as a <acronym>LUN</acronym> + to the <acronym>USB</acronym> host. The file must exist + before executing the command. To configure the + <acronym>LUN</acronym> at system startup, add the command to + <filename>/etc/rc.local</filename>.</para> + + <para xml:lang="en"><citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> can also be used to manage + <acronym>LUN</acronym>s. Create + <filename>/etc/ctl.conf</filename>, add a line to + <filename>/etc/rc.conf</filename> to make sure <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> is + automatically started at boot, and then start the + daemon.</para> + + <para xml:lang="en">This is an example of a simple + <filename>/etc/ctl.conf</filename> configuration file. Refer + to <citerefentry><refentrytitle>ctl.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for a more complete description of the + options.</para> + + <programlisting xml:lang="en">target naa.50015178f369f092 { + lun 0 { + path /data/target0 + size 4G + } +}</programlisting> + + <para xml:lang="en">The example creates a single target with a single + <acronym>LUN</acronym>. The + <literal>naa.50015178f369f092</literal> is a device identifier + composed of 32 random hexadecimal digits. The + <literal>path</literal> line defines the full path to a file + or zvol backing the <acronym>LUN</acronym>. That file must + exist before starting <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The second line is + optional and specifies the size of the + <acronym>LUN</acronym>.</para> + + <para xml:lang="en">To make sure the <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon is started at + boot, add this line to + <filename>/etc/rc.conf</filename>:</para> + + <programlisting xml:lang="en">ctld_enable="YES"</programlisting> + + <para xml:lang="en">To start <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> now, run this command:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>service ctld start</userinput></screen> + + <para>當 <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></citerefentry> Daemon 啟動後,它會讀取 <filename>/etc/ctl.conf</filename>,若這個檔案在 Daemon 啟動之後才做修改,要重新載入變更的內容才能立即生效:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>service ctld reload</userinput></screen> + </sect2> </sect1> <sect1 xml:id="creating-cds"> @@ -28246,7 +27955,7 @@ esac</programlisting> <chapter version="5.0" xml:id="geom"> <info> - <title xml:lang="en">GEOM: Modular Disk Transformation Framework</title> + <title>GEOM: 模組化磁碟轉換框架</title> <authorgroup> <author xml:lang="en"> @@ -28270,13 +27979,7 @@ esac</programlisting> <see><acronym>GEOM</acronym></see> </indexterm> - <para xml:lang="en">In FreeBSD, the <acronym>GEOM</acronym> framework permits - access and control to classes, such as Master Boot Records and - <acronym>BSD</acronym> labels, through the use of providers, or - the disk devices in <filename>/dev</filename>. By supporting - various software <acronym>RAID</acronym> configurations, - <acronym>GEOM</acronym> transparently provides access to the - operating system and operating system utilities.</para> + <para>在 FreeBSD 中,<acronym>GEOM</acronym> 可允許對類別做存取與控制,例如:主開機記錄 (Master Boot Record) 與 <acronym>BSD</acronym> 標籤,透過利用提供者,或在 <filename>/dev</filename> 中的磁碟裝置。透過支援各種 <acronym>RAID</acronym> 的配置,<acronym>GEOM</acronym> 透明的提供了對作業系統與作業系統工具的存取。</para> <para xml:lang="en">This chapter covers the use of disks under the <acronym>GEOM</acronym> framework in FreeBSD. This includes the @@ -33098,60 +32801,50 @@ http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html <sect1 xml:id="virtualization-guest-virtualbox"> <title>在 <trademark>VirtualBox</trademark> 使用 FreeBSD 作為客端</title> - <para xml:lang="en">FreeBSD works well as a guest in - <application><trademark>VirtualBox</trademark></application>. The virtualization - software is available for most common operating systems, - including FreeBSD itself.</para> + <para>在 <application><trademark>VirtualBox</trademark></application> 中使用 FreeBSD 做為客端系統也可運作的很好,虛擬化軟體可支援最常見的幾個作業系統,這當然也包含 FreeBSD。</para> - <para xml:lang="en">The <application><trademark>VirtualBox</trademark></application> guest additions - provide support for:</para> + <para><application><trademark>VirtualBox</trademark></application> guest additions 支援以下功能:</para> <itemizedlist> <listitem> - <para xml:lang="en">Clipboard sharing.</para> + <para>剪貼簿共享。</para> </listitem> <listitem> - <para xml:lang="en">Mouse pointer integration.</para> + <para>滑鼠指標整合。</para> </listitem> <listitem> - <para xml:lang="en">Host time synchronization.</para> + <para>主機時間同步。</para> </listitem> <listitem> - <para xml:lang="en">Window scaling.</para> + <para>視窗縮放。</para> </listitem> <listitem> - <para xml:lang="en">Seamless mode.</para> + <para>無痕模式。</para> </listitem> </itemizedlist> <note> - <para xml:lang="en">These commands are run in the FreeBSD guest.</para> + <para>以下指令均是在 FreeBSD 客端中執行。</para> </note> - <para xml:lang="en">First, install the - <package>emulators/virtualbox-ose-additions</package> package - or port in the FreeBSD guest. This will install the port:</para> + <para>首先,在 FreeBSD 客端安裝 <package>emulators/virtualbox-ose-additions</package> 套件或 Port,以下指令會安裝 Port:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/emulators/virtualbox-ose-additions && make install clean</userinput></screen> - <para xml:lang="en">Add these lines to <filename>/etc/rc.conf</filename>:</para> + <para>加入下行到 <filename>/etc/rc.conf</filename>:</para> <programlisting xml:lang="en">vboxguest_enable="YES" vboxservice_enable="YES"</programlisting> - <para xml:lang="en">If <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> or <citerefentry><refentrytitle>ntpdate</refentrytitle><manvolnum>8</manvolnum></citerefentry> is used, disable host - time synchronization:</para> + <para>若有使用 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 或 <citerefentry><refentrytitle>ntpdate</refentrytitle><manvolnum>8</manvolnum></citerefentry>,便可關閉主機時間同步功能:</para> <programlisting xml:lang="en">vboxservice_flags="--disable-timesync"</programlisting> - <para xml:lang="en"><application>Xorg</application> will automatically recognize - the <literal>vboxvideo</literal> driver. It can also be - manually entered in - <filename>/etc/X11/xorg.conf</filename>:</para> + <para><application>Xorg</application> 會自動辨識 <literal>vboxvideo</literal> 驅動程式,也可手動在 <filename>/etc/X11/xorg.conf</filename> 中輸入:</para> <programlisting xml:lang="en">Section "Device" Identifier "Card0" @@ -33160,18 +32853,14 @@ vboxservice_enable="YES"</programlisting> BoardName "VirtualBox Graphics Adapter" EndSection</programlisting> - <para xml:lang="en">To use the <literal>vboxmouse</literal> driver, adjust the - mouse section in <filename>/etc/X11/xorg.conf</filename>:</para> + <para>要使用 <literal>vboxmouse</literal> 驅動程式,可調整在 <filename>/etc/X11/xorg.conf</filename> 中與滑鼠相關的一節:</para> <programlisting xml:lang="en">Section "InputDevice" Identifier "Mouse0" Driver "vboxmouse" EndSection</programlisting> - <para xml:lang="en"><acronym>HAL</acronym> users should create the following - <filename>/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi</filename> - or copy it from - <filename>/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi</filename>:</para> + <para><acronym>HAL</acronym> 的使用者應建立以下 <filename>/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi</filename> 或複製自 <filename>/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi</filename>:</para> <programlisting xml:lang="en"><?xml version="1.0" encoding="utf-8"?> <!-- @@ -33210,141 +32899,69 @@ EndSection</programlisting> <sect1 xml:id="virtualization-host-virtualbox"> <title>以 FreeBSD 作為主端安裝 <application>VirtualBox</application> </title> - <para xml:lang="en"><application><trademark>VirtualBox</trademark></application> is an actively - developed, complete virtualization package, that is available - for most operating systems including <trademark class="registered">Windows</trademark>, <trademark class="registered">Mac OS</trademark>, <trademark class="registered">Linux</trademark> - and FreeBSD. It is equally capable of running <trademark class="registered">Windows</trademark> or - <trademark class="registered">UNIX</trademark>-like guests. It is released as open source software, but - with closed-source components available in a separate extension - pack. These components include support for USB 2.0 devices. - More information may be found on the <link xlink:href="http://www.virtualbox.org/wiki/Downloads"><quote>Downloads</quote> - page of the <application><trademark>VirtualBox</trademark></application> - wiki</link>. Currently, these extensions are not available - for FreeBSD.</para> + <para><application><trademark>VirtualBox</trademark></application> 是一套積極開發、完整的虛擬化套件,適用大多數作業系統,包含 <trademark class="registered">Windows</trademark>, <trademark class="registered">Mac OS</trademark>, <trademark class="registered">Linux</trademark> 與 FreeBSD,它同樣能夠執行類 <trademark class="registered">Windows</trademark> 或 <trademark class="registered">UNIX</trademark> 的客端系統。它是以開源軟體的方式發佈,但閉源元件可獨立在擴充包中使用,這些元件包含對 USB 2.0 裝置的支援。更多資訊可在 <link xlink:href="http://www.virtualbox.org/wiki/Downloads"><application><trademark>VirtualBox</trademark></application> wiki 的 <quote>Downloads</quote> 頁面</link>。目前,這些擴充套件並不支援 FreeBSD。</para> <sect2 xml:id="virtualization-virtualbox-install"> <title>安裝 <trademark>VirtualBox</trademark></title> - <para xml:lang="en"><application><trademark>VirtualBox</trademark></application> is available as a - FreeBSD package or port in - <package>emulators/virtualbox-ose</package>. The port can be - installed using these commands:</para> + <para><application><trademark>VirtualBox</trademark></application> 可於 <package>emulators/virtualbox-ose</package> 以 FreeBSD 套件或 Port 的方式取得。要安裝 Port 可使用以下指令:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/ports/emulators/virtualbox-ose</userinput> <prompt>#</prompt> <userinput>make install clean</userinput></screen> - <para xml:lang="en">One useful option in the port's configuration menu is the - <literal>GuestAdditions</literal> suite of programs. These - provide a number of useful features in guest operating - systems, like mouse pointer integration (allowing the mouse to - be shared between host and guest without the need to press a - special keyboard shortcut to switch) and faster video - rendering, especially in <trademark class="registered">Windows</trademark> guests. The guest - additions are available in the <guimenu>Devices</guimenu> - menu, after the installation of the guest is finished.</para> - - <para xml:lang="en">A few configuration changes are needed before - <application><trademark>VirtualBox</trademark></application> is started for the - first time. The port installs a kernel module in - <filename>/boot/modules</filename> which - must be loaded into the running kernel:</para> + <para>在 Port 的設定選單中 <literal>GuestAdditions</literal> 相關程式是最有用的選項之一,這些程式可在客端作業系統提供數個有用的功能,如滑鼠指標整合 (允許滑鼠在主端與客端之間移動,不需要按特殊快速鍵來切換) 與較快的影像繪圖速度,特別是在 <trademark class="registered">Windows</trademark> 的客端系統。Guest additions 可在客端系統安裝完之後的 <guimenu>Devices</guimenu> 選單找到。</para> + + <para>還有一些設定需要在 <application><trademark>VirtualBox</trademark></application> 第一次啟動端做修改,Port 會安裝一個核心模組在 <filename>/boot/modules</filename>,該模組必須在核心中載入:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>kldload vboxdrv</userinput></screen> - <para xml:lang="en">To ensure the module is always loaded after a reboot, - add this line to - <filename>/boot/loader.conf</filename>:</para> + <para>要確保該模組在重新開機後會載入,可加入下行到 <filename>/boot/loader.conf</filename>:</para> <programlisting xml:lang="en">vboxdrv_load="YES"</programlisting> - <para xml:lang="en">To use the kernel modules that allow bridged or host-only - networking, add this line to - <filename>/etc/rc.conf</filename> and reboot the - computer:</para> + <para>要使用可支援橋接或僅限主端 (Host-only) 的網路,可加入下行到 <filename>/etc/rc.conf</filename>,然後重新啟動電腦:</para> <programlisting xml:lang="en">vboxnet_enable="YES"</programlisting> - <para xml:lang="en">The <systemitem class="groupname">vboxusers</systemitem> - group is created during installation of - <application><trademark>VirtualBox</trademark></application>. All users that need - access to <application><trademark>VirtualBox</trademark></application> will have to - be added as members of this group. <command>pw</command> can - be used to add new members:</para> + <para>在安裝 <application><trademark>VirtualBox</trademark></application> 的過程中會建立 <systemitem class="groupname">vboxusers</systemitem> 群組,所有需要存取 <application><trademark>VirtualBox</trademark></application> 的使用者均需要加入成為此群組的成員,<command>pw</command> 可用來加入新的成員:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>pw groupmod vboxusers -m <replaceable>yourusername</replaceable></userinput></screen> - <para xml:lang="en">The default permissions for - <filename>/dev/vboxnetctl</filename> are restrictive and need - to be changed for bridged networking:</para> + <para><filename>/dev/vboxnetctl</filename> 的預設權限是受限的,需要更改後才可使用橋接網路:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>chown root:vboxusers /dev/vboxnetctl</userinput> <prompt>#</prompt> <userinput>chmod 0660 /dev/vboxnetctl</userinput></screen> - <para xml:lang="en">To make this permissions change permanent, add these - lines to <filename>/etc/devfs.conf</filename>:</para> + <para>要永久變更權限,可加入下列幾行到 <filename>/etc/devfs.conf</filename>:</para> <programlisting xml:lang="en">own vboxnetctl root:vboxusers perm vboxnetctl 0660</programlisting> - <para xml:lang="en">To launch <application><trademark>VirtualBox</trademark></application>, - type from a <application>Xorg</application> session:</para> + <para>要執行 <application><trademark>VirtualBox</trademark></application>,可在 <application>Xorg</application> 工作階段輸入:</para> <screen xml:lang="en"><prompt>%</prompt> <userinput>VirtualBox</userinput></screen> - <para xml:lang="en">For more information on configuring and using - <application><trademark>VirtualBox</trademark></application>, refer to the - <link xlink:href="http://www.virtualbox.org">official - website</link>. For FreeBSD-specific information and - troubleshooting instructions, refer to the <link xlink:href="http://wiki.FreeBSD.org/VirtualBox">relevant - page in the FreeBSD wiki</link>.</para> + <para>要取得更多有關設定與使用 <application><trademark>VirtualBox</trademark></application> 的資訊,請參考 <link xlink:href="http://www.virtualbox.org">官方網站</link>。供 FreeBSD 特定的資訊與疑難排解操作指示,可參考 <link xlink:href="http://wiki.FreeBSD.org/VirtualBox">FreeBSD wiki 中相關的頁面</link>。</para> </sect2> <sect2 xml:id="virtualization-virtualbox-usb-support"> <title><trademark>VirtualBox</trademark> USB 支援</title> - <para xml:lang="en">The <application><trademark>VirtualBox</trademark></application> extension - pack is not available for FreeBSD hosts. Without the extension - pack, the FreeBSD host cannot pass <acronym>USB</acronym> - ports through to guest operating systems.</para> + <para><application><trademark>VirtualBox</trademark></application> 擴充包目前不支援 FreeBSD 主端系統,沒有這個擴充包,FreeBSD 主端系統無法傳遞 <acronym>USB</acronym> 埠給客端作業系統。</para> </sect2> <sect2 xml:id="virtualization-virtualbox-host-dvd-cd-access"> <title><trademark>VirtualBox</trademark> Host <acronym>DVD</acronym>/<acronym>CD</acronym> 存取</title> - <para xml:lang="en">Access to the host - <acronym>DVD</acronym>/<acronym>CD</acronym> drives from - guests is achieved through the sharing of the physical drives. - Within <trademark>VirtualBox</trademark>, this is set up from the Storage window in - the Settings of the virtual machine. If needed, create an - empty <acronym>IDE</acronym> - <acronym>CD</acronym>/<acronym>DVD</acronym> device first. - Then choose the Host Drive from the popup menu for the virtual - <acronym>CD</acronym>/<acronym>DVD</acronym> drive selection. - A checkbox labeled <literal>Passthrough</literal> will appear. - This allows the virtual machine to use the hardware directly. - For example, audio <acronym>CD</acronym>s or the burner will - only function if this option is selected.</para> - - <para xml:lang="en"><acronym>HAL</acronym> needs to run for - <application><trademark>VirtualBox</trademark></application> - <acronym>DVD</acronym>/<acronym>CD</acronym> functions to - work, so enable it in <filename>/etc/rc.conf</filename> and - start it if it is not already running:</para> + <para>透過共享實體磁碟機可讓客端系統能夠存取主端系統的 <acronym>DVD</acronym>/<acronym>CD</acronym> 磁碟機。在 <trademark>VirtualBox</trademark> 中,這個功能可在虛擬機器設定中的儲存 (Storage) 視窗中設定。若需要,可先建立一個空的 <acronym>IDE</acronym> <acronym>CD</acronym>/<acronym>DVD</acronym> 裝置,然後在跳出的選單中選擇要做為虛擬 <acronym>CD</acronym>/<acronym>DVD</acronym> 磁碟機的主端磁碟機,此時會出現一個標籤為 <literal>Passthrough</literal> 的核選方塊,勾選這個核選方塊可讓虛擬機器直接使用該硬體,例如,音樂 <acronym>CD</acronym> 或燒錄機只會在有勾選此選項時能夠運作。</para> + + <para><application><trademark>VirtualBox</trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> 功能要能運作需要執行 <acronym>HAL</acronym>,因此需在 <filename>/etc/rc.conf</filename> 中開啟,若該服務尚未啟動,則啟動它:</para> <programlisting xml:lang="en">hald_enable="YES"</programlisting> <screen xml:lang="en"><prompt>#</prompt> <userinput>service hald start</userinput></screen> - <para xml:lang="en">In order for users to be able to use - <application><trademark>VirtualBox</trademark></application> - <acronym>DVD</acronym>/<acronym>CD</acronym> functions, they - need access to <filename>/dev/xpt0</filename>, - <filename>/dev/cd<replaceable>N</replaceable></filename>, and - <filename>/dev/pass<replaceable>N</replaceable></filename>. - This is usually achieved by making the user a member of - <systemitem class="groupname">operator</systemitem>. - Permissions to these devices have to be corrected by adding - these lines to <filename>/etc/devfs.conf</filename>:</para> + <para>為了讓使用者能夠使用 <application><trademark>VirtualBox</trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> 功能,這些使用者需要存取 <filename>/dev/xpt0</filename>, <filename>/dev/cd<replaceable>N</replaceable></filename> 以及 <filename>/dev/pass<replaceable>N</replaceable></filename>,這通常可讓這些使用者成為 <systemitem class="groupname">operator</systemitem> 的成員來達成。對這些裝置的權限必須加入下行到 <filename>/etc/devfs.conf</filename> 來修正:</para> <programlisting xml:lang="en">perm cd* 0660 perm xpt0 0660 @@ -33361,9 +32978,9 @@ perm pass* 0660</programlisting> <acronym>BSD</acronym>-licensed hypervisor became part of the base system with FreeBSD 10.0-RELEASE. This hypervisor supports a number of guests, including FreeBSD, OpenBSD, and many <trademark class="registered">Linux</trademark> - distributions. Currently, <application>bhyve</application> only - supports a serial console and does not emulate a graphical - console. Virtualization offload features of newer + distributions. By default, <application>bhyve</application> + provides access to serial console and does not emulate a + graphical console. Virtualization offload features of newer <acronym>CPU</acronym>s are used to avoid the legacy methods of translating instructions and manually managing memory mappings.</para> @@ -33564,8 +33181,80 @@ grub> <userinput>boot</userinput></screen> <screen xml:lang="en"><prompt>#</prompt> <userinput>bhyvectl --destroy --vm=<replaceable>linuxguest</replaceable></userinput></screen> </sect2> + <sect2 xml:id="virtualization-bhyve-uefi"> + <title>使用 <acronym>UEFI</acronym> 韌體開機 <application>bhyve</application> 虛擬機器</title> + + <para xml:lang="en">In addition to <application>bhyveload</application> and + <application>grub-bhyve</application>, the + <application>bhyve</application> hypervisor can also boot + virtual machines using the <acronym>UEFI</acronym> userspace + firmware. This option may support guest operating systems + that are not supported by the other loaders.</para> + + <para xml:lang="en">In order to make use of the <acronym>UEFI</acronym> + support in <application>bhyve</application>, first obtain the + <acronym>UEFI</acronym> firmware images. This can be done + by installing <package>sysutils/bhyve-firmware</package> + port or package.</para> + + <para xml:lang="en">With the firmware in place, add the flags + <option>-l bootrom,<replaceable>/path/to/firmware</replaceable></option> + to your <application>bhyve</application> command line. + The actual <application>bhyve</application> command may look + like this:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \ +-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \ +-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \ +-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI.fd</replaceable> \ +<replaceable>guest</replaceable></userinput></screen> + + <para xml:lang="en"><package>sysutils/bhyve-firmware</package> also contains a + <acronym>CSM</acronym>-enabled firmware, to boot guests with no + <acronym>UEFI</acronym> support in legacy + <acronym>BIOS</acronym> mode:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \ +-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \ +-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \ +-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI_CSM.fd</replaceable> \ +<replaceable>guest</replaceable></userinput></screen> + </sect2> + + <sect2 xml:id="virtualization-bhyve-framebuffer"> + <title>供 <application>bhyve</application> 客端用的圖型化 <acronym>UEFI</acronym> Framebuffer </title> + + <para xml:lang="en">The <acronym>UEFI</acronym> firmware support is particularly + useful with predominantly graphical guest operating systems + such as Microsoft <trademark class="registered">Windows</trademark>.</para> + + <para xml:lang="en">Support for the UEFI-GOP framebuffer may also be enabled + with the <option>-s 29,fbuf,tcp=<replaceable>0.0.0.0:5900</replaceable></option> + flags. The framebuffer resolution may be configured with + <option>w=<replaceable>800</replaceable></option> and + <option>h=<replaceable>600</replaceable></option>, and + <application>bhyve</application> can be instructed to wait for + a <acronym>VNC</acronym> connection before booting the guest + by adding <option>wait</option>. The framebuffer may be + accessed from the host or over the network via the + <acronym>VNC</acronym> protocol.</para> + + <para><application>bhyve</application> 指令的結果會如下:</para> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 31:0,lpc \ +-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \ +-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \ +-s 29,fbuf,tcp=<replaceable>0.0.0.0:5900</replaceable>,w=<replaceable>800</replaceable>,h=<replaceable>600</replaceable>,wait \ +-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI.fd</replaceable> \ +<replaceable>guest</replaceable></userinput></screen> + + <para xml:lang="en">Note, in BIOS emulation mode, the framebuffer will cease + receiving updates once control is passed from firmware to + guest operating system.</para> + </sect2> + <sect2 xml:id="virtualization-bhyve-zfs"> - <title>在 <application>bhyve</application> Guests 使用 <acronym>ZFS</acronym></title> + <title>在 <application>bhyve</application> 客端使用 <acronym>ZFS</acronym></title> <para xml:lang="en">If <acronym>ZFS</acronym> is available on the host machine, using <acronym>ZFS</acronym> volumes @@ -34571,13 +34260,13 @@ Option "XkbOptions" "grp:toggle"</programlisting> <sect1 xml:id="updating-upgrading-synopsis"> <title>概述</title> - <para>FreeBSD 在每次的發佈之間持續在開發。有些人喜歡官方發佈的版本,有些人則喜歡持續同步使用最新的開發版本。雖然如此,即使是官方發佈的版本仍時常會有安全性與其他緊急修復的更新。無論使用哪種版本,FreeBSD 都提供所有必要的工具來讓系統保持最新版,而且可以輕易升級不同版本。本章將說明如何追蹤開發版本的系統及保持 FreeBSD 系統維持新版的基本工具。</para> + <para>FreeBSD 在每次的發佈之間持續在開發。有些人偏好正式發佈的版本,也有另一群人喜歡使用最新的開發版本。然而,即使是正式發佈的版本也時常會有安全性與其他緊急修復的更新,因此,無論使用哪種版本,FreeBSD 都提供所有必要的工具來讓系統能維持最新的版本,且讓各種版本都能簡單的升級。本章將說明如何追蹤開發版本的系統及讓 FreeBSD 系統維持最新版本的基本工具。</para> <para>讀完這章,您將了解︰</para> <itemizedlist> <listitem> - <para>如何使用 <application>freebsd-update</application>, <application>Subversion</application> 來讓 FreeBSD 系統保持新版。</para> + <para>如何使用 <application>freebsd-update</application>, <application>Subversion</application> 來維持 FreeBSD 系統為最新版。</para> </listitem> <listitem> @@ -34647,7 +34336,7 @@ Option "XkbOptions" "grp:toggle"</programlisting> <see>updating-upgrading</see> </indexterm> - <para>即時套用安全性更新並升級到新發佈的作業系統對管理一個持續運作的系統是重要的。FreeBSD 內含可以執行這兩項任務的工具程式,叫做 <command>freebsd-update</command>。</para> + <para>隨時套用安全性更新以及升級到新發佈的作業系統版本對管理一個持續運作的系統是非常重要的任務,FreeBSD 內含可以執行這兩項任務的工具程式,叫做 <command>freebsd-update</command>。</para> <para>這個工具程式支援使用 Binary 對 FreeBSD 做安全性與和錯誤更新,不需要手動編譯和安裝修補 (Patch) 或新核心。目前由安全性團隊提供支援的 Binary 更新可用於所有的架構和發行版。支援的發行版清單及各自的支援期限列於 <uri xlink:href="http://www.FreeBSD.org/security/">http://www.FreeBSD.org/security/</uri>。</para> @@ -34686,7 +34375,7 @@ UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting> # will have any local changes merged into the version from the new release. MergeChanges /etc/ /var/named/etc/ /boot/device.hints</programlisting> - <para>列出 <command>freebsd-update</command> 應嘗試合併的設定檔目錄。 檔案合併程序是指一系列類似 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 做的 <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></citerefentry> 修補動作, 但是選項比較少。 合併的動作包含接受、開啟編輯器,或讓 <command>freebsd-update</command> 中止。 如果有疑慮,請先備份 <filename>/etc</filename>,然後再接受合併。 更多關於 <command>mergemaster</command> 的資訊, 參見 <xref linkend="mergemaster"/>。</para> + <para>列出 <command>freebsd-update</command> 應嘗試合併的設定檔目錄。 檔案合併程序是指一系列類似 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 做的 <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></citerefentry> 修補動作, 但是選項比較少。 合併的動作包含接受、開啟編輯器,或讓 <command>freebsd-update</command> 中止。 如果有疑慮,請先備份 <filename>/etc</filename>,然後再接受合併。 更多關於 <command>mergemaster</command> 的資訊, 參見 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry>。</para> <programlisting xml:lang="en"># Directory in which to store downloaded updates and temporary # files used by FreeBSD Update. @@ -35144,839 +34833,314 @@ before running "/usr/sbin/freebsd-update install"</screen> </listitem> </orderedlist> </sect2> - - <sect2 xml:id="stable"> - <title>使用 FreeBSD-STABLE</title> - - <para>主要發行版便是使用 FreeBSD-STABLE 這個開發分支所產生。變更進入這個分支的速度比較慢,並假設這些變更已經先在 FreeBSD-CURRENT 測試過。但這 <emphasis>仍然</emphasis> 是一個開發分支,而且 FreeBSD-STABLE 的原始碼在任何時候都有可能不適合一般的使用。它只是另一個開發分支,並非專門提供給終端使用者使用。若沒有替代資源可供測試的使用者應該改使用最新的 FreeBSD 發行版。</para> - - <para>有興趣追蹤或對 FreeBSD 開發流程貢獻的人,尤其是對 FreeBSD 接下來的發行版相關內容有興趣的人,應該考慮追蹤 FreeBSD-STABLE。</para> - - <para>儘管 FreeBSD-STABLE 分支應該在任何時候均能正確編譯、執行,但是並不保証不會有問題。因為使用 FreeBSD-STABLE 的人比 FreeBSD-CURRENT 多,有時無可避免地會在 FreeBSD-STABLE 發現在 FreeBSD-CURRENT 並非顯而易見的錯誤和極端的狀況。也因此,我們並不建議盲目追蹤 FreeBSD-STABLE。 特別重要的是 <emphasis>不要</emphasis> 在尚未使用開發或測試環境對程式碼做完整的測試之前,升級任何上線的伺服器為 FreeBSD-STABLE。</para> - - <para>若要追蹤 FreeBSD-STABLE:</para> - - <indexterm xml:lang="en"> - <primary>-STABLE</primary> - <secondary>using</secondary> - </indexterm> - <orderedlist> - <listitem> - <para>加入 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-stable">freebsd-stable</link> 郵遞論壇來隨時瞭解 FreeBSD-STABLE 編譯的相依關係或是任何其他需特別注意的議題。開發者在評估一些有爭議的修正或更新時,也會先在這裡發信公告,讓使用者有機會可以對提案的更改提出問題。</para> - - <para>加入 <application>svn</application> 相關郵遞論壇來追蹤該分支的修訂。 例如,要追蹤 9-STABLE 分支的使用者應該加入 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/svn-src-stable-9">svn-src-stable-9</link> 郵遞論壇。這個郵遞論壇會記錄每一次修改的提交項目,以及可能產生的副作用的相關資訊。</para> - - <para>要加入這兩個郵遞論壇,請前往 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo">http://lists.FreeBSD.org/mailman/listinfo</link> 點選要訂閱的郵遞論壇,並依照網頁指示的步驟操作。要追蹤整個原始碼樹,不單只有 FreeBSD-CURRENT 的變更,可訂閱 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/svn-src-all">svn-src-all</link> 郵遞論壇。</para> - </listitem> - - <listitem> - <para>要安裝新的 FreeBSD-STABLE 系統, 可從 <link linkend="mirrors">FreeBSD 鏡像站</link> 或從 FreeBSD-STABLE 每個月的快照 (Snapshot) 來安裝最新的 FreeBSD-STABLE 發行版。請參考 <link xlink:href="@@URL_RELPREFIX@@/snapshots/">www.freebsd.org/snapshots</link> 來取得更多有關快照的資訊。</para> - - <para>要編譯或升級已經安裝的 FreeBSD 系統至 FreeBSD-STABLE,可使用 <link linkend="svn">svn</link> <indexterm> - <primary>Subversion</primary> - </indexterm> 來取得欲安裝分支的原始碼。分支的名稱列在 <link xlink:href="@@URL_RELPREFIX@@/releng/">www.freebsd.org/releng</link>,例如 <literal>stable/9</literal>。</para> - </listitem> - - <listitem> - <para>在編譯或升級到 FreeBSD-STABLE <indexterm> - <primary>-STABLE</primary> - <secondary>compiling</secondary> - </indexterm> 之前 , 請仔細閱讀 <filename>/usr/src/Makefile</filename> 並依照 <xref linkend="makeworld"/> 的指示操作。閱讀 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-stable">FreeBSD-STABLE 郵遞論壇</link> 以及 <filename>/usr/src/UPDATING</filename> 來了解升級的相關資訊,有時會含有升級下一個發行版的必要資訊。</para> - </listitem> - </orderedlist> - </sect2> </sect1> - <sect1 xml:id="synching"> - <title>同步原始碼</title> - - <para>有多許方法可以更新 FreeBSD 的原始碼,本節將說明主要的方法 <application>Subversion</application>。</para> - - <warning> - <para>雖然有可能只更新部份原始碼樹,但是正式支援的更新步驟是更新整個樹並重新編譯所有在使用者空間 (User space) 中的程式,例如在 <filename>/bin</filename> 和 <filename>/sbin</filename> 中的程式及核心原始碼。只更新部份的原始碼樹,例如:只更新核心或使用者空間的程式的做法經常會導致編譯錯誤、核心錯誤或資料損毀的問題。</para> - </warning> - - <indexterm xml:lang="en"> - <primary>Subversion</primary> - </indexterm> - - <para xml:lang="en"><application>Subversion</application> uses the - <emphasis>pull</emphasis> model of updating sources. The user, - or a <command>cron</command> script, invokes the - <command>svn</command> program which updates the local version - of the source. <application>Subversion</application> is the - preferred method for updating local source trees as updates are - up-to-the-minute and the user controls when updates are - downloaded. It is easy to restrict updates to specific files or - directories and the requested updates are generated on the fly - by the server. How to synchronize source using - <application>Subversion</application> is described in <xref linkend="svn"/>.</para> - - <para xml:lang="en">If a user inadvertently wipes out portions of the local - archive, <application>Subversion</application> will detect and - rebuild the damaged portions during an update.</para> - </sect1> - - <sect1 xml:id="makeworld"> - <title>重新編譯 World</title> - - <indexterm xml:lang="en"> - <primary>Rebuilding <quote>world</quote></primary> - </indexterm> - <para>當本地的原始碼樹已與特定版本的 FreeBSD 如 FreeBSD-STABLE 或 FreeBSD-CURRENT 同步以後,便可使用原始碼樹來重新編譯系統。這個程序即為重新編譯 World。</para> - - <para>在重新編譯 World <emphasis>之前</emphasis>,請確定已完成以下工作:</para> - - <procedure> - <title>編譯 World <emphasis>之前</emphasis> 要完成的工作</title> - - <step> - <para>備份所有重要的資料到另一個系統或可卸除的媒體,檢查備份的完整性並在手中保留一份可開機的安裝媒體。如何強調都不足夠說明在重新編譯系統 <emphasis>之前</emphasis> 備份系統的重要性。即便重新編譯 World 已變成簡單的一件事,也難免會有原始碼樹失誤導致系統無法開機的時候。您可能永遠都用不上備份,但最好確保安全而非後悔。</para> - </step> - - <step> - <indexterm xml:lang="en"><primary>mailing list</primary></indexterm> - <para>回顧最近 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-stable">freebsd-stable</link> 或 <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-current">freebsd-current</link> 中的項目,依您所追蹤的分支決定。注意任何已知的問題以及會被影響的系統。若已知的問題影響您已同步的原始碼版本,請等候表明問題已被解決的 <quote>全部解決 (all clear)</quote> 公告發佈,然後重新同步原始碼並確認本地的原始碼版本已含有所需的修正。</para> - </step> - - <step> - <para>閱讀 <filename>/usr/src/UPDATING</filename> 了解該版本的原始碼是否有必要的額外步驟要完成。 這個檔案中會包含有關潛藏問題的重要資訊,並且可能會要求執行某些指令。大多升級需要完成指定的額外步驟,例如:在安裝新 World 前重新命名或刪除指定檔案,這些步驟會列在檔案最後,明確說明目前建議的升級順序。若 <filename>UPDATING</filename> 中有與本章相矛盾的步驟,請以 <filename>UPDATING</filename> 為準並應遵循其內容。</para> - </step> - </procedure> - - <warning> - <title>不要使用 <command>make world</command></title> - - <para>部份舊版的文件建議使用 <command>make world</command>。然而該指令跳過了部份重要的步驟,應僅供專家使用。大多數的情況使用 <command>make world</command> 都是錯的,並應使用此處說明的程序。</para> - </warning> - - <sect2 xml:id="canonical-build"> - <title>流程概述</title> - - <para>編譯 World 流程會假設您是依照 <xref linkend="synching"/> 指示取得最近版本的原始碼來升級舊版的 FreeBSD。</para> + <sect1 xml:id="updating-src"> + <title>從原始碼更新 FreeBSD</title> - <para>在 FreeBSD,<quote>world</quote> 一詞包含了核心,核心系統 Binary,程式庫,原始碼以及內建的編譯器。這些元件編譯與安裝的順序非常重要。</para> + <para>從編譯原始碼來更新 FreeBSD 比起用 Binary 更新有幾項優點,在編譯程式碼時可以自訂選項來充分運用特定硬體,部份基礎系統可以使用非預設的設定值編譯,或是在不需要或不想要的時候跳過編譯。使用編譯的程序來更新系統比起安裝 Binary 來更新會耗時許多,但能夠完整自訂一個量身定做版本的 FreeBSD。</para> - <para>舉例來說,舊的編譯器可能有問題而無法編譯新的核心。新的核心需使用新的編譯器來編譯,因此新的編譯器必需先編譯,但在新核心編譯前並不一定要安裝。</para> - - <para>新的 World 可能需要使用新的核心功能,所以必須在新的 World 安裝之前先安裝新的核心。舊的 World 也可能在新的核心上無法正常執行,所以必須在新的核心安裝完之後 -馬上安裝新的 World。</para> - - <para>有一部份設定必須在新的 World 安裝前變更,但其他的部份在之前變更則可能會破壞舊的 World。因此會使用到兩種不同的設定升級步驟。大部份情況,更新程序只會取代或新增檔案,不會刪除已存在的舊檔案。當這可能會造成問題時 <filename>/usr/src/UPDATING</filename> 便會說明需要手動刪除的檔案以及操作的步驟。</para> - - <para>這些問題會影響接下來的建議升級順序。</para> - - <note> - <para>將執行 <command>make</command> 的輸出儲存到檔案是不錯的辦法,若發生錯誤時,便可複製錯誤訊息張貼到 FreeBSD 郵遞論壇。</para> - - <para>最簡單的方式是使用 <command>script</command> 並透過參數指定要儲存所有輸出的檔案名稱。請不要儲存輸出到 <filename>/tmp</filename>,因這個目錄可能在下次重新開機後被清除。儲存檔案最好的地方是 <filename>/var/tmp</filename>。在重新編譯 World 之前執行這個指令,並在流程完成後輸入 <userinput>exit</userinput>:</para> + <sect2 xml:id="updating-src-quick-start"> + <title>快速開始</title> - <screen xml:lang="en"><prompt>#</prompt> <userinput>script <replaceable>/var/tmp/mw.out</replaceable></userinput> -Script started, output file is /var/tmp/mw.out</screen> - </note> + <para>這是從原始碼編譯來更新 FreeBSD 的標準步驟快速的參考,稍後的章節會更詳細的說明這個程序。</para> <procedure> - <title>編譯 World 流程概述</title> - - <para>編譯 World 流程中使用的指令應依此處指定的順序執行。本節將摘要各指令的功能。</para> - <step> - <para>若編譯 World 流程先前已在系統執行過,先前編譯的結果可能遺留在 <filename>/usr/obj</filename>。要加速新的編譯 World 流程及節省處理相依問題的時間,若此目錄存在,請移除此目錄:</para> + <title>更新並編譯</title> + + <screen xml:lang="en"><prompt>#</prompt> <userinput>svn update /usr/src</userinput> <co xml:id="updating-src-qs-svnup"/> +<emphasis>check <filename>/usr/src/UPDATING</filename></emphasis> <co xml:id="updating-src-qs-review-updating"/> +<prompt>#</prompt> <userinput>cd /usr/src</userinput> <co xml:id="updating-src-qs-cd"/> +<prompt>#</prompt> <userinput>make -j<replaceable>4</replaceable> buildworld</userinput> <co xml:id="updating-src-qs-buildworld"/> +<prompt>#</prompt> <userinput>make -j<replaceable>4</replaceable> kernel</userinput> <co xml:id="updating-src-qs-kernel"/> +<prompt>#</prompt> <userinput>shutdown -r now</userinput> <co xml:id="updating-src-qs-reboot"/> +<prompt>#</prompt> <userinput>cd /usr/src</userinput> <co xml:id="updating-src-qs-cd2"/> +<prompt>#</prompt> <userinput>make installworld</userinput> <co xml:id="updating-src-qs-installworld"/> +<prompt>#</prompt> <userinput>mergemaster -Ui</userinput> <co xml:id="updating-src-qs-mergemaster"/> +<prompt>#</prompt> <userinput>shutdown -r now</userinput> <co xml:id="updating-src-qs-shutdown"/></screen> - <screen xml:lang="en"><prompt>#</prompt> <userinput>chflags -R noschg /usr/obj/*</userinput> -<prompt>#</prompt> <userinput>rm -rf /usr/obj</userinput></screen> - </step> - - <step> - <para>編譯新的編譯器及一些相關工具,然後使用新的編譯器編譯新的 World。編譯的結果會儲存到 <filename>/usr/obj</filename>。</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> -<prompt>#</prompt> <userinput>make buildworld</userinput></screen> - </step> - - <step> - <para>使用在 <filename>/usr/obj</filename> 中的新編譯器來編譯新的核心,來確保不會發生編譯器與核心不相容的問題。因某些記憶體結構可能有修改,這個步驟是必要的,若核心與原始碼的版本不同,<command>ps</command> 及 <command>top</command> 這類的程式會無法運作。</para> + <calloutlist> + <callout arearefs="updating-src-qs-svnup"> + <para>取得最新版本的原始碼,請參考 <xref linkend="updating-src-obtaining-src"/> 來了解更多取得與更新原始碼的資訊。</para> + </callout> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make buildkernel</userinput></screen> - </step> + <callout arearefs="updating-src-qs-review-updating"> + <para>從原始碼編譯之前與之後任何需要手動操作步驟會在 <filename>/usr/src/UPDATING</filename> 中有說明。</para> + </callout> - <step> - <para>安裝新的核心與新的核心模組,讓開機時可以使用新的核心。這個指令可在多使用者模式執行,除非 <varname>kern.securelevel</varname> 設定在 <literal>1</literal> 以上 <emphasis>且</emphasis> 在核心 Binary 有設定 <literal>noschg</literal> 或類似的旗標 (Flag),請先讓系統進入單使用者模式。請參考 <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得有關 <varname>kern.securelevel</varname> 的詳細資訊以及 <citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</manvolnum></citerefentry> 取得有關各種檔案旗標的詳細資訊。</para> + <callout arearefs="updating-src-qs-cd"> + <para>前往原始碼目錄。</para> + </callout> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make installkernel</userinput></screen> - </step> + <callout arearefs="updating-src-qs-buildworld"> + <para>編譯世界 (World),即除了核心 (Kernel) 外的所有東西。</para> + </callout> - <step> - <para>讓系統進入單使用者模組來減少升級任何已在執行中的 Binary 所產生的問題,同樣也可減少在新核心上執行舊 World 的問題。</para> + <callout arearefs="updating-src-qs-kernel"> + <para>編譯並安裝核心,此動作等同於同時做 <buildtarget>buildkernel</buildtarget> <buildtarget>installkernel</buildtarget>。</para> + </callout> - <screen xml:lang="en"><prompt>#</prompt> <userinput>shutdown now</userinput></screen> + <callout arearefs="updating-src-qs-reboot"> + <para xml:lang="en">Reboot the system to the new kernel.</para> + </callout> - <para>進入單使用者模式後,若系統磁碟格式為 UFS 請執行以下指令:</para> + <callout arearefs="updating-src-qs-cd2"> + <para>前往原始碼目錄。</para> + </callout> - <screen xml:lang="en"><prompt>#</prompt> <userinput>mount -u /</userinput> -<prompt>#</prompt> <userinput>mount -a -t ufs</userinput> -<prompt>#</prompt> <userinput>swapon -a</userinput></screen> + <callout arearefs="updating-src-qs-installworld"> + <para>安裝世界。</para> + </callout> - <para>若系統磁碟格式為 ZFS,則需執行以下兩個指令。此範例假設 zpool 名稱為 <literal>zroot</literal>:</para> + <callout arearefs="updating-src-qs-mergemaster"> + <para>更新與合併在 <filename>/etc/</filename> 中的設定檔案。</para> + </callout> - <screen xml:lang="en"><prompt>#</prompt> <userinput>zfs set readonly=off zroot</userinput> -<prompt>#</prompt> <userinput>zfs mount -a</userinput></screen> + <callout arearefs="updating-src-qs-shutdown"> + <para>重新啟動系統以使用新編譯好的世界與核心。</para> + </callout> + </calloutlist> </step> + </procedure> + </sect2> - <step> - <para>選用:若想要使用 US 英文以外的鍵盤對應表,可以使用 <citerefentry><refentrytitle>kbdmap</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來變更:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>kbdmap</userinput></screen> - </step> + <sect2 xml:id="updating-src-preparing"> + <title>準備原始碼更新</title> - <step> - <para>接著,不論那一種檔案系統,若 <acronym>CMOS</acronym> 時鐘設定為本地時間 (若 <citerefentry><refentrytitle>date</refentrytitle><manvolnum>1</manvolnum></citerefentry> 顯示不正確的時間與時區),請執行:</para> + <para>閱讀 <filename>/usr/src/UPDATING</filename>,從原始碼編譯之前與之後任何需要手動操作步驟會在此檔案中說明。</para> + </sect2> - <screen xml:lang="en"><prompt>#</prompt> <userinput>adjkerntz -i</userinput></screen> - </step> + <sect2 xml:id="updating-src-obtaining-src"> + <title>更新原始碼</title> - <step> - <para>重新編譯 World 不會直接更新某些目錄中的設定檔,如 <filename>/etc</filename>, <filename>/var</filename> 以及 <filename>/usr</filename>。接下來的步驟是更新一部份的設定檔到 <filename>/etc</filename> 來準備安裝新的 World。以下指令只會比對影響 <buildtarget>installworld</buildtarget> 是否成功執行的必要檔案。例如,這個步驟會可能會加入新版 FreeBSD 的新群組、系統帳號或啟動 Script。為了讓 <buildtarget>installworld</buildtarget> 步驟可以使用任何新的系統帳號、群組與 Script,這是個必要的步驟。請參考 <xref linkend="mergemaster"/> 來取得更多有關此指令的詳細操作說明:</para> + <para>FreeBSD 的原始碼位於 <filename>/usr/src/</filename>,較建議透過 <application>Subversion</application> 版本控制系統來更新這份原始碼,要確認原始碼已在版本控制系統的管控下可:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>mergemaster -p</userinput></screen> - </step> + <screen xml:lang="en"><prompt>#</prompt> <userinput>svn info /usr/src</userinput> +Path: /usr/src +Working Copy Root Path: /usr/src +...</screen> - <step> - <para>從 <filename>/usr/obj</filename> 安裝新 World 與系統 Binary。</para> + <para>此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使用 <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></citerefentry> 來更新:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> -<prompt>#</prompt> <userinput>make installworld</userinput></screen> - </step> + <screen xml:id="synching" xml:lang="en"><prompt>#</prompt> <userinput>svn update /usr/src</userinput></screen> - <step> - <para>更新任何剩下的設定檔。</para> + <para>若該目錄最近沒有更新過,可能會需要一些時間來完成更新動作。在更新完成之後,原始碼便為最新版本,並可開始依下一章節的說明來編譯程序。</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>mergemaster -iF</userinput></screen> - </step> + <note xml:id="updating-src-obtaining-src-checkout"> + <title>取得原始碼</title> - <step> - <para>刪除任何過時的檔案。這很重要,因為若檔案遺留在磁碟上可能會造成問題。</para> + <para>若輸出結果顯示 <literal>'/usr/src' is not a working copy</literal> 代表有缺少檔案或原始碼是採用其他方式安裝,若是如此,便需重新取出 (checkout) 原始碼。</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old</userinput></screen> - </step> + <table xml:id="updating-src-obtaining-src-repopath"> + <title>FreeBSD 版本與檔案庫路徑</title> - <step> - <para>現在需要完整重新啟動來載入新的核心、新的 World 與新的設定檔。</para> + <tgroup cols="3"> + <thead> + <row> + <entry><command>uname -r</command> 的輸出結果</entry> + <entry>檔案庫路徑</entry> + <entry>說明</entry> + </row> + </thead> - <screen xml:lang="en"><prompt>#</prompt> <userinput>reboot</userinput></screen> - </step> + <tbody> + <row> + <entry xml:lang="en"><literal><replaceable>X.Y</replaceable>-RELEASE</literal></entry> + <entry xml:lang="en"><literal>base/releng/</literal><replaceable>X.Y</replaceable></entry> + <entry>發佈版本加上關鍵的安全性與錯誤修正,較建議大多數使用者使用這個分支。</entry> + </row> - <step> - <para>確認所有已安裝的 Port 在舊的程式庫移除前已依照 <xref linkend="ports-upgrading"/> 的說明重新編譯。當重新編譯完成後,移除過時的程式庫來避免與新的程式庫發生衝突。有關此步驟更詳細的說明請參考 <xref linkend="make-delete-old"/>。</para> + <row> + <entry xml:lang="en"><literal><replaceable>X.Y</replaceable>-STABLE</literal></entry> + <entry xml:lang="en"><literal>base/stable/</literal><replaceable>X</replaceable></entry> + <entry> + <para>發佈版本加上所有在該分支上其他開發中的程式,<emphasis>STABLE</emphasis> 代表不會更改應用程式 Binary 介面 (Applications Binary Interface, <acronym>ABI</acronym>),所以在先前版本所編譯的軟體仍可以正常運作,舉例來說,被編譯在 FreeBSD 10.1 可執行的軟體在編譯完 FreeBSD 10-STABLE 之後仍可以執行。</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old-libs</userinput></screen> - </step> - </procedure> + <para>STABLE 分支偶爾也會有錯誤或無法相容的問題會影響使用者,雖然這些問題通常會很快的被修正。</para> + </entry> + </row> - <indexterm xml:lang="en"><primary>single-user mode</primary></indexterm> + <row> + <entry xml:lang="en"><literal><replaceable>X</replaceable>-CURRENT</literal></entry> + <entry xml:lang="en"><literal>base/head/</literal></entry> + <entry>最新未發佈的 FreeBSD 開發版本,CURRENT 分支可能會有重大錯誤或不相容的問題,只建議進階的使用者使用。</entry> + </row> + </tbody> + </tgroup> + </table> - <para>若系統允許停機一小段時間,請考慮以單使用者模式編譯系統來替代在多使用者模組編譯系統,然後進入單使用者模式來完成安裝。重新安裝系統會觸及到很多重要的系統檔案,所有的標準系統 Binary、程式庫以及引用檔。在執行中的系統更換這些檔案,特別是有使用者在使用時,是自找麻煩。</para> - </sect2> + <para>查看 FreeBSD 目前使用的版本可使用 <citerefentry><refentrytitle>uname</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para> - <sect2 xml:id="src-updating"> - <title>設定檔</title> + <screen xml:lang="en"><prompt>#</prompt> <userinput>uname -r</userinput> +10.3-RELEASE</screen> - <indexterm xml:lang="en"> - <primary><filename>make.conf</filename></primary> - </indexterm> + <para xml:lang="en">Based on + <xref linkend="updating-src-obtaining-src-repopath"/>, the + source used to update <literal>10.3-RELEASE</literal> has + a repository path of <literal>base/releng/10.3</literal>. + That path is used when checking out the source:</para> - <para xml:lang="en">This build world process uses several configuration - files.</para> - - <para xml:lang="en">The <filename>Makefile</filename> located in - <filename>/usr/src</filename> describes how the programs that - comprise FreeBSD should be built and the order in which they - should be built.</para> - - <para xml:lang="en">The options available to <command>make</command> are - described in <citerefentry><refentrytitle>make.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> and some common examples are - included in - <filename>/usr/share/examples/etc/make.conf</filename>. Any - options which are added to <filename>/etc/make.conf</filename> - will control the how <command>make</command> runs and builds - programs. These options take effect every time - <command>make</command> is used, including compiling - applications from the Ports Collection, compiling custom C - programs, or building the FreeBSD operating system. Changes to - some settings can have far-reaching and potentially surprising - effects. Read the comments in both locations and keep in mind - that the defaults have been chosen for a combination of - performance and safety.</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>mv /usr/src /usr/src.bak</userinput> <co xml:id="updating-src-obtaining-src-mv"/> +<prompt>#</prompt> <userinput>svn checkout https://svn.freebsd.org/base/<replaceable>releng/10.3</replaceable> /usr/src</userinput> <co xml:id="updating-src-obtaining-src-checkout-cmd"/></screen> - <indexterm xml:lang="en"> - <primary><filename>src.conf</filename></primary> - </indexterm> + <calloutlist> + <callout arearefs="updating-src-obtaining-src-mv"> + <para>將舊的目錄移到其他地方,若沒有在這個目錄做過任何本地修改,可直接刪除這個目錄。</para> + </callout> - <para xml:lang="en">How the operating system is built from source code is - controlled by <filename>/etc/src.conf</filename>. Unlike - <filename>/etc/make.conf</filename>, the contents of - <filename>/etc/src.conf</filename> only take effect when the - FreeBSD operating system itself is being built. Descriptions of - the many options available for this file are shown in - <citerefentry><refentrytitle>src.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Be cautious about disabling seemingly - unneeded kernel modules and build options. Sometimes there - are unexpected or subtle interactions.</para> + <callout arearefs="updating-src-obtaining-src-checkout-cmd"> + <para>將從 <xref linkend="updating-src-obtaining-src-repopath"/> 查到的路徑加到檔案庫 <acronym>URL</acronym> 之後。第三個參數用來存放本地系統原始碼的目標目錄。</para> + </callout> + </calloutlist> + </note> </sect2> - <sect2 xml:id="make-buildworld"> - <title>變數與目標</title> + <sect2 xml:id="updating-src-building"> + <title>從原始碼編譯</title> - <para xml:lang="en">The general format for using <command>make</command> is as - follows:</para> + <para xml:id="makeworld">編譯世界 (<emphasis>world</emphasis>) 即編譯整個作業系統除了核心 (Kernel),要先做這個動作以便提供最新的工具來編譯核心,接著便可編譯核心:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput></screen> - - <para xml:lang="en">In this example, - <option>-<replaceable>x</replaceable></option> is an option - passed to <command>make</command>. Refer to <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></citerefentry> for - examples of the available options.</para> - - <para xml:lang="en">To pass a variable, specify the variable name with - <option>-D<replaceable>VARIABLE</replaceable></option>. The - behavior of the <filename>Makefile</filename> is controlled by - variables. These can either be set in - <filename>/etc/make.conf</filename> or they can be specified - when using <command>make</command>. For example, this - variable specifies that profiled libraries should not be - built:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -DNO_PROFILE <replaceable>target</replaceable></userinput></screen> - - <para xml:lang="en">It corresponds with this setting in - <filename>/etc/make.conf</filename>:</para> - - <programlisting xml:lang="en">NO_PROFILE= true # Avoid compiling profiled libraries</programlisting> - - <para xml:lang="en">The <replaceable>target</replaceable> tells - <command>make</command> what to do and the - <filename>Makefile</filename> defines the available targets. - Some targets are used by the build process to break out the - steps necessary to rebuild the system into a number of - sub-steps.</para> - - <para xml:lang="en">Having separate options is useful for two reasons. First, - it allows for a build that does not affect any components of a - running system. Because of this, - <buildtarget xml:lang="en">buildworld</buildtarget> can be safely run on a - machine running in multi-user mode. It is still recommended - that <buildtarget xml:lang="en">installworld</buildtarget> be run in part in - single-user mode, though.</para> - - <para xml:lang="en">Secondly, it allows <acronym>NFS</acronym> mounts to be - used to upgrade multiple machines on a network, as described - in <xref linkend="small-lan"/>.</para> - - <para xml:lang="en">It is possible to specify <option>-j</option> which will - cause <command>make</command> to spawn several simultaneous - processes. Since much of the compiling process is - <acronym>I/O</acronym>-bound rather than - <acronym>CPU</acronym>-bound, this is useful on both single - <acronym>CPU</acronym> and multi-<acronym>CPU</acronym> - machines.</para> - - <para xml:lang="en">On a single-<acronym>CPU</acronym> machine, run the - following command to have up to 4 processes running at any one - time. Empirical evidence posted to the mailing lists shows - this generally gives the best performance benefit.</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -j4 buildworld</userinput></screen> - - <para xml:lang="en">On a multi-<acronym>CPU</acronym> machine, try values - between <literal>6</literal> and <literal>10</literal> to see - how they speed things up.</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> +<prompt>#</prompt> <userinput>make buildworld</userinput> +<prompt>#</prompt> <userinput>make buildkernel</userinput></screen> - <indexterm xml:lang="en"> - <primary>rebuilding <quote>world</quote></primary> - <secondary>timings</secondary> - </indexterm> + <para>編譯完的程式會寫入至 <filename>/usr/obj</filename>。</para> - <note> - <para xml:lang="en">If any variables were specified to <command>make - buildworld</command>, specify the same variables to - <command>make installworld</command>. However, - <option>-j</option> must <emphasis>never</emphasis> be used - with <buildtarget xml:lang="en">installworld</buildtarget>.</para> + <para>以上這些均為基本的步驟,用來控制編譯的其他選項在以下章節會說明。</para> - <para xml:lang="en">For example, if this command was used:</para> + <sect3 xml:id="updating-src-building-clean-build"> + <title>執行清除編譯</title> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -DNO_PROFILE buildworld</userinput></screen> + <para>部份 FreeBSD 編譯系統版本會保留先前編譯的程式於暫存的物件目錄 <filename>/usr/obj</filename>,避免重新編譯那些尚未更動過的程式碼可加速後續的編譯動作,若要強制重新編譯所有東西可在開始編譯前使用 <buildtarget>cleanworld</buildtarget>:</para> - <para xml:lang="en">Install the results with:</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make cleanworld</userinput></screen> + </sect3> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -DNO_PROFILE installworld</userinput></screen> + <sect3 xml:id="updating-src-building-jobs"> + <title>設定工作數量</title> - <para xml:lang="en">Otherwise, the second command will try to install - profiled libraries that were not built during the - <command>make buildworld</command> phase.</para> - </note> - </sect2> + <para>在多核處理器上增加編譯工作的數量可增加編譯速度,可使用 <command>sysctl hw.ncpu</command> 來查看有多少核心,不同處理器使用不同版本的 FreeBSD 編譯系統,所以唯一能了解不同工作數量對編譯速度影響的方式便是測試。在一開始可考慮選擇一個介於 1/2 到 2 倍核心數之間的數值,工作的數量可使用 <option>-j</option> 來指定。</para> - <sect2 xml:id="mergemaster"> - <info> - <title>合併設定檔</title> + <example xml:id="updating-src-building-jobs-example"> + <title>增加編譯工作數</title> - <authorgroup> - <author xml:lang="en"> - <personname> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - </personname> - <contrib>Contributed by </contrib> - </author> - </authorgroup> - </info> + <para>使用四個工作來編譯世界與核心:</para> - <indexterm xml:lang="en"> - <primary> - <command>mergemaster</command> - </primary> - </indexterm> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make -j4 buildworld buildkernel</userinput></screen> + </example> + </sect3> - <para xml:lang="en">FreeBSD provides the <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> Bourne script to aid - in determining the differences between the configuration files - in <filename>/etc</filename>, and the configuration files in - <filename>/usr/src/etc</filename>. This is the recommended - solution for keeping the system configuration files up to date - with those located in the source tree.</para> - - <para xml:lang="en">Before using <command>mergemaster</command>, it is - recommended to first copy the existing - <filename>/etc</filename> somewhere safe. Include - <option>-R</option> which does a recursive copy and - <option>-p</option> which preserves times and the ownerships - on files:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>cp -Rp /etc /etc.old</userinput></screen> - - <para xml:lang="en">When run, <command>mergemaster</command> builds a - temporary root environment, from <filename>/</filename> down, - and populates it with various system configuration files. - Those files are then compared to the ones currently installed - in the system. Files that differ will be shown in - <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></citerefentry> format, with the <option>+</option> sign - representing added or modified lines, and <option>-</option> - representing lines that will be either removed completely or - replaced with a new file. Refer to <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></citerefentry> for more - information about how file differences are shown.</para> - - <para xml:lang="en">Next, <command>mergemaster</command> will display each - file that differs, and present options to: delete the new - file, referred to as the temporary file, install the temporary - file in its unmodified state, merge the temporary file with - the currently installed file, or view the results - again.</para> + <sect3 xml:id="updating-src-building-only-kernel"> + <title>只編譯核心</title> - <para xml:lang="en">Choosing to delete the temporary file will tell - <command>mergemaster</command> to keep the current file - unchanged and to delete the new version. This option is not - recommended. To get help at any time, type - <keycap>?</keycap> at the <command>mergemaster</command> - prompt. If the user chooses to skip a file, it will be - presented again after all other files have been dealt - with.</para> - - <para xml:lang="en">Choosing to install the unmodified temporary file will - replace the current file with the new one. For most - unmodified files, this is the best option.</para> - - <para xml:lang="en">Choosing to merge the file will present a text editor, and - the contents of both files. The files can be merged by - reviewing both files side by side on the screen, and choosing - parts from both to create a finished product. When the files - are compared side by side, <keycap>l</keycap> selects the left - contents and <keycap>r</keycap> selects contents from the - right. The final output will be a file consisting of both - parts, which can then be installed. This option is - customarily used for files where settings have been modified - by the user.</para> - - <para xml:lang="en">Choosing to view the results again will redisplay the file - differences.</para> - - <para xml:lang="en">After <command>mergemaster</command> is done with the - system files, it will prompt for other options. It may prompt - to rebuild the password file and will finish up with an option - to remove left-over temporary files.</para> -<!-- -Probably not needed as changes should be minimal and mergemaster does -a good job of merging. - <tip> - <title>Name the New Root Directory - (<filename>/var/tmp/root</filename>) - with a Time Stamp, so You Can Easily Compare Differences - Between Versions</title> + <para>若原始碼有更動,便須執行 <buildtarget>buildworld</buildtarget>,完成之後,便可隨時執行 <buildtarget>buildkernel</buildtarget> 來編譯核心,若要只編譯核心可:</para> - <para>Frequently rebuilding world entails frequently - updating <filename>/etc</filename> - as well, which can be a bit of a chore.</para> + <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> +<prompt>#</prompt> <userinput>make buildkernel</userinput></screen> + </sect3> - <para>To speed up this process, use the following - procedure to keep a copy of the last set of changed files - that were merged into <filename>/etc</filename>.</para> + <sect3 xml:id="updating-src-building-custom-kernel"> + <title>編譯自訂核心</title> - <procedure> - <step> - <para>Make the world as normal. When updating - <filename>/etc</filename> and the - other directories, give the target directory a name - based on the current date:</para> - - <screen>&prompt.root; <userinput>mkdir /var/tmp/root-20130214</userinput> -&prompt.root; <userinput>cd /usr/src/etc</userinput> -&prompt.root; <userinput>make DESTDIR=/var/tmp/root-20130214 \ - distrib-dirs distribution</userinput></screen> - </step> + <para>標準的 FreeBSD 核心是以一個名為 <filename>GENERIC</filename> 的<emphasis>核心設定檔 (Kernel config file)</emphasis>為基礎,<filename>GENERIC</filename> 核心中內含了所有最常用的裝置驅動程式與選項,有時這個檔案對編譯自訂核心也非常有用,可根據其來加入或移除裝置驅動程式或選項來滿足特定需求。</para> - <step> - <para>Merge in the changes from this directory as - outlined above. <emphasis>Do not</emphasis> remove - the <filename>/var/tmp/root-20130214</filename> - directory when you have finished.</para> - </step> + <para>例如,要開發一個 <acronym>RAM</acronym> 受到嚴重限制的小型嵌入式電腦,便可移除不需要的裝置驅動程式或選項來縮小核心。</para> - <step> - <para>After downloading the latest version of the - source and remaking it, follow step 1. Create a new - directory, which reflects the new date. This example - uses - <filename>/var/tmp/root-20130221</filename>.</para> - </step> + <para>核心設定檔位於 <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf/</filename>,其中使用的 <replaceable>arch</replaceable> 即為 <command>uname -m</command> 輸出的結果,大部份的電腦為 <literal>amd64</literal>,那其設定檔目錄則為 <filename>/usr/src/sys/<replaceable>amd64</replaceable>/conf/</filename>。</para> - <step> - <para>Use &man.diff.1; to see the differences that have - been made in the intervening week by creating a - recursive diff between the two directories:</para> - - <screen>&prompt.root; <userinput>cd /var/tmp</userinput> -&prompt.root; <userinput>diff -r root-20130214 root-20130221</userinput></screen> - - <para>Typically, this will be a much smaller set of - differences than those between - <filename>/var/tmp/root-20130221/etc</filename> and - <filename>/etc</filename>. Because the set of - differences is smaller, it is easier to migrate those - changes across into <filename>/etc</filename>.</para> - </step> + <tip> + <para><filename>/usr/src</filename> 可以被刪除或重建,所以較建議將自訂核心設定檔放在另一個目錄,如 <filename>/root</filename>,並將核心設定檔以連結放至 <filename>conf</filename> 目錄,若該目錄被刪除或覆寫,便可重新建立一個新的核心設定的連結。</para> + </tip> - <step> - <para>When finished, remove the older of the two - <filename>/var/tmp/root-*</filename> - directories:</para> + <para>自訂設定檔可由複製 <filename>GENERIC</filename> 設定檔來建立,在此範例,新的自訂核心要用在儲存伺服器,所以將其命名為 <filename>STORAGESERVER</filename>:</para> - <screen>&prompt.root; <userinput>rm -rf /var/tmp/root-20130214</userinput></screen> - </step> + <screen xml:lang="en"><prompt>#</prompt> <userinput>cp /usr/src/sys/amd64/conf/GENERIC /root/STORAGESERVER</userinput> +<prompt>#</prompt> <userinput>cd /usr/src/sys/amd64/conf</userinput> +<prompt>#</prompt> <userinput>ln -s /root/STORAGESERVER .</userinput></screen> - <step> - <para>Repeat this process whenever merging - in changes to <filename>/etc</filename>.</para> - </step> - </procedure> + <para>接著編譯 <filename>/root/STORAGESERVER</filename>,要加入或移除裝置或選項可見 <citerefentry><refentrytitle>config</refentrytitle><manvolnum>5</manvolnum></citerefentry>。</para> - <para>Use &man.date.1; to automate the generation of the - directory names:</para> + <para>自訂核心要在指令列設定 <varname>KERNCONF</varname> 為核心設定檔來編譯:</para> - <screen>&prompt.root; <userinput>mkdir /var/tmp/root-`date "+%Y%m%d"`</userinput></screen> - </tip> - --> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make buildkernel KERNCONF=STORAGESERVER</userinput></screen> + </sect3> </sect2> - <sect2 xml:id="make-delete-old"> - <info> - <title>刪除過時的檔案及程式庫</title> + <sect2 xml:id="updating-src-installing"> + <title>安裝編譯好的程式</title> - <authorgroup> - <author xml:lang="en"> - <personname> - <firstname>Anton</firstname> - <surname>Shterenlikht</surname> - </personname> - <contrib>Based on notes provided by </contrib> - </author> - </authorgroup> - </info> - - <indexterm xml:lang="en"> - <primary>Deleting obsolete files and directories</primary> - </indexterm> - - <para xml:lang="en">As a part of the FreeBSD development lifecycle, files and - their contents occasionally become obsolete. This may be - because functionality is implemented elsewhere, the version - number of the library has changed, or it was removed from the - system entirely. These obsoleted files, libraries, and - directories should be removed when updating the system. - This ensures that the system is not cluttered with old files - which take up unnecessary space on the storage and backup - media. Additionally, if the old library has a security or - stability issue, the system should be updated to the newer - library to keep it safe and to prevent crashes caused by the - old library. Files, directories, and libraries which are - considered obsolete are listed in - <filename>/usr/src/ObsoleteFiles.inc</filename>. The - following instructions should be used to remove obsolete files - during the system upgrade process.</para> - - <para xml:lang="en">After the <command>make installworld</command> and the - subsequent <command>mergemaster</command> have finished - successfully, check for obsolete files and libraries:</para> + <para>在完成 <buildtarget>buildworld</buildtarget> 與 <buildtarget>buildkernel</buildtarget> 兩個步驟之後,便可安裝新的核心與世界:</para> <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> -<prompt>#</prompt> <userinput>make check-old</userinput></screen> - - <para xml:lang="en">If any obsolete files are found, they can be deleted using - the following command:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old</userinput></screen> - - <para xml:lang="en">A prompt is displayed before deleting each obsolete file. - To skip the prompt and let the system remove these files - automatically, use - <varname>BATCH_DELETE_OLD_FILES</varname>:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>make -DBATCH_DELETE_OLD_FILES delete-old</userinput></screen> - - <para xml:lang="en">The same goal can be achieved by piping these commands - through <command>yes</command>:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>yes|make delete-old</userinput></screen> - - <warning> - <title xml:lang="en">Warning</title> - - <para xml:lang="en">Deleting obsolete files will break applications that - still depend on those obsolete files. This is especially - true for old libraries. In most cases, the programs, ports, - or libraries that used the old library need to be recompiled - before <command>make delete-old-libs</command> is - executed.</para> - </warning> - - <para xml:lang="en">Utilities for checking shared library dependencies include - <package>sysutils/libchk</package> and - <package>sysutils/bsdadminscripts</package>.</para> - - <para xml:lang="en">Obsolete shared libraries can conflict with newer - libraries, causing messages like these:</para> - - <screen xml:lang="en">/usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5 -/usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5</screen> - - <para xml:lang="en">To solve these problems, determine which port installed - the library:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>pkg which /usr/local/lib/libtiff.so</userinput> - /usr/local/lib/libtiff.so was installed by package tiff-3.9.4 -<prompt>#</prompt> <userinput>pkg which /usr/local/lib/libXext.so</userinput> - /usr/local/lib/libXext.so was installed by package libXext-1.1.1,1</screen> +<prompt>#</prompt> <userinput>make installkernel</userinput> +<prompt>#</prompt> <userinput>shutdown -r now</userinput> +<prompt>#</prompt> <userinput>cd /usr/src</userinput> +<prompt>#</prompt> <userinput>make installworld</userinput> +<prompt>#</prompt> <userinput>shutdown -r now</userinput></screen> - <para xml:lang="en">Then deinstall, rebuild, and reinstall the port. To - automate this process, - <package>ports-mgmt/portmaster</package> can be used. After - all ports are rebuilt and no longer use the old libraries, - delete the old libraries using the following command:</para> + <para>若使用自訂核心,則同樣須設定 <varname>KERNCONF</varname> 來使用新的自訂核心:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old-libs</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> +<prompt>#</prompt> <userinput>make installkernel KERNCONF=STORAGESERVER</userinput> +<prompt>#</prompt> <userinput>shutdown -r now</userinput> +<prompt>#</prompt> <userinput>cd /usr/src</userinput> +<prompt>#</prompt> <userinput>make installworld</userinput> +<prompt>#</prompt> <userinput>shutdown -r now</userinput></screen> + </sect2> - <para xml:lang="en">If something goes wrong, it is easy to rebuild a - particular piece of the system. For example, if - <filename>/etc/magic</filename> was accidentally deleted as - part of the upgrade or merge of <filename>/etc</filename>, - <command>file</command> will stop working. To fix this, - run:</para> + <sect2 xml:id="updating-src-completing"> + <title>完成更新</title> - <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src/usr.bin/file</userinput> -<prompt>#</prompt> <userinput>make all install</userinput></screen> - </sect2> + <para>還有最後一些的工作要做來完成更新,任何修改過的設定檔要與新版本的設定檔合併、移除找到的過時程式庫,然後重新啟動系統。</para> - <sect2 xml:id="updating-questions"> - <title>常見問題</title> + <sect3 xml:id="updating-src-completing-merge-mergemaster"> + <title>使用 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 合併設定檔案</title> - <variablelist> - <varlistentry> - <term>每個變更是否都需要重新編譯 World?</term> + <para><citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 可簡單的將修改過的系統設定檔與新版設定檔合併。</para> - <listitem> - <para xml:lang="en">It depends upon the nature of the change. For - example, if <application>svn</application> only shows - the following files as being updated:</para> - - <screen xml:lang="en"><filename>src/games/cribbage/instr.c</filename> -<filename>src/games/sail/pl_main.c</filename> -<filename>src/release/sysinstall/config.c</filename> -<filename>src/release/sysinstall/media.c</filename> -<filename>src/share/mk/bsd.port.mk</filename></screen> - - <para xml:lang="en">it probably is not worth rebuilding the entire - world. Instead, go into the appropriate sub-directories - and run <command>make all install</command>. But if - something major changes, such as - <filename>src/lib/libc/stdlib</filename>, consider - rebuilding world.</para> - - <para xml:lang="en">Some users rebuild world every fortnight and let - changes accumulate over that fortnight. Others only - re-make those things that have changed and are careful - to spot all the dependencies. It all depends on how - often a user wants to upgrade and whether they are - tracking FreeBSD-STABLE or FreeBSD-CURRENT.</para> - </listitem> - </varlistentry> + <para>使用 <option>-Ui</option>,<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 會自動更新那些未被使用者修改過的設定檔並安裝尚不存在的檔案:</para> - <varlistentry> - <term>什麼會造成有很多信號 11<indexterm> - <primary>signal 11</primary> - </indexterm> (或其他信號) 錯誤的編譯失敗?</term> + <screen xml:lang="en"><prompt>#</prompt> <userinput>mergemaster -Ui</userinput></screen> - <listitem> - <para xml:lang="en">This normally indicates a hardware problem. - Building world is an effective way to stress test - hardware, especially memory. A sure indicator of a - hardware issue is when <application>make</application> - is restarted and it dies at a different point in the - process.</para> - - <para xml:lang="en">To resolve this error, swap out the components in - the machine, starting with RAM, to determine which - component is failing.</para> - </listitem> - </varlistentry> + <para>若檔案需要手動合併,會有互動式介面可讓使用者選擇要保留那一邊的檔案,請參考 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得更多資訊。</para> + </sect3> - <varlistentry> - <term>完成編譯後是可否移除 <filename>/usr/obj</filename>?</term> + <sect3 xml:id="updating-src-completing-check-old"> + <title>檢查過時的檔案與程式庫</title> - <listitem> - <para xml:lang="en">This directory contains all the object files that - were produced during the compilation phase. Normally, - one of the first steps in the <command>make - buildworld</command> process is to remove this - directory and start afresh. Keeping - <filename>/usr/obj</filename> around when finished makes - little sense, and its removal frees up a approximately - 2GB of disk space.</para> - </listitem> - </varlistentry> + <para>部份廢棄的檔案或目錄可以在更新之後保留,可使用以下指令找出這些檔案:</para> - <varlistentry> - <term>是否能繼續中斷的編譯?</term> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make check-old</userinput></screen> - <listitem> - <para xml:lang="en">This depends on how far into the process the - problem occurs. In general, <command>make - buildworld</command> builds new copies of essential - tools and the system libraries. These tools and - libraries are then installed, used to rebuild - themselves, and are installed again. The rest of the - system is then rebuilt with the new system - tools.</para> - - <para xml:lang="en">During the last stage, it is fairly safe to run - these commands as they will not undo the work of the - previous <command>make buildworld</command>:</para> - - <screen xml:lang="en"><prompt>#</prompt> <userinput>cd /usr/src</userinput> -<prompt>#</prompt> <userinput>make -DNO_CLEAN all</userinput></screen> - - <para xml:lang="en">If this message appears:</para> - - <screen xml:lang="en">-------------------------------------------------------------- -Building everything.. ---------------------------------------------------------------</screen> - - <para xml:lang="en">in the <command>make buildworld</command> output, - it is probably fairly safe to do so.</para> - - <para xml:lang="en">If that message is not displayed, it is always - better to be safe than sorry and to restart the build - from scratch.</para> - </listitem> - </varlistentry> + <para>並用以下指令刪除:</para> - <varlistentry> - <term>有可能加速編譯 World 的速度嗎?</term> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old</userinput></screen> - <listitem> - <para xml:lang="en">Several actions can speed up the build world - process. For example, the entire process can be run - from single-user mode. However, this will prevent users - from having access to the system until the process is - complete.</para> - - <para xml:lang="en">Careful file system design or the use of ZFS - datasets can make a difference. Consider putting - <filename>/usr/src</filename> and - <filename>/usr/obj</filename> on - separate file systems. If possible, place the file - systems on separate disks on separate disk controllers. - When mounting <filename>/usr/src</filename>, use - <option>noatime</option> which prevents the file system - from recording the file access time. If <filename>/usr/src</filename> is not on its - own file system, consider remounting <filename>/usr</filename> with - <option>noatime</option>.</para> - - <para xml:lang="en">The file system holding <filename>/usr/obj</filename> can be mounted - or remounted with <option>async</option> so that disk - writes happen asynchronously. The write completes - immediately, and the data is written to the disk a few - seconds later. This allows writes to be clustered - together, and can provide a dramatic performance - boost.</para> + <para>部份廢棄的程式庫也可以保留下來,可使用以下指令來偵測這些程式庫:</para> - <warning> - <para xml:lang="en">Keep in mind that this option makes the file - system more fragile. With this option, there is an - increased chance that, should power fail, the file - system will be in an unrecoverable state when the - machine restarts.</para> - - <para xml:lang="en">If <filename>/usr/obj</filename> is the only - directory on this file system, this is not a problem. - If you have other, valuable data on the same file - system, ensure that there are verified backups before - enabling this option.</para> - </warning> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make check-old-libs</userinput></screen> - <para xml:lang="en">Turn off profiling by setting - <quote>NO_PROFILE=true</quote> in - <filename>/etc/make.conf</filename>.</para> + <para>並使用以下指令刪除</para> - <para xml:lang="en">Pass <option>-j<replaceable>n</replaceable></option> - to <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></citerefentry> to run multiple processes in parallel. - This usually helps on both single- and multi-processor - machines.</para> - </listitem> - </varlistentry> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make delete-old-libs</userinput></screen> - <varlistentry> - <term>若發生錯誤時該怎麼辦?</term> + <para>那些仍使用舊程式庫的程式將在刪除程式庫之後無法正常運作,而這些程式須要在刪除舊程式庫之後重新編譯或更換。</para> - <listitem> - <para xml:lang="en">First, make absolutely sure that the environment has - no extraneous cruft from earlier builds:</para> + <tip> + <para>當確認所有舊檔案或目錄可安全的刪除時,要避免刪除每一個檔案時均需按下 <keycap>y</keycap> 與 <keycap>Enter</keycap> 鍵可在指令設定 <varname>BATCH_DELETE_OLD_FILES</varname>,例如:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>chflags -R noschg /usr/obj/usr</userinput> -<prompt>#</prompt> <userinput>rm -rf /usr/obj/usr</userinput> -<prompt>#</prompt> <userinput>cd /usr/src</userinput> -<prompt>#</prompt> <userinput>make cleandir</userinput> -<prompt>#</prompt> <userinput>make cleandir</userinput></screen> + <screen xml:lang="en"><prompt>#</prompt> <userinput>make BATCH_DELETE_OLD_FILES=yes delete-old-libs</userinput></screen> + </tip> + </sect3> - <para xml:lang="en">Yes, <command>make cleandir</command> really should - be run twice.</para> + <sect3 xml:id="updating-src-completing-restart"> + <title>更新後重新啟動</title> - <para xml:lang="en">Then, restart the whole process, starting with - <command>make buildworld</command>.</para> + <para>更新之後的最後一個步驟便是重新啟動電腦,來讓所有的變更生效:</para> - <para xml:lang="en">If problems persist, send the error and the output - of <command>uname -a</command> to <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-questions">FreeBSD general questions mailing list</link>. Be - prepared to answer other questions about the - setup!</para> - </listitem> - </varlistentry> - </variablelist> + <screen xml:lang="en"><prompt>#</prompt> <userinput>shutdown -r now</userinput></screen> + </sect3> </sect2> </sect1> @@ -36000,76 +35164,21 @@ Building everything.. <secondary>installing multiple machines</secondary> </indexterm> - <para xml:lang="en">When multiple machines need to track the same source tree, - it is a waste of disk space, network bandwidth, and - <acronym>CPU</acronym> cycles to have each system download the - sources and rebuild everything. The solution is to have one - machine do most of the work, while the rest of the machines - mount that work via <acronym>NFS</acronym>. This section - outlines a method of doing so. For more information about using - <acronym>NFS</acronym>, refer to <xref linkend="network-nfs"/>.</para> - - <para xml:lang="en">First, identify a set of machines which will run the same - set of binaries, known as a <firstterm>build set</firstterm>. - Each machine can have a custom kernel, but will run the same - userland binaries. From that set, choose a machine to be the - <firstterm>build machine</firstterm> that the world and kernel - are built on. Ideally, this is a fast machine that has - sufficient spare <acronym>CPU</acronym> to run <command>make - buildworld</command> and <command>make - buildkernel</command>.</para> - - <para xml:lang="en">Select a machine to be the <firstterm>test - machine</firstterm>, which will test software updates before - they are put into production. This <emphasis>must</emphasis> be - a machine that can afford to be down for an extended period of - time. It can be the build machine, but need not be.</para> - - <para xml:lang="en">All the machines in this build set need to mount - <filename>/usr/obj</filename> and <filename>/usr/src</filename> - from the build machine via <acronym>NFS</acronym>. For multiple - build sets, <filename>/usr/src</filename> should be on one build - machine, and <acronym>NFS</acronym> mounted on the rest.</para> - - <para xml:lang="en">Ensure that <filename>/etc/make.conf</filename> and - <filename>/etc/src.conf</filename> on all the machines in the - build set agree with the build machine. That means that the - build machine must build all the parts of the base system that - any machine in the build set is going to install. Also, each - build machine should have its kernel name set with - <varname>KERNCONF</varname> in - <filename>/etc/make.conf</filename>, and the build machine - should list them all in its <varname>KERNCONF</varname>, - listing its own kernel first. The build machine must have the - kernel configuration files for each machine in its <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf</filename>.</para> - - <para xml:lang="en">On the build machine, build the kernel and world as - described in <xref linkend="makeworld"/>, but do not install - anything on the build machine. Instead, install the built - kernel on the test machine. On the test machine, mount - <filename>/usr/src</filename> and - <filename>/usr/obj</filename> via <acronym>NFS</acronym>. Then, - run <command>shutdown now</command> to go to single-user mode in - order to install the new kernel and world and run - <command>mergemaster</command> as usual. When done, reboot to - return to normal multi-user operations.</para> - - <para xml:lang="en">After verifying that everything on the test machine is - working properly, use the same procedure to install the new - software on each of the other machines in the build set.</para> - - <para xml:lang="en">The same methodology can be used for the ports tree. The - first step is to share <filename>/usr/ports</filename> via - <acronym>NFS</acronym> to all the machines in the build set. To - configure <filename>/etc/make.conf</filename> to share - distfiles, set <varname>DISTDIR</varname> to a common shared - directory that is writable by whichever user <systemitem class="username">root</systemitem> is mapped to by the - <acronym>NFS</acronym> mount. Each machine should set - <varname>WRKDIRPREFIX</varname> to a local build directory, if - ports are to be built locally. Alternately, if the build system - is to build and distribute packages to the machines in the build - set, set <varname>PACKAGES</varname> on the build system to a - directory similar to <varname>DISTDIR</varname>.</para> + <para>當有多部主機需要追蹤相同的原始碼樹,要在每一部主機的系統下載原始碼與重新編譯所有的東西會耗費不少磁碟空間、網路頻寬與 <acronym>CPU</acronym> 運算,要解決這個問題的方法是先在一部主機上做完大部份的工作,而其餘的主機透過 <acronym>NFS</acronym> 掛載使用編譯完的成果。本節會介紹如何做這件事。要取得更多有關使用 <acronym>NFS</acronym> 的資訊請參考 <xref linkend="network-nfs"/>。</para> + + <para>首先,要先確認要執行同一組 Binary 的一群主機,這群主機又稱作 <firstterm>建置集 (Build set)</firstterm>,其中每部主機可以有自己的自訂核心,但會執行相同的 Userland binary。建置集中需挑選一部做為<firstterm>建置主機 (Build machine)</firstterm>,這部主機將會拿來編譯 World 與核心 (Kernel),理想情況下,要挑選一部速度較快、有足夠的 <acronym>CPU</acronym> 能夠執行 <command>make buildworld</command> 與 <command>make buildkernel</command> 的主機。</para> + + <para>再挑選一部主機做為<firstterm>測試主機 (Test machine)</firstterm>,這部主機,要在將系統更新上正式運作的環境前做測試,這<emphasis>必須</emphasis>一部能夠承受服務停止一段時間的主機,它也可是同時是建置主機,但不是一定要。</para> + + <para>所有在此建置集中的主機需要透過 <acronym>NFS</acronym> 掛載在建置主機上的 <filename>/usr/obj</filename> 與 <filename>/usr/src</filename>。在有多個建置集時,<filename>/usr/src</filename> 也應放在其中一部建置主機,然後由其他主機使用 <acronym>NFS</acronym> 掛載。</para> + + <para>確保在建置集中的所有主機的 <filename>/etc/make.conf</filename> 及 <filename>/etc/src.conf</filename> 與建置主機一致,這是由於建置主機必須編譯整個基礎系統 (Base system) 給所有建置集中的主機安裝。此外,每一部建置主機應在 <filename>/etc/make.conf</filename> 使用 <varname>KERNCONF</varname> 設定其核心名稱,且建置主機應列出所有要編譯的核心名稱在 <varname>KERNCONF</varname>,並且把自己要用的核心放在第一個。建置主機也必須有每部主機的核心設定檔在其 <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf</filename>。</para> + + <para>在建置主機上,編譯核心與 World 如 <xref linkend="makeworld"/> 所述,但不要在建置主機上安裝所有編譯好的東西,而是要將編譯好的核心安裝到測試主機,在測試主機透過 <acronym>NFS</acronym> 掛載 <filename>/usr/src</filename> 及 <filename>/usr/obj</filename>。然後執行 <command>shutdown now</command> 進入單使用者模式來安裝新的核心與 World 並如同往常執行 <command>mergemaster</command>。完成之後,重新開機回到正常的多使用者模式運作。</para> + + <para>在測試主機上檢驗完所有東西皆運作正常之後,使用相同的程序將編譯好的結果安裝到在建置集中的其他主機。</para> + + <para>同樣的方法也可用在 Port 樹,第一個步驟是透過 <acronym>NFS</acronym> 共享 <filename>/usr/ports</filename> 給所有在建置集中的主機。要設定 <filename>/etc/make.conf</filename> 使用共享的 distfiles,可設定 <varname>DISTDIR</varname> 為由 <acronym>NFS</acronym> 掛載對應到的使用者 <systemitem class="username">root</systemitem> 可寫入的通用共享目錄。每一台主機應設定 <varname>WRKDIRPREFIX</varname> 到一個本地的編譯目錄,若 Port 要在本地編譯。或者,若建置系統要編譯並散佈套件到建置集中的主機可在建置系統上設定 <varname>PACKAGES</varname> 到一個類似 <varname>DISTDIR</varname> 的目錄。</para> </sect1> </chapter> @@ -45960,9 +45069,9 @@ mail IN A 192.168.1.5</programlisting> <para xml:lang="en">The SHA-256 <acronym>RR</acronym> can now be compared to the digest in <link xlink:href="https://data.iana.org/root-anchors/root-anchors.xml">https://data.iana.org/root-anchors/root-anchors.xml</link>. To be absolutely sure that the key has not been tampered - with the data in the <acronym>XML</acronym> file can be - verified using the <acronym>PGP</acronym> signature in - <link xlink:href="https://data.iana.org/root-anchors/root-anchors.asc">https://data.iana.org/root-anchors/root-anchors.asc</link>.</para> + with the data in the <acronym>XML</acronym> file should be + verified using a proper <acronym>PGP</acronym> signature.</para> + <para xml:lang="en">Next, the key must be formatted properly. This differs a little between <acronym>BIND</acronym> versions @@ -46913,7 +46022,8 @@ AddModule mod_php5.c <para xml:lang="en">A FreeBSD system can also be configured to act as a <application>Samba</application> server by installing the <package>net/samba43</package> port or package. This allows the - administrator to create <acronym>SMB</acronym>/<acronym>CIFS</acronym>shares on + administrator to create <acronym>SMB</acronym>/<acronym>CIFS</acronym> + shares on the FreeBSD system which can be accessed by clients running <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> or the <application>Samba</application> client libraries.</para> @@ -52031,6 +51141,11 @@ route_net2="-net 192.168.1.0/24 192.168.1.1"</programlisting> <screen xml:lang="en"><prompt>%</prompt> <userinput>ifconfig | grep -B3 -i wireless</userinput></screen> + <para xml:lang="en">On FreeBSD 11 or higher, use this command + instead:</para> + + <screen xml:lang="en"><prompt>%</prompt> <userinput>sysctl net.wlan.devices</userinput></screen> + <para xml:lang="en">If a wireless adapter is not listed, an additional kernel module might be required, or it might be a model not supported by FreeBSD.</para> @@ -53493,7 +52608,7 @@ freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 EPS</screen> scanning for access points and the 802.11 protocol handshakes required to arrange communication:</para> - <screen xml:lang="en"><prompt>#</prompt> <userinput>wlandebug -i <replaceable>ath0</replaceable> +scan+auth+debug+assoc</userinput> + <screen xml:lang="en"><prompt>#</prompt> <userinput>wlandebug -i <replaceable>wlan0</replaceable> +scan+auth+debug+assoc</userinput> net.wlan.0.debug: 0 => 0xc80000<assoc,auth,scan></screen> <para xml:lang="en">Many useful statistics are maintained by the 802.11 @@ -55872,12 +54987,6 @@ rtsold_enable="YES"</programlisting> </listitem> <listitem> - <para xml:lang="en"><link xlink:href="http://www.sixxs.net">SixXS</link> - offers tunnels with end-points all around the - globe.</para> - </listitem> - - <listitem> <para xml:lang="en"><link xlink:href="http://www.tunnelbroker.net">Hurricane Electric</link> offers tunnels with end-points all around the globe.</para> diff --git a/zh_TW.UTF-8/books/handbook/zh_TW.po b/zh_TW.UTF-8/books/handbook/zh_TW.po index 2ca7eea39c..63f013879c 100644 --- a/zh_TW.UTF-8/books/handbook/zh_TW.po +++ b/zh_TW.UTF-8/books/handbook/zh_TW.po @@ -2,15 +2,15 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2017-02-23 16:27+0800\n" -"PO-Revision-Date: 2017-02-23 16:17+0800\n" +"POT-Creation-Date: 2017-05-24 18:05+0800\n" +"PO-Revision-Date: 2017-05-24 00:49+0800\n" "Last-Translator: Chien Wei Lin <cwlin0416@gmail.com>\n" "Language-Team: \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" +"X-Generator: Poedit 2.0.2\n" #. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2 msgctxt "_" @@ -18,42 +18,42 @@ msgid "translator-credits" msgstr "Chien Wei Lin <cwlin0416@gmail.com>" #. (itstool) path: info/title -#: book.translate.xml:612 +#: book.translate.xml:618 msgid "FreeBSD Handbook" msgstr "FreeBSD 使用手冊" #. (itstool) path: info/author -#: book.translate.xml:614 +#: book.translate.xml:620 msgid "<orgname>The FreeBSD Documentation Project</orgname>" msgstr "<orgname>FreeBSD 文件計劃</orgname>" #. (itstool) path: info/pubdate #. (itstool) path: info/releaseinfo -#: book.translate.xml:618 book.translate.xml:620 +#: book.translate.xml:624 book.translate.xml:626 msgid "" -"$FreeBSD: head/en_US.ISO8859-1/books/handbook/book.xml 49576 2016-10-25 " -"16:21:58Z gjb $" +"$FreeBSD: head/en_US.ISO8859-1/books/handbook/book.xml 50274 2017-05-23 " +"18:00:40Z gjb $" msgstr "" #. (itstool) path: info/copyright -#: book.translate.xml:622 +#: book.translate.xml:628 msgid "" "<year>1995</year> <year>1996</year> <year>1997</year> <year>1998</year> " "<year>1999</year> <year>2000</year> <year>2001</year> <year>2002</year> " "<year>2003</year> <year>2004</year> <year>2005</year> <year>2006</year> " "<year>2007</year> <year>2008</year> <year>2009</year> <year>2010</year> " "<year>2011</year> <year>2012</year> <year>2013</year> <year>2014</year> " -"<year>2015</year> <year>2016</year> <holder>The FreeBSD Documentation " -"Project</holder>" +"<year>2015</year> <year>2016</year> <year>2017</year> <holder>The FreeBSD " +"Documentation Project</holder>" msgstr "" #. (itstool) path: legalnotice/title -#: book.translate.xml:650 +#: book.translate.xml:657 msgid "Copyright" msgstr "版權" #. (itstool) path: legalnotice/para -#: book.translate.xml:652 +#: book.translate.xml:659 msgid "" "Redistribution and use in source (XML DocBook) and 'compiled' forms (XML, " "HTML, PDF, PostScript, RTF and so forth) with or without modification, are " @@ -61,7 +61,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:659 +#: book.translate.xml:666 msgid "" "Redistributions of source code (XML DocBook) must retain the above copyright " "notice, this list of conditions and the following disclaimer as the first " @@ -69,7 +69,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:665 +#: book.translate.xml:672 msgid "" "Redistributions in compiled form (transformed to other DTDs, converted to " "PDF, PostScript, RTF and other formats) must reproduce the above copyright " @@ -78,7 +78,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:674 +#: book.translate.xml:681 msgid "" "THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT \"AS IS" "\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE " @@ -94,32 +94,32 @@ msgid "" msgstr "" #. (itstool) path: legalnotice/para -#: book.translate.xml:691 +#: book.translate.xml:698 msgid "FreeBSD is a registered trademark of the FreeBSD Foundation." msgstr "FreeBSD 是 FreeBSD 基金會的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:693 +#: book.translate.xml:700 msgid "3Com and HomeConnect are registered trademarks of 3Com Corporation." msgstr "3Com 和 HomeConnect 是 3Com Corporation 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:695 +#: book.translate.xml:702 msgid "3ware is a registered trademark of 3ware Inc." msgstr "3ware 是 3ware Inc 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:697 +#: book.translate.xml:704 msgid "ARM is a registered trademark of ARM Limited." msgstr "ARM 是 ARM Limited. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:699 +#: book.translate.xml:706 msgid "Adaptec is a registered trademark of Adaptec, Inc." msgstr "Adaptec 是 Adaptec, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:701 +#: book.translate.xml:708 msgid "" "Adobe, Acrobat, Acrobat Reader, Flash and PostScript are either registered " "trademarks or trademarks of Adobe Systems Incorporated in the United States " @@ -129,7 +129,7 @@ msgstr "" "Incorporated 在美國和/或其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:705 +#: book.translate.xml:712 msgid "" "Apple, AirPort, FireWire, iMac, iPhone, iPad, Mac, Macintosh, Mac OS, " "Quicktime, and TrueType are trademarks of Apple Inc., registered in the U.S. " @@ -139,12 +139,12 @@ msgstr "" "Quicktime 以及 TrueType 是 Apple Inc. 在美國以及其他國家的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:710 +#: book.translate.xml:717 msgid "Android is a trademark of Google Inc." msgstr "Android 是 Google Inc 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:712 +#: book.translate.xml:719 msgid "" "Heidelberg, Helvetica, Palatino, and Times Roman are either registered " "trademarks or trademarks of Heidelberger Druckmaschinen AG in the U.S. and " @@ -154,7 +154,7 @@ msgstr "" "Druckmaschinen AG 在美國以及其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:716 +#: book.translate.xml:723 msgid "" "IBM, AIX, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of " "International Business Machines Corporation in the United States, other " @@ -164,7 +164,7 @@ msgstr "" "Machines Corporation 在美國和其他國家的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:720 +#: book.translate.xml:727 msgid "" "IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical " "and Electronics Engineers, Inc. in the United States." @@ -173,7 +173,7 @@ msgstr "" "Inc. 在美國的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:723 +#: book.translate.xml:730 msgid "" "Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, " "and Xeon are trademarks or registered trademarks of Intel Corporation or its " @@ -183,7 +183,7 @@ msgstr "" "及 Xeon 是 Intel Corporation 及其分支機構在美國和其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:727 +#: book.translate.xml:734 msgid "" "Intuit and Quicken are registered trademarks and/or registered service marks " "of Intuit Inc., or one of its subsidiaries, in the United States and other " @@ -193,12 +193,12 @@ msgstr "" "標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:730 +#: book.translate.xml:737 msgid "Linux is a registered trademark of Linus Torvalds." msgstr "Linux 是 Linus Torvalds 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:732 +#: book.translate.xml:739 msgid "" "LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID and Mylex are trademarks or " "registered trademarks of LSI Logic Corp." @@ -207,7 +207,7 @@ msgstr "" "商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:735 +#: book.translate.xml:742 msgid "" "Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows " "NT are either registered trademarks or trademarks of Microsoft Corporation " @@ -217,7 +217,7 @@ msgstr "" "Windows NT 是 Microsoft Corporation 在美國和/或其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:739 +#: book.translate.xml:746 msgid "" "Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The " "Open Group are trademarks of The Open Group in the United States and other " @@ -227,12 +227,12 @@ msgstr "" "DialTone 和 The Open Group 是其商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:743 +#: book.translate.xml:750 msgid "Oracle is a registered trademark of Oracle Corporation." msgstr "Oracle 是 Oracle Corporation 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:745 +#: book.translate.xml:752 msgid "" "RealNetworks, RealPlayer, and RealAudio are the registered trademarks of " "RealNetworks, Inc." @@ -240,14 +240,14 @@ msgstr "" "RealNetworks, RealPlayer, 和 RealAudio 是 RealNetworks, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:748 +#: book.translate.xml:755 msgid "" "Red Hat, RPM, are trademarks or registered trademarks of Red Hat, Inc. in " "the United States and other countries." msgstr "Red Hat, RPM, 是 Red Hat, Inc. 在美國和其他國家的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:751 +#: book.translate.xml:758 msgid "" "Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, " "Netra, OpenJDK, Solaris, StarOffice, SunOS and VirtualBox are trademarks or " @@ -259,37 +259,37 @@ msgstr "" "Microsystems, Inc. 在美國和其他國家的商標或註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:756 +#: book.translate.xml:763 msgid "MATLAB is a registered trademark of The MathWorks, Inc." msgstr "MATLAB 是 The MathWorks, Inc. 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:758 +#: book.translate.xml:765 msgid "SpeedTouch is a trademark of Thomson." msgstr "SpeedTouch 是 Thomson 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:760 +#: book.translate.xml:767 msgid "VMware is a trademark of VMware, Inc." msgstr "VMware 是 VMware, Inc. 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:762 +#: book.translate.xml:769 msgid "Mathematica is a registered trademark of Wolfram Research, Inc." msgstr "Mathematica 是 Wolfram Research, Inc 的註冊商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:764 +#: book.translate.xml:771 msgid "XFree86 is a trademark of The XFree86 Project, Inc." msgstr "XFree86 是 The XFree86 Project, Inc 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:766 +#: book.translate.xml:773 msgid "Ogg Vorbis and Xiph.Org are trademarks of Xiph.Org." msgstr "Ogg Vorbis 以及 Xiph.Org 是 Xiph.Org 的商標。" #. (itstool) path: legalnotice/para -#: book.translate.xml:768 +#: book.translate.xml:775 msgid "" "Many of the designations used by manufacturers and sellers to distinguish " "their products are claimed as trademarks. Where those designations appear in " @@ -302,7 +302,7 @@ msgstr "" "quote> 或 <quote>®</quote> 符號來標示。" #. (itstool) path: abstract/para -#: book.translate.xml:777 +#: book.translate.xml:784 msgid "" "Welcome to FreeBSD! This handbook covers the installation and day to day use " "of <emphasis>FreeBSD 11.0-RELEASE</emphasis>, <emphasis>FreeBSD 10.3-" @@ -320,7 +320,7 @@ msgstr "" "mailman/listinfo/freebsd-doc\">FreeBSD 文件專案郵遞論壇</link>。" #. (itstool) path: abstract/para -#: book.translate.xml:786 +#: book.translate.xml:793 msgid "" "The latest version of this book is available from the <link xlink:href=" "\"https://www.FreeBSD.org/\">FreeBSD web site</link>. Previous versions can " @@ -345,18 +345,18 @@ msgstr "" "件的資料。" #. (itstool) path: preface/title -#: book.translate.xml:807 +#: book.translate.xml:814 msgid "Preface" msgstr "序" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-audience -#: book.translate.xml:809 +#: book.translate.xml:816 msgid "Intended Audience" msgstr "給讀者的話" #. (itstool) path: preface/para -#: book.translate.xml:812 +#: book.translate.xml:819 msgid "" "The FreeBSD newcomer will find that the first section of this book guides " "the user through the FreeBSD installation process and gently introduces the " @@ -370,7 +370,7 @@ msgstr "" "一些常用、共通的東西。而閱讀這部分並不難,只需要您有探索的精神和接受新概念。" #. (itstool) path: preface/para -#: book.translate.xml:819 +#: book.translate.xml:826 msgid "" "Once you have traveled this far, the second, far larger, section of the " "Handbook is a comprehensive reference to all manner of topics of interest to " @@ -383,7 +383,7 @@ msgstr "" "不熟的話,可在閱讀前先預習一番。" #. (itstool) path: preface/para -#: book.translate.xml:826 +#: book.translate.xml:833 msgid "" "For a list of additional sources of information, please see <xref linkend=" "\"bibliography\"/>." @@ -391,12 +391,12 @@ msgstr "延伸閱讀方面,可參閱 <xref linkend=\"bibliography\"/>。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes-from3 -#: book.translate.xml:829 +#: book.translate.xml:836 msgid "Changes from the Third Edition" msgstr "自第三版後的主要修訂" #. (itstool) path: preface/para -#: book.translate.xml:832 +#: book.translate.xml:839 msgid "" "The current online version of the Handbook represents the cumulative effort " "of many hundreds of contributors over the past 10 years. The following are " @@ -407,7 +407,7 @@ msgstr "" "2014 年發佈的兩冊第三版後所做的主要修訂:" #. (itstool) path: listitem/para -#: book.translate.xml:839 +#: book.translate.xml:846 msgid "" "<xref linkend=\"dtrace\"/> has been added with information about the " "powerful DTrace performance analysis tool." @@ -415,7 +415,7 @@ msgstr "" "<xref linkend=\"dtrace\"/> 增加說明有關強大的 DTrace 效能分析工具的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:844 +#: book.translate.xml:851 msgid "" "<xref linkend=\"filesystems\"/> has been added with information about non-" "native file systems in FreeBSD, such as ZFS from <trademark>Sun</trademark>." @@ -424,7 +424,7 @@ msgstr "" "自 <trademark>Sun</trademark> 的 ZSF。" #. (itstool) path: listitem/para -#: book.translate.xml:850 +#: book.translate.xml:857 msgid "" "<xref linkend=\"audit\"/> has been added to cover the new auditing " "capabilities in FreeBSD and explain its use." @@ -432,7 +432,7 @@ msgstr "" "<xref linkend=\"audit\"/> 增加的內容涵蓋 FreeBSD 的新稽查功能及其使用說明。" #. (itstool) path: listitem/para -#: book.translate.xml:855 +#: book.translate.xml:862 msgid "" "<xref linkend=\"virtualization\"/> has been added with information about " "installing FreeBSD on virtualization software." @@ -440,7 +440,7 @@ msgstr "" "<xref linkend=\"virtualization\"/> 增加有關在虛擬化軟體安裝 FreeBSD 的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:861 +#: book.translate.xml:868 msgid "" "<xref linkend=\"bsdinstall\"/> has been added to cover installation of " "FreeBSD using the new installation utility, <application>bsdinstall</" @@ -451,12 +451,12 @@ msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes-from2 -#: book.translate.xml:867 +#: book.translate.xml:874 msgid "Changes from the Second Edition (2004)" msgstr "自第二版後的主要修訂 (2004)" #. (itstool) path: preface/para -#: book.translate.xml:870 +#: book.translate.xml:877 msgid "" "The third edition was the culmination of over two years of work by the " "dedicated members of the FreeBSD Documentation Project. The printed edition " @@ -467,7 +467,7 @@ msgstr "" "文件內容成長到一定大小,印刷版需要分成兩冊發佈。新版的主要修訂部分如下:" #. (itstool) path: listitem/para -#: book.translate.xml:878 +#: book.translate.xml:885 msgid "" "<xref linkend=\"config-tuning\"/> has been expanded with new information " "about the ACPI power and resource management, the <command>cron</command> " @@ -477,7 +477,7 @@ msgstr "" "<command>cron</command> 以及其他更多的核心調校選項說明內容。" #. (itstool) path: listitem/para -#: book.translate.xml:885 +#: book.translate.xml:892 msgid "" "<xref linkend=\"security\"/> has been expanded with new information about " "virtual private networks (VPNs), file system access control lists (ACLs), " @@ -487,7 +487,7 @@ msgstr "" "(ACL),以及安全報告。" #. (itstool) path: listitem/para -#: book.translate.xml:891 +#: book.translate.xml:898 msgid "" "<xref linkend=\"mac\"/> is a new chapter with this edition. It explains what " "MAC is and how this mechanism can be used to secure a FreeBSD system." @@ -496,7 +496,7 @@ msgstr "" "何運用它來使您的 FreeBSD 系統更安全。" #. (itstool) path: listitem/para -#: book.translate.xml:897 +#: book.translate.xml:904 msgid "" "<xref linkend=\"disks\"/> has been expanded with new information about USB " "storage devices, file system snapshots, file system quotas, file and network " @@ -507,13 +507,13 @@ msgstr "" "詳解。" #. (itstool) path: listitem/para -#: book.translate.xml:904 +#: book.translate.xml:911 msgid "" "A troubleshooting section has been added to <xref linkend=\"ppp-and-slip\"/>." msgstr "<xref linkend=\"ppp-and-slip\"/> 增加了疑難排解的章節。" #. (itstool) path: listitem/para -#: book.translate.xml:908 +#: book.translate.xml:915 msgid "" "<xref linkend=\"mail\"/> has been expanded with new information about using " "alternative transport agents, SMTP authentication, UUCP, " @@ -525,7 +525,7 @@ msgstr "" "application> 的運用以及其它進階主題。" #. (itstool) path: listitem/para -#: book.translate.xml:916 +#: book.translate.xml:923 msgid "" "<xref linkend=\"network-servers\"/> is all new with this edition. This " "chapter includes information about setting up the <application>Apache HTTP " @@ -543,7 +543,7 @@ msgstr "" "\"advanced-networking\"/> 。" #. (itstool) path: listitem/para -#: book.translate.xml:926 +#: book.translate.xml:933 msgid "" "<xref linkend=\"advanced-networking\"/> has been expanded with new " "information about using <trademark class=\"registered\">Bluetooth</" @@ -555,14 +555,14 @@ msgstr "" "式 (Asynchronous Transfer Mode, ATM) 網路的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:933 +#: book.translate.xml:940 msgid "" "A glossary has been added to provide a central location for the definitions " "of technical terms used throughout the book." msgstr "增加詞彙表,用以說明全書中出現的術語。" #. (itstool) path: listitem/para -#: book.translate.xml:939 +#: book.translate.xml:946 msgid "" "A number of aesthetic improvements have been made to the tables and figures " "throughout the book." @@ -570,12 +570,12 @@ msgstr "重新美編書中所列的圖表。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-changes -#: book.translate.xml:944 +#: book.translate.xml:951 msgid "Changes from the First Edition (2001)" msgstr "自第一版後的主要修訂 (2001)" #. (itstool) path: preface/para -#: book.translate.xml:947 +#: book.translate.xml:954 msgid "" "The second edition was the culmination of over two years of work by the " "dedicated members of the FreeBSD Documentation Project. The following were " @@ -585,17 +585,17 @@ msgstr "" "變動如下︰" #. (itstool) path: listitem/para -#: book.translate.xml:955 +#: book.translate.xml:962 msgid "A complete Index has been added." msgstr "增加完整的目錄索引。" #. (itstool) path: listitem/para -#: book.translate.xml:959 +#: book.translate.xml:966 msgid "All ASCII figures have been replaced by graphical diagrams." msgstr "所有的 ASCII 圖表均改成圖檔格式的圖表。" #. (itstool) path: listitem/para -#: book.translate.xml:964 +#: book.translate.xml:971 msgid "" "A standard synopsis has been added to each chapter to give a quick summary " "of what information the chapter contains, and what the reader is expected to " @@ -603,7 +603,7 @@ msgid "" msgstr "每個章節均加入概述,以便快速的瀏覽該章節內容摘要、讀者所欲了解的部分。" #. (itstool) path: listitem/para -#: book.translate.xml:970 +#: book.translate.xml:977 msgid "" "The content has been logically reorganized into three parts: <quote>Getting " "Started</quote>, <quote>System Administration</quote>, and " @@ -613,7 +613,7 @@ msgstr "" "及 <quote>附錄</quote>。" #. (itstool) path: listitem/para -#: book.translate.xml:977 +#: book.translate.xml:984 msgid "" "<xref linkend=\"basics\"/> has been expanded to contain additional " "information about processes, daemons, and signals." @@ -621,14 +621,14 @@ msgstr "" "<xref linkend=\"basics\"/> 新增了程序、Daemon 以及信號 (Signal) 的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:983 +#: book.translate.xml:990 msgid "" "<xref linkend=\"ports\"/> has been expanded to contain additional " "information about binary package management." msgstr "<xref linkend=\"ports\"/> 新增了介紹如何管理 Binary 套件的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:989 +#: book.translate.xml:996 msgid "" "<xref linkend=\"x11\"/> has been completely rewritten with an emphasis on " "using modern desktop technologies such as <application>KDE</application> and " @@ -639,12 +639,12 @@ msgstr "" "<application>GNOME</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:996 +#: book.translate.xml:1003 msgid "<xref linkend=\"boot\"/> has been expanded." msgstr "<xref linkend=\"boot\"/> 更新相關內容。" #. (itstool) path: listitem/para -#: book.translate.xml:1000 +#: book.translate.xml:1007 msgid "" "<xref linkend=\"disks\"/> has been written from what used to be two separate " "chapters on <quote>Disks</quote> and <quote>Backups</quote>. We feel that " @@ -656,7 +656,7 @@ msgstr "" "體、軟體 RAID) 的段落也新增上去了。" #. (itstool) path: listitem/para -#: book.translate.xml:1009 +#: book.translate.xml:1016 msgid "" "<xref linkend=\"serialcomms\"/> has been completely reorganized and updated " "for FreeBSD 4.X/5.X." @@ -665,18 +665,18 @@ msgstr "" "容。" #. (itstool) path: listitem/para -#: book.translate.xml:1014 +#: book.translate.xml:1021 msgid "<xref linkend=\"ppp-and-slip\"/> has been substantially updated." msgstr "<xref linkend=\"ppp-and-slip\"/> 有相當程度的更新。" #. (itstool) path: listitem/para -#: book.translate.xml:1019 +#: book.translate.xml:1026 msgid "" "Many new sections have been added to <xref linkend=\"advanced-networking\"/>." msgstr "<xref linkend=\"advanced-networking\"/> 加入許多新內容。" #. (itstool) path: listitem/para -#: book.translate.xml:1023 +#: book.translate.xml:1030 msgid "" "<xref linkend=\"mail\"/> has been expanded to include more information about " "configuring <application>sendmail</application>." @@ -685,7 +685,7 @@ msgstr "" "的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:1029 +#: book.translate.xml:1036 msgid "" "<xref linkend=\"linuxemu\"/> has been expanded to include information about " "installing <application><trademark class=\"registered\">Oracle</trademark></" @@ -698,28 +698,28 @@ msgstr "" "trademark></application> 的介紹。" #. (itstool) path: listitem/para -#: book.translate.xml:1036 +#: book.translate.xml:1043 msgid "The following new topics are covered in this second edition:" msgstr "此外,第二版還新加章節,以介紹下列新主題:" #. (itstool) path: listitem/para -#: book.translate.xml:1041 +#: book.translate.xml:1048 msgid "<xref linkend=\"config-tuning\"/>." msgstr "<xref linkend=\"config-tuning\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:1045 +#: book.translate.xml:1052 msgid "<xref linkend=\"multimedia\"/>." msgstr "<xref linkend=\"multimedia\"/>。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-overview -#: book.translate.xml:1051 +#: book.translate.xml:1058 msgid "Organization of This Book" msgstr "本書架構" #. (itstool) path: preface/para -#: book.translate.xml:1053 +#: book.translate.xml:1060 msgid "" "This book is split into five logically distinct sections. The first section, " "<emphasis>Getting Started</emphasis>, covers the installation and basic " @@ -744,14 +744,14 @@ msgstr "" "則包括網路和各式伺服器主題;而第五部分則為附錄包含各種有關 FreeBSD 的資源。" #. (itstool) path: listitem/para -#: book.translate.xml:1078 +#: book.translate.xml:1085 msgid "" "Introduces FreeBSD to a new user. It describes the history of the FreeBSD " "Project, its goals and development model." msgstr "向新手介紹 FreeBSD。該篇說明了 FreeBSD 計劃的歷史、目標和開發模式。" #. (itstool) path: listitem/para -#: book.translate.xml:1088 +#: book.translate.xml:1095 msgid "" "Walks a user through the entire installation process of FreeBSD 9." "<replaceable>x</replaceable> and later using <application>bsdinstall</" @@ -761,7 +761,7 @@ msgstr "" "<replaceable>x</replaceable> 及之後版本的完整安裝流程。" #. (itstool) path: listitem/para -#: book.translate.xml:1098 +#: book.translate.xml:1105 msgid "" "Covers the basic commands and functionality of the FreeBSD operating system. " "If you are familiar with <trademark class=\"registered\">Linux</trademark> " @@ -772,7 +772,7 @@ msgstr "" "\">Linux</trademark> 或其他類 UNIX® 系統,您則可跳過此章。" #. (itstool) path: listitem/para -#: book.translate.xml:1109 +#: book.translate.xml:1116 msgid "" "Covers the installation of third-party software with both FreeBSD's " "innovative <quote>Ports Collection</quote> and standard binary packages." @@ -781,7 +781,7 @@ msgstr "" "第三方軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:1119 +#: book.translate.xml:1126 msgid "" "Describes the X Window System in general and using X11 on FreeBSD in " "particular. Also describes common desktop environments such as " @@ -791,7 +791,7 @@ msgstr "" "<application>KDE</application> 與 <application>GNOME</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1132 +#: book.translate.xml:1139 msgid "" "Lists some common desktop applications, such as web browsers and " "productivity suites, and describes how to install them on FreeBSD." @@ -800,7 +800,7 @@ msgstr "" "程式到 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:1141 +#: book.translate.xml:1148 msgid "" "Shows how to set up sound and video playback support for your system. Also " "describes some sample audio and video applications." @@ -809,14 +809,14 @@ msgstr "" "用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:1151 +#: book.translate.xml:1158 msgid "" "Explains why you might need to configure a new kernel and provides detailed " "instructions for configuring, building, and installing a custom kernel." msgstr "說明為何需要設定新的核心並會提供設定、編譯與安裝的詳細操作說明。" #. (itstool) path: listitem/para -#: book.translate.xml:1161 +#: book.translate.xml:1168 msgid "" "Describes managing printers on FreeBSD, including information about banner " "pages, printer accounting, and initial setup." @@ -824,7 +824,7 @@ msgstr "" "介紹如何在 FreeBSD 管理印表機,包含橫幅頁面、列印帳務以及初始設定等資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:1171 +#: book.translate.xml:1178 msgid "" "Describes the <trademark class=\"registered\">Linux</trademark> " "compatibility features of FreeBSD. Also provides detailed installation " @@ -840,7 +840,7 @@ msgstr "" "\"registered\">Mathematica</trademark></application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1185 +#: book.translate.xml:1192 msgid "" "Describes the parameters available for system administrators to tune a " "FreeBSD system for optimum performance. Also describes the various " @@ -850,14 +850,14 @@ msgstr "" "FreeBSD 用到的各種設定檔以及到何處尋找這些設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:1196 +#: book.translate.xml:1203 msgid "" "Describes the FreeBSD boot process and explains how to control this process " "with configuration options." msgstr "介紹 FreeBSD 開機流程並說明如何使用設定選項控制開機流程。" #. (itstool) path: listitem/para -#: book.translate.xml:1205 +#: book.translate.xml:1212 msgid "" "Describes many different tools available to help keep your FreeBSD system " "secure, including Kerberos, IPsec and OpenSSH." @@ -866,7 +866,7 @@ msgstr "" "OpenSSH。" #. (itstool) path: listitem/para -#: book.translate.xml:1215 +#: book.translate.xml:1222 msgid "" "Describes the jails framework, and the improvements of jails over the " "traditional chroot support of FreeBSD." @@ -874,7 +874,7 @@ msgstr "" "介紹 Jail Framework,以及 Jail 改進那些 FreeBSD 傳統 chroot 不足的地方。" #. (itstool) path: listitem/para -#: book.translate.xml:1224 +#: book.translate.xml:1231 msgid "" "Explains what Mandatory Access Control (MAC) is and how this mechanism can " "be used to secure a FreeBSD system." @@ -883,7 +883,7 @@ msgstr "" "保 FreeBSD 系統的安全。" #. (itstool) path: listitem/para -#: book.translate.xml:1234 +#: book.translate.xml:1241 msgid "" "Describes what FreeBSD Event Auditing is, how it can be installed, " "configured, and how audit trails can be inspected or monitored." @@ -891,7 +891,7 @@ msgstr "" "介紹什麼事 FreeBSD 事件稽查,如何安裝與設定,以及如何檢查與監控稽查線索。" #. (itstool) path: listitem/para -#: book.translate.xml:1244 +#: book.translate.xml:1251 msgid "" "Describes how to manage storage media and filesystems with FreeBSD. This " "includes physical disks, RAID arrays, optical and tape media, memory-backed " @@ -901,7 +901,7 @@ msgstr "" "與磁帶媒體、記憶體為基礎的磁碟以及網路檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1255 +#: book.translate.xml:1262 msgid "" "Describes what the GEOM framework in FreeBSD is and how to configure various " "supported RAID levels." @@ -909,7 +909,7 @@ msgstr "" "介紹在 FreeBSD 中的 GEOM Framework 是什麼,以及如何設定各種支援的 RAID 階層。" #. (itstool) path: listitem/para -#: book.translate.xml:1264 +#: book.translate.xml:1271 msgid "" "Examines support of non-native file systems in FreeBSD, like the Z File " "System from <trademark>Sun</trademark>." @@ -918,21 +918,21 @@ msgstr "" "案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1273 +#: book.translate.xml:1280 msgid "" "Describes what virtualization systems offer, and how they can be used with " "FreeBSD." msgstr "介紹虛擬化系統提供了那些功能,以及如何在 FreeBSD 上使用。" #. (itstool) path: listitem/para -#: book.translate.xml:1282 +#: book.translate.xml:1289 msgid "" "Describes how to use FreeBSD in languages other than English. Covers both " "system and application level localization." msgstr "介紹如何在 FreeBSD 使用非英文的語言,這涵蓋了系統及應用層的在地化。" #. (itstool) path: listitem/para -#: book.translate.xml:1292 +#: book.translate.xml:1299 msgid "" "Explains the differences between FreeBSD-STABLE, FreeBSD-CURRENT, and " "FreeBSD releases. Describes which users would benefit from tracking a " @@ -944,7 +944,7 @@ msgstr "" "佈版本的方法。" #. (itstool) path: listitem/para -#: book.translate.xml:1305 +#: book.translate.xml:1312 msgid "" "Describes how to configure and use the DTrace tool from <trademark>Sun</" "trademark> in FreeBSD. Dynamic tracing can help locate performance issues, " @@ -954,19 +954,19 @@ msgstr "" "追蹤可以透過執行真實時間系統分析來協助定位效能問題。" #. (itstool) path: listitem/para -#: book.translate.xml:1318 +#: book.translate.xml:1325 msgid "" "Explains how to connect terminals and modems to your FreeBSD system for both " "dial in and dial out connections." msgstr "介紹如何使用撥入及撥出連線到您的 FreeBSD 系統的終端機與數據機。" #. (itstool) path: listitem/para -#: book.translate.xml:1328 +#: book.translate.xml:1335 msgid "Describes how to use PPP to connect to remote systems with FreeBSD." msgstr "介紹如何在 FreeBSD 使用 PPP 來連線遠端的系統。" #. (itstool) path: listitem/para -#: book.translate.xml:1337 +#: book.translate.xml:1344 msgid "" "Explains the different components of an email server and dives into simple " "configuration topics for the most popular mail server software: " @@ -976,7 +976,7 @@ msgstr "" "<application>sendmail</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:1348 +#: book.translate.xml:1355 msgid "" "Provides detailed instructions and example configuration files to set up " "your FreeBSD machine as a network filesystem server, domain name server, " @@ -986,7 +986,7 @@ msgstr "" "網域名稱伺服器、網路資訊系統伺服器或時間同步伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:1359 +#: book.translate.xml:1366 msgid "" "Explains the philosophy behind software-based firewalls and provides " "detailed information about the configuration of the different firewalls " @@ -996,7 +996,7 @@ msgstr "" "細資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:1369 +#: book.translate.xml:1376 msgid "" "Describes many networking topics, including sharing an Internet connection " "with other computers on your LAN, advanced routing topics, wireless " @@ -1008,7 +1008,7 @@ msgstr "" "ATM、IPv6 以及更多相關主題。" #. (itstool) path: listitem/para -#: book.translate.xml:1382 +#: book.translate.xml:1389 msgid "" "Lists different sources for obtaining FreeBSD media on CDROM or DVD as well " "as different sites on the Internet that allow you to download and install " @@ -1018,7 +1018,7 @@ msgstr "" "您可以下載並安裝 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:1392 +#: book.translate.xml:1399 msgid "" "This book touches on many different subjects that may leave you hungry for a " "more detailed explanation. The bibliography lists many excellent books that " @@ -1028,7 +1028,7 @@ msgstr "" "多優秀書籍。" #. (itstool) path: listitem/para -#: book.translate.xml:1403 +#: book.translate.xml:1410 msgid "" "Describes the many forums available for FreeBSD users to post questions and " "engage in technical conversations about FreeBSD." @@ -1036,18 +1036,18 @@ msgstr "" "介紹了可讓 FreeBSD 使用者提出問題以及參與有關 FreeBSD 技術會談的許多論壇。" #. (itstool) path: listitem/para -#: book.translate.xml:1413 +#: book.translate.xml:1420 msgid "Lists the PGP fingerprints of several FreeBSD Developers." msgstr "列出了數個 FreeBSD 開發人員的 PGP 指紋。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv -#: book.translate.xml:1419 +#: book.translate.xml:1426 msgid "Conventions used in this book" msgstr "本書的編排體裁" #. (itstool) path: preface/para -#: book.translate.xml:1422 +#: book.translate.xml:1429 msgid "" "To provide a consistent and easy to read text, several conventions are " "followed throughout the book." @@ -1055,17 +1055,17 @@ msgstr "為方便閱讀本書,以下是一些本書所遵循的編排體裁: #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv-typographic -#: book.translate.xml:1425 +#: book.translate.xml:1432 msgid "Typographic Conventions" msgstr "文字編排體裁" #. (itstool) path: varlistentry/term -#: book.translate.xml:1429 +#: book.translate.xml:1436 msgid "<emphasis>Italic</emphasis>" msgstr "<emphasis>斜體字</emphasis>" #. (itstool) path: listitem/para -#: book.translate.xml:1432 +#: book.translate.xml:1439 msgid "" "An <emphasis>italic</emphasis> font is used for filenames, URLs, emphasized " "text, and the first usage of technical terms." @@ -1074,12 +1074,12 @@ msgstr "" "次提及的技術詞彙。" #. (itstool) path: varlistentry/term -#: book.translate.xml:1439 +#: book.translate.xml:1446 msgid "<literal>Monospace</literal>" msgstr "<literal>等寬字</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:1442 +#: book.translate.xml:1449 msgid "" "A <literal>monospaced</literal> font is used for error messages, commands, " "environment variables, names of ports, hostnames, user names, group names, " @@ -1089,24 +1089,24 @@ msgstr "" "稱、帳號、群組、裝置名稱、變數、程式碼等。" #. (itstool) path: varlistentry/term -#: book.translate.xml:1450 +#: book.translate.xml:1457 msgid "<application>Bold</application>" msgstr "<application>粗體字</application>" #. (itstool) path: listitem/para -#: book.translate.xml:1453 +#: book.translate.xml:1460 msgid "" "A <keycap>bold</keycap> font is used for applications, commands, and keys." msgstr "以<keycap>粗體字</keycap>表示:應用程式、指令、按鍵。" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv-commands -#: book.translate.xml:1460 +#: book.translate.xml:1467 msgid "User Input" msgstr "使用者輸入" #. (itstool) path: preface/para -#: book.translate.xml:1463 +#: book.translate.xml:1470 msgid "" "Keys are shown in <keycap>bold</keycap> to stand out from other text. Key " "combinations that are meant to be typed simultaneously are shown with " @@ -1116,14 +1116,14 @@ msgstr "" "按下一些按鍵,我們以 `<literal>+</literal>' 來表示連接,像是:" #. (itstool) path: preface/para -#: book.translate.xml:1468 +#: book.translate.xml:1475 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>Alt</keycap> " "<keycap>Del</keycap></keycombo>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1474 +#: book.translate.xml:1481 msgid "" "Meaning the user should type the <keycap>Ctrl</keycap>, <keycap>Alt</" "keycap>, and <keycap>Del</keycap> keys at the same time." @@ -1132,14 +1132,14 @@ msgstr "" "keycap> 鍵。" #. (itstool) path: preface/para -#: book.translate.xml:1478 +#: book.translate.xml:1485 msgid "" "Keys that are meant to be typed in sequence will be separated with commas, " "for example:" msgstr "若要逐一按鍵,那麼會以逗號 (,) 來表示,像是:" #. (itstool) path: preface/para -#: book.translate.xml:1481 +#: book.translate.xml:1488 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>X</keycap> </" "keycombo>, <keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>S</" @@ -1147,7 +1147,7 @@ msgid "" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1490 +#: book.translate.xml:1497 msgid "" "Would mean that the user is expected to type the <keycap>Ctrl</keycap> and " "<keycap>X</keycap> keys simultaneously and then to type the <keycap>Ctrl</" @@ -1158,12 +1158,12 @@ msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-conv-examples -#: book.translate.xml:1496 +#: book.translate.xml:1503 msgid "Examples" msgstr "範例" #. (itstool) path: preface/para -#: book.translate.xml:1498 +#: book.translate.xml:1505 msgid "" "Examples starting with <filename>C:\\></filename> indicate a <trademark " "class=\"registered\">MS-DOS</trademark> command. Unless otherwise noted, " @@ -1178,13 +1178,13 @@ msgstr "" "Prompt)</quote> 視窗內執行。" #. (itstool) path: preface/screen -#: book.translate.xml:1504 +#: book.translate.xml:1511 #, no-wrap msgid "<prompt>E:\\></prompt> <userinput>tools\\fdimage floppies\\kern.flp A:</userinput>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1506 +#: book.translate.xml:1513 msgid "" "Examples starting with <prompt>#</prompt> indicate a command that must be " "invoked as the superuser in FreeBSD. You can login as <systemitem class=" @@ -1198,13 +1198,13 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來取得超級使用者權限。" #. (itstool) path: preface/screen -#: book.translate.xml:1512 +#: book.translate.xml:1519 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=kern.flp of=/dev/fd0</userinput>" msgstr "" #. (itstool) path: preface/para -#: book.translate.xml:1514 +#: book.translate.xml:1521 msgid "" "Examples starting with <prompt>%</prompt> indicate a command that should be " "invoked from a normal user account. Unless otherwise noted, C-shell syntax " @@ -1215,19 +1215,19 @@ msgstr "" "其他指令的意思。" #. (itstool) path: preface/screen -#: book.translate.xml:1519 +#: book.translate.xml:1526 #, no-wrap msgid "<prompt>%</prompt> <userinput>top</userinput>" msgstr "" #. (itstool) path: preface/bridgehead #. (itstool) id: book.translate.xml#preface-acknowledgements -#: book.translate.xml:1521 +#: book.translate.xml:1528 msgid "Acknowledgments" msgstr "銘謝" #. (itstool) path: preface/para -#: book.translate.xml:1523 +#: book.translate.xml:1530 msgid "" "The book you are holding represents the efforts of many hundreds of people " "around the world. Whether they sent in fixes for typos, or submitted " @@ -1237,7 +1237,7 @@ msgstr "" "糾正一些錯誤或提交完整的章節,所有的點滴貢獻都是非常寶貴有用的。" #. (itstool) path: preface/para -#: book.translate.xml:1528 +#: book.translate.xml:1535 msgid "" "Several companies have supported the development of this document by paying " "authors to work on it full-time, paying for publication, etc. In particular, " @@ -1263,43 +1263,43 @@ msgstr "" "手冊以使第三版印刷版本能夠出版的志工。" #. (itstool) path: part/title -#: book.translate.xml:1547 +#: book.translate.xml:1554 msgid "Getting Started" msgstr "入門" #. (itstool) path: partintro/para -#: book.translate.xml:1550 +#: book.translate.xml:1557 msgid "" "This part of the handbook is for users and administrators who are new to " "FreeBSD. These chapters:" msgstr "這部份是提供給初次使用 FreeBSD 的使用者和系統管理者。 這些章節包括:" #. (itstool) path: listitem/para -#: book.translate.xml:1555 +#: book.translate.xml:1562 msgid "Introduce FreeBSD." msgstr "介紹 FreeBSD 給您。" #. (itstool) path: listitem/para -#: book.translate.xml:1559 +#: book.translate.xml:1566 msgid "Guide readers through the installation process." msgstr "在安裝過程給您指引。" #. (itstool) path: listitem/para -#: book.translate.xml:1563 +#: book.translate.xml:1570 msgid "" "Teach <trademark class=\"registered\">UNIX</trademark> basics and " "fundamentals." msgstr "教您 <trademark class=\"registered\">UNIX</trademark> 的基礎及原理。" #. (itstool) path: listitem/para -#: book.translate.xml:1567 +#: book.translate.xml:1574 msgid "" "Show how to install the wealth of third party applications available for " "FreeBSD." msgstr "展示給您看如何安裝豐富的 FreeBSD 的應用軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:1572 +#: book.translate.xml:1579 msgid "" "Introduce X, the <trademark class=\"registered\">UNIX</trademark> windowing " "system, and detail how to configure a desktop environment that makes users " @@ -1309,7 +1309,7 @@ msgstr "" "細的桌面環境設定,讓您更有生產力。" #. (itstool) path: partintro/para -#: book.translate.xml:1578 +#: book.translate.xml:1585 msgid "" "The number of forward references in the text have been kept to a minimum so " "that this section can be read from front to back with minimal page flipping." @@ -1320,12 +1320,12 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: sect1/title #. (itstool) path: sect2/title -#: book.translate.xml:1592 book.translate.xml:23826 book.translate.xml:65535 +#: book.translate.xml:1599 book.translate.xml:23833 book.translate.xml:65535 msgid "Introduction" msgstr "簡介" #. (itstool) path: authorgroup/author -#: book.translate.xml:1595 book.translate.xml:2860 +#: book.translate.xml:1602 book.translate.xml:2867 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured, reorganized, and parts rewritten by </" @@ -1333,21 +1333,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:1607 book.translate.xml:2915 book.translate.xml:5527 -#: book.translate.xml:8916 book.translate.xml:10649 book.translate.xml:12839 -#: book.translate.xml:13968 book.translate.xml:15589 book.translate.xml:18072 -#: book.translate.xml:19340 book.translate.xml:22825 book.translate.xml:23738 -#: book.translate.xml:27837 book.translate.xml:29447 book.translate.xml:31215 -#: book.translate.xml:31949 book.translate.xml:35602 book.translate.xml:41534 -#: book.translate.xml:41741 book.translate.xml:43022 book.translate.xml:44062 -#: book.translate.xml:46211 book.translate.xml:46596 book.translate.xml:48799 -#: book.translate.xml:50467 book.translate.xml:52380 book.translate.xml:58109 -#: book.translate.xml:61796 +#: book.translate.xml:1614 book.translate.xml:2922 book.translate.xml:5534 +#: book.translate.xml:8923 book.translate.xml:10656 book.translate.xml:12846 +#: book.translate.xml:13975 book.translate.xml:15596 book.translate.xml:18079 +#: book.translate.xml:19347 book.translate.xml:22832 book.translate.xml:23745 +#: book.translate.xml:27844 book.translate.xml:29454 book.translate.xml:31222 +#: book.translate.xml:31956 book.translate.xml:35736 book.translate.xml:41668 +#: book.translate.xml:41875 book.translate.xml:43231 book.translate.xml:44271 +#: book.translate.xml:45832 book.translate.xml:46217 book.translate.xml:48420 +#: book.translate.xml:50088 book.translate.xml:52001 book.translate.xml:57731 +#: book.translate.xml:61418 msgid "Synopsis" msgstr "概述" #. (itstool) path: sect1/para -#: book.translate.xml:1609 +#: book.translate.xml:1616 msgid "" "Thank you for your interest in FreeBSD! The following chapter covers various " "aspects of the FreeBSD Project, such as its history, goals, development " @@ -1357,55 +1357,55 @@ msgstr "" "史、目標、開發模式等等。" #. (itstool) path: sect1/para -#: book.translate.xml:1613 book.translate.xml:2942 book.translate.xml:5534 -#: book.translate.xml:8928 book.translate.xml:10670 book.translate.xml:15602 -#: book.translate.xml:18098 book.translate.xml:19354 book.translate.xml:23751 -#: book.translate.xml:27909 book.translate.xml:29474 book.translate.xml:31239 -#: book.translate.xml:31957 book.translate.xml:35628 book.translate.xml:41566 -#: book.translate.xml:41749 book.translate.xml:44074 book.translate.xml:46249 -#: book.translate.xml:46607 book.translate.xml:48810 book.translate.xml:50478 -#: book.translate.xml:58164 book.translate.xml:61801 +#: book.translate.xml:1620 book.translate.xml:2949 book.translate.xml:5541 +#: book.translate.xml:8935 book.translate.xml:10677 book.translate.xml:15609 +#: book.translate.xml:18105 book.translate.xml:19361 book.translate.xml:23758 +#: book.translate.xml:27916 book.translate.xml:29481 book.translate.xml:31246 +#: book.translate.xml:31964 book.translate.xml:35762 book.translate.xml:41700 +#: book.translate.xml:41883 book.translate.xml:44283 book.translate.xml:45870 +#: book.translate.xml:46228 book.translate.xml:48431 book.translate.xml:50099 +#: book.translate.xml:57786 book.translate.xml:61423 msgid "After reading this chapter, you will know:" msgstr "讀完這章,您將了解︰" #. (itstool) path: listitem/para -#: book.translate.xml:1617 +#: book.translate.xml:1624 msgid "How FreeBSD relates to other computer operating systems." msgstr "FreeBSD 與其他作業系統之間的關係。" #. (itstool) path: listitem/para -#: book.translate.xml:1622 +#: book.translate.xml:1629 msgid "The history of the FreeBSD Project." msgstr "FreeBSD 計劃的歷史。" #. (itstool) path: listitem/para -#: book.translate.xml:1626 +#: book.translate.xml:1633 msgid "The goals of the FreeBSD Project." msgstr "FreeBSD 計劃的目標。" #. (itstool) path: listitem/para -#: book.translate.xml:1630 +#: book.translate.xml:1637 msgid "The basics of the FreeBSD open-source development model." msgstr "FreeBSD 開源開發模式的基礎概念。" #. (itstool) path: listitem/para -#: book.translate.xml:1635 +#: book.translate.xml:1642 msgid "And of course: where the name <quote>FreeBSD</quote> comes from." msgstr "當然囉,還有 <quote>FreeBSD</quote> 這名字的由來。" #. (itstool) path: sect1/title -#: book.translate.xml:1642 +#: book.translate.xml:1649 msgid "Welcome to FreeBSD!" msgstr "歡迎使用 FreeBSD!" #. (itstool) path: sect1/indexterm #. (itstool) path: para/indexterm -#: book.translate.xml:1644 book.translate.xml:1813 +#: book.translate.xml:1651 book.translate.xml:1820 msgid "<primary>4.4BSD-Lite</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:1646 +#: book.translate.xml:1653 msgid "" "FreeBSD is a 4.4BSD-Lite based operating system for Intel (x86 and " "<trademark class=\"registered\">Itanium</trademark>), AMD64, Sun <trademark " @@ -1428,22 +1428,22 @@ msgstr "" "對 FreeBSD 貢獻</link>。" #. (itstool) path: sect2/title -#: book.translate.xml:1656 +#: book.translate.xml:1663 msgid "What Can FreeBSD Do?" msgstr "FreeBSD 能做什麼?" #. (itstool) path: sect2/para -#: book.translate.xml:1658 +#: book.translate.xml:1665 msgid "FreeBSD has many noteworthy features. Some of these are:" msgstr "FreeBSD 提供給你許多先進功能。這些功能包括:" #. (itstool) path: para/indexterm -#: book.translate.xml:1664 +#: book.translate.xml:1671 msgid "<primary>preemptive multitasking</primary>" msgstr "<primary>先佔式多工</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1663 +#: book.translate.xml:1670 msgid "" "<emphasis>Preemptive multitasking</emphasis> <_:indexterm-1/> with dynamic " "priority adjustment to ensure smooth and fair sharing of the computer " @@ -1453,12 +1453,12 @@ msgstr "" "即使在系統負擔很重的情況下,程式執行平順並且應用程式與使用者公平地共享資源。" #. (itstool) path: para/indexterm -#: book.translate.xml:1673 +#: book.translate.xml:1680 msgid "<primary>multi-user facilities</primary>" msgstr "<primary>多人共用</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1673 +#: book.translate.xml:1680 msgid "" "<emphasis>Multi-user facilities</emphasis><_:indexterm-1/> which allow many " "people to use a FreeBSD system simultaneously for a variety of things. This " @@ -1473,12 +1473,12 @@ msgstr "" "保護系統不致被過度使用。" #. (itstool) path: para/indexterm -#: book.translate.xml:1686 +#: book.translate.xml:1693 msgid "<primary>TCP/IP networking</primary>" msgstr "TCP/IP 網路" #. (itstool) path: listitem/para -#: book.translate.xml:1685 +#: book.translate.xml:1692 msgid "" "Strong <emphasis>TCP/IP networking</emphasis><_:indexterm-1/> with support " "for industry standards such as SCTP, DHCP, NFS, NIS, PPP, SLIP, IPsec, and " @@ -1495,12 +1495,12 @@ msgstr "" "供 WWW、FTP、路由及防火牆 (安全性) 等必備服務。" #. (itstool) path: para/indexterm -#: book.translate.xml:1699 +#: book.translate.xml:1706 msgid "<primary>memory protection</primary>" msgstr "<primary>記憶體保護</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1699 +#: book.translate.xml:1706 msgid "" "<emphasis>Memory protection</emphasis><_:indexterm-1/> ensures that " "applications (or users) cannot interfere with each other. One application " @@ -1510,12 +1510,12 @@ msgstr "" "程式有不正常的運作,都不會影響其他程式的執行。" #. (itstool) path: para/indexterm -#: book.translate.xml:1708 book.translate.xml:1951 +#: book.translate.xml:1715 book.translate.xml:1958 msgid "<primary>X Window System</primary>" msgstr "<primary>X Window 系統</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1707 +#: book.translate.xml:1714 msgid "" "The industry standard <emphasis>X Window System</emphasis><_:indexterm-1/> " "(X11R7) can provide a graphical user interface (GUI) on any machine and " @@ -1527,32 +1527,32 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:1717 book.translate.xml:18077 +#: book.translate.xml:1724 book.translate.xml:18084 msgid "<primary>binary compatibility</primary> <secondary>Linux</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>Linux</secondary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1721 +#: book.translate.xml:1728 msgid "<primary>binary compatibility</primary> <secondary>SCO</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>SCO</secondary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1725 +#: book.translate.xml:1732 msgid "<primary>binary compatibility</primary> <secondary>SVR4</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>SVR4</secondary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1729 +#: book.translate.xml:1736 msgid "<primary>binary compatibility</primary> <secondary>BSD/OS</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>BSD/OS</secondary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1733 +#: book.translate.xml:1740 msgid "<primary>binary compatibility</primary> <secondary>NetBSD</secondary>" msgstr "<primary>Binary 相容性</primary> <secondary>NetBSD</secondary>" #. (itstool) path: listitem/para -#: book.translate.xml:1716 +#: book.translate.xml:1723 msgid "" "<_:indexterm-1/> <_:indexterm-2/> <_:indexterm-3/> <_:indexterm-4/> <_:" "indexterm-5/> <emphasis>Binary compatibility</emphasis> with many programs " @@ -1563,7 +1563,7 @@ msgstr "" "(如: Linux、SCO、SVR4、BSDI 和 NetBSD) 的可執行檔。" #. (itstool) path: listitem/para -#: book.translate.xml:1743 +#: book.translate.xml:1750 msgid "" "Thousands of <emphasis>ready-to-run</emphasis> applications are available " "from the FreeBSD <emphasis>ports</emphasis> and <emphasis>packages</" @@ -1574,7 +1574,7 @@ msgstr "" "取得。 不再需要費心到網路上到處搜尋所需要的軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:1751 +#: book.translate.xml:1758 msgid "" "Thousands of additional and <emphasis>easy-to-port</emphasis> applications " "are available on the Internet. FreeBSD is source code compatible with most " @@ -1587,12 +1587,12 @@ msgstr "" "行。" #. (itstool) path: para/indexterm -#: book.translate.xml:1760 +#: book.translate.xml:1767 msgid "<primary>virtual memory</primary>" msgstr "<primary>虛擬記憶體</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1759 +#: book.translate.xml:1766 msgid "" "Demand paged <emphasis>virtual memory</emphasis><_:indexterm-1/> and " "<quote>merged VM/buffer cache</quote> design efficiently satisfies " @@ -1604,12 +1604,12 @@ msgstr "" "維持與其他使用者的互動。" #. (itstool) path: para/indexterm -#: book.translate.xml:1769 +#: book.translate.xml:1776 msgid "<primary>Symmetric Multi-Processing (SMP)</primary>" msgstr "<primary>對稱多工處理 (SMP)</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1769 +#: book.translate.xml:1776 msgid "" "<emphasis>SMP</emphasis><_:indexterm-1/> support for machines with multiple " "CPUs." @@ -1618,17 +1618,17 @@ msgstr "" "多 CPU 的電腦系統。" #. (itstool) path: para/indexterm -#: book.translate.xml:1778 +#: book.translate.xml:1785 msgid "<primary>compilers</primary> <secondary>C</secondary>" msgstr "<primary>編譯器</primary> <secondary>C</secondary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1782 +#: book.translate.xml:1789 msgid "<primary>compilers</primary> <secondary>C++</secondary>" msgstr "<primary>編譯器</primary> <secondary>C++</secondary>" #. (itstool) path: listitem/para -#: book.translate.xml:1777 +#: book.translate.xml:1784 msgid "" "<_:indexterm-1/> <_:indexterm-2/> A full complement of <emphasis>C</" "emphasis> and <emphasis>C++</emphasis> development tools. Many additional " @@ -1640,12 +1640,12 @@ msgstr "" "進階研發的程式語言也收集在 Port 和套件集。" #. (itstool) path: para/indexterm -#: book.translate.xml:1795 +#: book.translate.xml:1802 msgid "<primary>source code</primary>" msgstr "<primary>原始碼</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1795 +#: book.translate.xml:1802 msgid "" "<emphasis>Source code</emphasis><_:indexterm-1/> for the entire system means " "you have the greatest degree of control over your environment. Why be locked " @@ -1657,22 +1657,22 @@ msgstr "" "廠商擺佈呢?" #. (itstool) path: listitem/para -#: book.translate.xml:1804 +#: book.translate.xml:1811 msgid "Extensive <emphasis>online documentation</emphasis>." msgstr "廣泛且豐富的 <emphasis>線上文件</emphasis>。" #. (itstool) path: listitem/para -#: book.translate.xml:1809 +#: book.translate.xml:1816 msgid "<emphasis>And many more!</emphasis>" msgstr "<emphasis>當然囉,還不止如此!</emphasis>" #. (itstool) path: para/indexterm -#: book.translate.xml:1816 +#: book.translate.xml:1823 msgid "<primary>Computer Systems Research Group (CSRG)</primary>" msgstr "<primary>電腦系統研究組 (CSRG)</primary>" #. (itstool) path: sect2/para -#: book.translate.xml:1813 +#: book.translate.xml:1820 msgid "" "FreeBSD is based on the 4.4BSD-Lite<_:indexterm-1/> release from Computer " "Systems Research Group (CSRG)<_:indexterm-2/> at the University of " @@ -1691,7 +1691,7 @@ msgstr "" "時,FreeBSD 已經具備這樣的特質,並具有其他地方沒有的尖端功能。" #. (itstool) path: sect2/para -#: book.translate.xml:1827 +#: book.translate.xml:1834 msgid "" "The applications to which FreeBSD can be put are truly limited only by your " "own imagination. From software development to factory automation, inventory " @@ -1711,7 +1711,7 @@ msgstr "" "軟體,而且出現的數目是與日俱增。" #. (itstool) path: sect2/para -#: book.translate.xml:1839 +#: book.translate.xml:1846 msgid "" "Because the source code for FreeBSD itself is generally available, the " "system can also be customized to an almost unheard of degree for special " @@ -1724,7 +1724,7 @@ msgstr "" "地被修改。 以下提供一些人們使用 FreeBSD 的例子:" #. (itstool) path: listitem/para -#: book.translate.xml:1849 +#: book.translate.xml:1856 msgid "" "<emphasis>Internet Services:</emphasis> The robust TCP/IP networking built " "into FreeBSD makes it an ideal platform for a variety of Internet services " @@ -1734,34 +1734,34 @@ msgstr "" "務 (如下例) 的理想平台:" #. (itstool) path: para/indexterm -#: book.translate.xml:1856 +#: book.translate.xml:1863 msgid "<primary>web servers</primary>" msgstr "<primary>網頁伺服器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1856 +#: book.translate.xml:1863 msgid "World Wide Web servers<_:indexterm-1/> (standard or secure [SSL])" msgstr "全球資訊網伺服器<_:indexterm-1/> (標準的或更安全的 [SSL])" #. (itstool) path: listitem/para -#: book.translate.xml:1863 +#: book.translate.xml:1870 msgid "IPv4 and IPv6 routing" msgstr "IPv4 及 IPv6 路由" #. (itstool) path: para/indexterm #. (itstool) path: chapter/indexterm -#: book.translate.xml:1867 book.translate.xml:58100 +#: book.translate.xml:1874 book.translate.xml:57722 msgid "<primary>firewall</primary>" msgstr "<primary>防火牆</primary>" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1870 book.translate.xml:61266 +#: book.translate.xml:1877 book.translate.xml:60888 msgid "<primary>NAT</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1867 +#: book.translate.xml:1874 msgid "" "Firewalls<_:indexterm-1/> and NAT<_:indexterm-2/> (<quote>IP masquerading</" "quote>) gateways" @@ -1770,38 +1770,38 @@ msgstr "" "閘。" #. (itstool) path: para/indexterm -#: book.translate.xml:1877 +#: book.translate.xml:1884 msgid "<primary>FTP servers</primary>" msgstr "<primary>FTP 伺服器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1877 +#: book.translate.xml:1884 msgid "FTP servers<_:indexterm-1/>" msgstr "檔案傳輸協定伺服器<_:indexterm-1/>" #. (itstool) path: para/indexterm -#: book.translate.xml:1884 +#: book.translate.xml:1891 msgid "<primary>electronic mail</primary> <see>email</see>" msgstr "<primary>電子郵件</primary> <see>email</see>" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:1888 book.translate.xml:50469 +#: book.translate.xml:1895 book.translate.xml:50090 msgid "<primary>email</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1883 +#: book.translate.xml:1890 msgid "<_:indexterm-1/> <_:indexterm-2/> Electronic Mail servers" msgstr "<_:indexterm-1/><_:indexterm-2/> 電子郵件伺服器" #. (itstool) path: listitem/para -#: book.translate.xml:1895 +#: book.translate.xml:1902 msgid "And more..." msgstr "還有更多..." #. (itstool) path: listitem/para -#: book.translate.xml:1901 +#: book.translate.xml:1908 msgid "" "<emphasis>Education:</emphasis> Are you a student of computer science or a " "related engineering field? There is no better way of learning about " @@ -1817,7 +1817,7 @@ msgstr "" "等可以免費地取得使用。" #. (itstool) path: listitem/para -#: book.translate.xml:1913 +#: book.translate.xml:1920 msgid "" "<emphasis>Research:</emphasis> With source code for the entire system " "available, FreeBSD is an excellent platform for research in operating " @@ -1832,17 +1832,17 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1925 book.translate.xml:62149 +#: book.translate.xml:1932 book.translate.xml:61771 msgid "<primary>router</primary>" msgstr "<primary>路由器</primary>" #. (itstool) path: para/indexterm -#: book.translate.xml:1927 +#: book.translate.xml:1934 msgid "<primary>DNS Server</primary>" msgstr "<primary>DNS 伺服器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1924 +#: book.translate.xml:1931 msgid "" "<emphasis>Networking:</emphasis> Need a new router?<_:indexterm-1/> A name " "server (DNS)?<_:indexterm-2/> A firewall to keep people out of your internal " @@ -1854,12 +1854,12 @@ msgstr "" "或 486 PC 變身成為絕佳的伺服器,甚至具有過濾封包的功能。" #. (itstool) path: para/indexterm -#: book.translate.xml:1938 +#: book.translate.xml:1945 msgid "<primary>embedded</primary>" msgstr "<primary>嵌入式</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1936 +#: book.translate.xml:1943 msgid "" "<emphasis>Embedded:</emphasis> FreeBSD makes an excellent platform to build " "embedded systems upon. <_:indexterm-1/> With support for the <trademark " @@ -1881,18 +1881,18 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1954 book.translate.xml:12039 +#: book.translate.xml:1961 book.translate.xml:12046 msgid "<primary>GNOME</primary>" msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:1957 book.translate.xml:12126 +#: book.translate.xml:1964 book.translate.xml:12133 msgid "<primary>KDE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:1950 +#: book.translate.xml:1957 msgid "" "<_:indexterm-1/> <_:indexterm-2/> <_:indexterm-3/> <emphasis>Desktop:</" "emphasis> FreeBSD makes a fine choice for an inexpensive desktop solution " @@ -1910,12 +1910,12 @@ msgstr "" "於管理。" #. (itstool) path: para/indexterm -#: book.translate.xml:1976 +#: book.translate.xml:1983 msgid "<primary>Compiler</primary>" msgstr "<primary>編譯器</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:1973 +#: book.translate.xml:1980 msgid "" "<emphasis>Software Development:</emphasis> The basic FreeBSD system comes " "with a full complement of development tools including a full C/C++<_:" @@ -1927,7 +1927,7 @@ msgstr "" "援需多其他語言。" #. (itstool) path: sect2/para -#: book.translate.xml:1985 +#: book.translate.xml:1992 msgid "" "FreeBSD is available to download free of charge, or can be obtained on " "either CD-ROM or DVD. Please see <xref linkend=\"mirrors\"/> for more " @@ -1937,19 +1937,19 @@ msgstr "" "linkend=\"mirrors\"/> 取得 FreeBSD。" #. (itstool) path: sect2/title -#: book.translate.xml:1992 +#: book.translate.xml:1999 msgid "Who Uses FreeBSD?" msgstr "誰在用 FreeBSD?" #. (itstool) path: sect2/indexterm -#: book.translate.xml:1994 +#: book.translate.xml:2001 msgid "" "<primary>users</primary> <secondary>large sites running FreeBSD</secondary>" msgstr "" "<primary>使用者</primary> <secondary>執行 FreeBSD 的大型站台</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:1999 +#: book.translate.xml:2006 msgid "" "FreeBSD's advanced features, proven security, predictable release cycle, and " "permissive license have led to its use as a platform for building many " @@ -1962,12 +1962,12 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:2009 book.translate.xml:56770 +#: book.translate.xml:2016 book.translate.xml:56391 msgid "<primary>Apache</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2008 +#: book.translate.xml:2015 msgid "" "<link xlink:href=\"http://www.apache.org/\">Apache</link> <_:indexterm-1/> - " "The Apache Software Foundation runs most of its public facing " @@ -1979,12 +1979,12 @@ msgstr "" "庫 (擁有超過 140 萬次提交) 都是在 FreeBSD 上運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2019 +#: book.translate.xml:2026 msgid "<primary>Apple</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2018 +#: book.translate.xml:2025 msgid "" "<link xlink:href=\"http://www.apple.com/\">Apple</link> <_:indexterm-1/> - " "OS X borrows heavily from FreeBSD for the network stack, virtual file " @@ -1996,12 +1996,12 @@ msgstr "" "Apple iOS 中含有從 FreeBSD 借鑒來的元素。" #. (itstool) path: para/indexterm -#: book.translate.xml:2029 +#: book.translate.xml:2036 msgid "<primary>Cisco</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2028 +#: book.translate.xml:2035 msgid "" "<link xlink:href=\"http://www.cisco.com/\">Cisco</link> <_:indexterm-1/> - " "IronPort network security and anti-spam appliances run a modified FreeBSD " @@ -2011,12 +2011,12 @@ msgstr "" "IronPort 網路安全及反垃圾郵件設備是採用改良後 FreeBSD 核心來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2037 +#: book.translate.xml:2044 msgid "<primary>Citrix</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2036 +#: book.translate.xml:2043 msgid "" "<link xlink:href=\"http://www.citrix.com/\">Citrix</link> <_:indexterm-1/> - " "The NetScaler line of security appliances provide layer 4-7 load balancing, " @@ -2028,12 +2028,12 @@ msgstr "" "牆、安全的 VPN 以及行動雲端網路存取,皆運用了 FreeBSD Shell 強大的功能。" #. (itstool) path: para/indexterm -#: book.translate.xml:2048 +#: book.translate.xml:2055 msgid "<primary>Dell KACE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2046 +#: book.translate.xml:2053 msgid "" "<link xlink:href=\"http://www.dell.com/KACE\">Dell KACE</link> <_:" "indexterm-1/> - The KACE system management appliances run FreeBSD because of " @@ -2045,12 +2045,12 @@ msgstr "" "擴展性以及支持其持續發展的社群。" #. (itstool) path: para/indexterm -#: book.translate.xml:2058 +#: book.translate.xml:2065 msgid "<primary>Experts Exchange</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2056 +#: book.translate.xml:2063 msgid "" "<link xlink:href=\"http://www.experts-exchange.com/\">Experts Exchange</" "link> <_:indexterm-1/> - All public facing web servers are powered by " @@ -2062,12 +2062,12 @@ msgstr "" "量使用 Jail 來隔離開發與測試環境,減少了虛擬化的額外開銷。" #. (itstool) path: para/indexterm -#: book.translate.xml:2068 +#: book.translate.xml:2075 msgid "<primary>Isilon</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2067 +#: book.translate.xml:2074 msgid "" "<link xlink:href=\"http://www.isilon.com/\">Isilon</link> <_:indexterm-1/> - " "Isilon's enterprise storage appliances are based on FreeBSD. The extremely " @@ -2080,30 +2080,30 @@ msgstr "" "整合了它們的智慧財產到整個核心,並專注打造自己的產品,而不是一個作業系統。" #. (itstool) path: para/indexterm -#: book.translate.xml:2080 +#: book.translate.xml:2087 msgid "<primary>iXsystems</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2079 +#: book.translate.xml:2086 msgid "" "<link xlink:href=\"http://www.ixsystems.com/\">iXsystems</link> <_:" "indexterm-1/> - The TrueNAS line of unified storage appliances is based on " "FreeBSD. In addition to their commercial products, iXsystems also manages " -"development of the open source projects PC-BSD and FreeNAS." +"development of the open source projects TrueOS and FreeNAS." msgstr "" "<link xlink:href=\"http://www.ixsystems.com/\">iXsystems</link> <_:" "indexterm-1/> - 統合存儲 (Unified Storage) 設備的 TrueNAS 產品線是以 FreeBSD " -"為基礎。除了該公司自己的商業產品外,iXsystems 也管理著 PC-BSD 和 FreeNAS 兩個" +"為基礎。除了該公司自己的商業產品外,iXsystems 也管理著 TrueOS 和 FreeNAS 兩個" "開源計劃的開發。" #. (itstool) path: para/indexterm -#: book.translate.xml:2090 +#: book.translate.xml:2097 msgid "<primary>Juniper</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2089 +#: book.translate.xml:2096 msgid "" "<link xlink:href=\"http://www.juniper.net/\">Juniper</link> <_:indexterm-1/> " "- The JunOS operating system that powers all Juniper networking gear " @@ -2121,12 +2121,12 @@ msgstr "" "功能從 FreeBSD 整合回 JunOS 的複雜性。" #. (itstool) path: para/indexterm -#: book.translate.xml:2105 +#: book.translate.xml:2112 msgid "<primary>McAfee</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2104 +#: book.translate.xml:2111 msgid "" "<link xlink:href=\"http://www.mcafee.com/\">McAfee</link> <_:indexterm-1/> - " "SecurOS, the basis of McAfee enterprise firewall products including " @@ -2137,12 +2137,12 @@ msgstr "" "FreeBSD 為基礎。" #. (itstool) path: para/indexterm -#: book.translate.xml:2114 +#: book.translate.xml:2121 msgid "<primary>NetApp</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2113 +#: book.translate.xml:2120 msgid "" "<link xlink:href=\"http://www.netapp.com/\">NetApp</link> <_:indexterm-1/> - " "The Data ONTAP GX line of storage appliances are based on FreeBSD. In " @@ -2154,12 +2154,12 @@ msgstr "" "了回 FreeBSD 許多功能,包括新 BSD 條款授權的 hypervisor, bhyve。" #. (itstool) path: para/indexterm -#: book.translate.xml:2124 book.translate.xml:2398 +#: book.translate.xml:2131 book.translate.xml:2405 msgid "<primary>Netflix</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2123 +#: book.translate.xml:2130 msgid "" "<link xlink:href=\"http://www.netflix.com/\">Netflix</link> <_:indexterm-1/> " "- The OpenConnect appliance that Netflix uses to stream movies to its " @@ -2174,15 +2174,16 @@ msgstr "" "Netflix 的 OpenConnect 設備負責了北美所有的網路流量 32% 以上。" #. (itstool) path: para/indexterm -#: book.translate.xml:2137 +#: book.translate.xml:2144 msgid "<primary>Sandvine</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2136 +#: book.translate.xml:2143 +#, fuzzy msgid "" "<link xlink:href=\"http://www.sandvine.com/\">Sandvine</link> <_:indexterm-1/" -"> - Sandvine uses FreeBSD as the basis of their high performance realtime " +"> - Sandvine uses FreeBSD as the basis of their high performance real-time " "network processing platforms that make up their intelligent network policy " "control products." msgstr "" @@ -2191,12 +2192,12 @@ msgstr "" "網路策略控制產品。" #. (itstool) path: para/indexterm -#: book.translate.xml:2147 +#: book.translate.xml:2154 msgid "<primary>Sony</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2146 +#: book.translate.xml:2153 msgid "" "<link xlink:href=\"http://www.sony.com/\">Sony</link> <_:indexterm-1/> - The " "PlayStation 4 gaming console runs a modified version of FreeBSD." @@ -2205,12 +2206,12 @@ msgstr "" "PlayStation 4 遊戲主機使用了修改過的 FreeBSD 版本來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2155 +#: book.translate.xml:2162 msgid "<primary>Sophos</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2154 +#: book.translate.xml:2161 msgid "" "<link xlink:href=\"http://www.sophos.com/\">Sophos</link> <_:indexterm-1/> - " "The Sophos Email Appliance product is based on a hardened FreeBSD and scans " @@ -2222,12 +2223,12 @@ msgstr "" "郵件中的垃圾郵件和病毒,同時也可監控出站郵件中的惡意軟體及敏感資訊。" #. (itstool) path: para/indexterm -#: book.translate.xml:2167 +#: book.translate.xml:2174 msgid "<primary>Spectra Logic</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2165 +#: book.translate.xml:2172 msgid "" "<link xlink:href=\"http://www.spectralogic.com/\">Spectra Logic</link> <_:" "indexterm-1/> - The nTier line of archive grade storage appliances run " @@ -2237,35 +2238,34 @@ msgstr "" "indexterm-1/> - 儲藏級儲存設備的 nTier 產品線以 FreeBSD 和 OpenZFS 來運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2175 +#: book.translate.xml:2182 msgid "<primary>Stormshield</primary>" msgstr "<primary>Stormshield</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2174 +#: book.translate.xml:2181 msgid "" "<link xlink:href=\"https://www.stormshield.eu\">Stormshield</link> <_:" "indexterm-1/> - Stormshield Network Security appliances are based on a " -"hardened version of FreeBSD. The BSD license allows us to integrate our own " -"intellectual property with the system while returning a great deal of " +"hardened version of FreeBSD. The BSD license allows them to integrate their " +"own intellectual property with the system while returning a great deal of " "interesting development to the community." msgstr "" "<link xlink:href=\"https://www.stormshield.eu\">Stormshield</link> <_:" "indexterm-1/> - Stormshield 網路安全設備使用了硬體化版本的 FreeBSD 做為基礎," -"BSD 授權條款讓我們我們的智慧財產與系統可以整合,並同時回饋大量有趣的發展給社" -"群。" +"BSD 授權條款讓他們可將其智慧財產與系統整合並同時回饋大量有趣的發展給社群。" #. (itstool) path: para/indexterm -#: book.translate.xml:2188 +#: book.translate.xml:2195 msgid "<primary>The Weather Channel</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2186 +#: book.translate.xml:2193 msgid "" "<link xlink:href=\"http://www.weather.com/\">The Weather Channel</link> <_:" "indexterm-1/> - The IntelliStar appliance that is installed at each local " -"cable providers headend and is responsible for injecting local weather " +"cable provider's headend and is responsible for injecting local weather " "forecasts into the cable TV network's programming runs FreeBSD." msgstr "" "<link xlink:href=\"http://www.weather.com/\">The Weather Channel</link> <_:" @@ -2273,12 +2273,12 @@ msgstr "" "視網路節目的 IntelliStar 設備便是使用 FreeBSD。" #. (itstool) path: para/indexterm -#: book.translate.xml:2199 +#: book.translate.xml:2206 msgid "<primary>Verisign</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2198 +#: book.translate.xml:2205 msgid "" "<link xlink:href=\"http://www.verisign.com/\">Verisign</link> <_:indexterm-1/" "> - Verisign is responsible for operating the .com and .net root domain " @@ -2292,12 +2292,12 @@ msgstr "" "點故障的問題。" #. (itstool) path: para/indexterm -#: book.translate.xml:2212 +#: book.translate.xml:2219 msgid "<primary>Voxer</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2211 +#: book.translate.xml:2218 msgid "" "<link xlink:href=\"http://www.voxer.com/\">Voxer</link> <_:indexterm-1/> - " "Voxer powers their mobile voice messaging platform with ZFS on FreeBSD. " @@ -2313,12 +2313,12 @@ msgstr "" "的 <acronym>ZFS</acronym> 也支援了 TRIM。" #. (itstool) path: para/indexterm -#: book.translate.xml:2226 +#: book.translate.xml:2233 msgid "<primary>WhatsApp</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2225 +#: book.translate.xml:2232 msgid "" "<link xlink:href=\"http://www.whatsapp.com/\">WhatsApp</link> <_:indexterm-1/" "> - When WhatsApp needed a platform that would be able to handle more than 1 " @@ -2330,12 +2330,12 @@ msgstr "" "台時,它們選擇了 FreeBSD。它們接著擴大規模到每台伺服器處理超過 250 萬的連線。" #. (itstool) path: para/indexterm -#: book.translate.xml:2238 +#: book.translate.xml:2245 msgid "<primary>Wheel Systems</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2236 +#: book.translate.xml:2243 msgid "" "<link xlink:href=\"http://wheelsystems.com/\">Wheel Systems</link> <_:" "indexterm-1/> - The FUDO security appliance allows enterprises to monitor, " @@ -2349,17 +2349,17 @@ msgstr "" "GELI, Capsicum, HAST 及 auditdistd。" #. (itstool) path: sect2/para -#: book.translate.xml:2250 +#: book.translate.xml:2257 msgid "FreeBSD has also spawned a number of related open source projects:" msgstr "FreeBSD 也催生了數個相關的開源計劃:" #. (itstool) path: para/indexterm -#: book.translate.xml:2257 +#: book.translate.xml:2264 msgid "<primary>BSD Router</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2255 +#: book.translate.xml:2262 msgid "" "<link xlink:href=\"http://bsdrp.net/\">BSD Router</link> <_:indexterm-1/> - " "A FreeBSD based replacement for large enterprise routers designed to run on " @@ -2369,12 +2369,12 @@ msgstr "" "以 FreeBSD 為基礎的大型企業路由器替代方案,專門設計為可在標準 PC 硬體上運作。" #. (itstool) path: para/indexterm -#: book.translate.xml:2266 +#: book.translate.xml:2273 msgid "<primary>FreeNAS</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2265 +#: book.translate.xml:2272 msgid "" "<link xlink:href=\"http://www.freenas.org/\">FreeNAS</link> <_:indexterm-1/> " "- A customized FreeBSD designed to be used as a network file server " @@ -2389,12 +2389,12 @@ msgstr "" "iSCSI,還有以 FreeBSD Jail 為基礎的套件系統。" #. (itstool) path: para/indexterm -#: book.translate.xml:2278 +#: book.translate.xml:2285 msgid "<primary>GhostBSD</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2277 +#: book.translate.xml:2284 msgid "" "<link xlink:href=\"http://www.ghostbsd.org/\">GhostBSD</link> <_:indexterm-1/" "> - A desktop oriented distribution of FreeBSD bundled with the Gnome " @@ -2404,12 +2404,12 @@ msgstr "" "> - 採用 Gnome 桌面環境的 FreeBSD 發行版。" #. (itstool) path: para/indexterm -#: book.translate.xml:2286 +#: book.translate.xml:2293 msgid "<primary>mfsBSD</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2285 +#: book.translate.xml:2292 msgid "" "<link xlink:href=\"http://mfsbsd.vx.sk/\">mfsBSD</link> <_:indexterm-1/> - A " "toolkit for building a FreeBSD system image that runs entirely from memory." @@ -2418,12 +2418,12 @@ msgstr "" "來建置可完全從記憶體執行 FreeBSD 系統映像檔工具。" #. (itstool) path: para/indexterm -#: book.translate.xml:2294 +#: book.translate.xml:2301 msgid "<primary>NAS4Free</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2293 +#: book.translate.xml:2300 msgid "" "<link xlink:href=\"http://www.nas4free.org/\">NAS4Free</link> <_:indexterm-1/" "> - A file server distribution based on FreeBSD with a PHP powered web " @@ -2433,12 +2433,12 @@ msgstr "" "> - 以 FreeBSD 及 PHP 驅動網頁介面為基礎的檔案伺服器。" #. (itstool) path: para/indexterm -#: book.translate.xml:2302 +#: book.translate.xml:2309 msgid "<primary>OPNsense</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2301 +#: book.translate.xml:2308 msgid "" "<link xlink:href=\"http://www.opnsense.org/\">OPNSense</link> <_:indexterm-1/" "> - OPNsense is an open source, easy-to-use and easy-to-build FreeBSD based " @@ -2453,29 +2453,29 @@ msgstr "" "功能集,同時擁有開放和安全的來源。" #. (itstool) path: para/indexterm -#: book.translate.xml:2314 -msgid "<primary>PC-BSD</primary>" -msgstr "" +#: book.translate.xml:2321 +msgid "<primary>TrueOS</primary>" +msgstr "<primary>TrueOS</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2313 +#: book.translate.xml:2320 msgid "" -"<link xlink:href=\"http://www.pcbsd.org/\">PC-BSD</link> <_:indexterm-1/> - " +"<link xlink:href=\"https://www.trueos.org\">TrueOS</link> <_:indexterm-1/> - " "A customized version of FreeBSD geared towards desktop users with graphical " "utilities to exposing the power of FreeBSD to all users. Designed to ease " "the transition of Windows and OS X users." msgstr "" -"<link xlink:href=\"http://www.pcbsd.org/\">PC-BSD</link> <_:indexterm-1/> - " +"<link xlink:href=\"http://www.pcbsd.org/\">TrueOS</link> <_:indexterm-1/> - " "訂製版本的 FreeBSD,裝備了給桌面使用者使用的圖型化工具來展示 FreeBSD 強大的功" "能給所有使用者,專門設計來緩解使用者在 Windows 與 OS X 間的過渡。" #. (itstool) path: para/indexterm -#: book.translate.xml:2324 +#: book.translate.xml:2331 msgid "<primary>pfSense</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2323 +#: book.translate.xml:2330 msgid "" "<link xlink:href=\"http://www.pfsense.org/\">pfSense</link> <_:indexterm-1/> " "- A firewall distribution based on FreeBSD with a huge array of features and " @@ -2485,12 +2485,12 @@ msgstr "" "- 以 FreeBSD 為基礎的防火牆發行版,支援巨型陣列及大規模 IPv6。" #. (itstool) path: para/indexterm -#: book.translate.xml:2333 +#: book.translate.xml:2340 msgid "<primary>ZRouter</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2332 +#: book.translate.xml:2339 msgid "" "<link xlink:href=\"http://zrouter.org/\">ZRouter</link> <_:indexterm-1/> - " "An open source alternative firmware for embedded devices based on FreeBSD. " @@ -2501,135 +2501,135 @@ msgstr "" "用韌體。" #. (itstool) path: sect2/para -#: book.translate.xml:2341 +#: book.translate.xml:2348 msgid "" "FreeBSD is also used to power some of the biggest sites on the Internet, " "including:" msgstr "FreeBSD 也同時被用來驅動一些網際網路上的大型網站,包括:" #. (itstool) path: para/indexterm -#: book.translate.xml:2347 +#: book.translate.xml:2354 msgid "<primary>Yahoo!</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2346 +#: book.translate.xml:2353 msgid "" "<link xlink:href=\"http://www.yahoo.com/\">Yahoo!</link> <_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2354 +#: book.translate.xml:2361 msgid "<primary>Yandex</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2353 +#: book.translate.xml:2360 msgid "" "<link xlink:href=\"http://www.yandex.ru/\">Yandex</link> <_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2361 +#: book.translate.xml:2368 msgid "<primary>Rambler</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2360 +#: book.translate.xml:2367 msgid "" "<link xlink:href=\"http://www.rambler.ru/\">Rambler</link> <_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2368 +#: book.translate.xml:2375 msgid "<primary>Sina</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2367 +#: book.translate.xml:2374 msgid "<link xlink:href=\"http://www.sina.com/\">Sina</link> <_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2376 +#: book.translate.xml:2383 msgid "<primary>Pair Networks</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2374 +#: book.translate.xml:2381 msgid "" "<link xlink:href=\"http://www.pair.com/\">Pair Networks</link> <_:" "indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2384 +#: book.translate.xml:2391 msgid "<primary>Sony Japan</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2382 +#: book.translate.xml:2389 msgid "" "<link xlink:href=\"http://www.sony.co.jp/\">Sony Japan</link> <_:indexterm-1/" ">" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2391 +#: book.translate.xml:2398 msgid "<primary>Netcraft</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2390 +#: book.translate.xml:2397 msgid "" "<link xlink:href=\"http://www.netcraft.com/\">Netcraft</link> <_:indexterm-1/" ">" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2397 +#: book.translate.xml:2404 msgid "" "<link xlink:href=\"https://signup.netflix.com/openconnect\">Netflix</link> " "<_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2405 +#: book.translate.xml:2412 msgid "<primary>NetEase</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2404 +#: book.translate.xml:2411 msgid "" "<link xlink:href=\"http://www.163.com/\">NetEase</link> <_:indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2412 +#: book.translate.xml:2419 msgid "<primary>Weathernews</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2411 +#: book.translate.xml:2418 msgid "" "<link xlink:href=\"http://www.weathernews.com/\">Weathernews</link> <_:" "indexterm-1/>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2420 +#: book.translate.xml:2427 msgid "<primary>TELEHOUSE America</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2418 +#: book.translate.xml:2425 msgid "" "<link xlink:href=\"http://www.telehouse.com/\">TELEHOUSE America</link> <_:" "indexterm-1/>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2427 +#: book.translate.xml:2434 msgid "" "and many more. Wikipedia also maintains a <link xlink:href=\"http://en." "wikipedia.org/wiki/List_of_products_based_on_FreeBSD\">list of products " @@ -2639,12 +2639,12 @@ msgstr "" "org/wiki/List_of_products_based_on_FreeBSD\">以 FreeBSD 為基礎的產品</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:2433 +#: book.translate.xml:2440 msgid "About the FreeBSD Project" msgstr "關於 FreeBSD 計劃" #. (itstool) path: sect1/para -#: book.translate.xml:2435 +#: book.translate.xml:2442 msgid "" "The following section provides some background information on the project, " "including a brief history, project goals, and the development model of the " @@ -2652,37 +2652,37 @@ msgid "" msgstr "接下來講的是 FreeBSD 計劃的背景,包含歷史、計劃目標以及開發模式。" #. (itstool) path: sect2/title -#: book.translate.xml:2440 +#: book.translate.xml:2447 msgid "A Brief History of FreeBSD" msgstr "FreeBSD 歷史簡介" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2442 +#: book.translate.xml:2449 msgid "<primary>386BSD Patchkit</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2443 +#: book.translate.xml:2450 msgid "<primary>Hubbard, Jordan</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2444 +#: book.translate.xml:2451 msgid "<primary>Williams, Nate</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2445 +#: book.translate.xml:2452 msgid "<primary>Grimes, Rod</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2446 +#: book.translate.xml:2453 msgid "<primary>FreeBSD Project</primary> <secondary>history</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2451 +#: book.translate.xml:2458 msgid "" "The FreeBSD Project had its genesis in the early part of 1993, partially as " "an outgrowth of the Unofficial 386BSDPatchkit by the patchkit's last 3 " @@ -2692,12 +2692,12 @@ msgstr "" "劃的最後三個協調人 Nate Williams,Rod Grimes 和 Jordan Hubbard。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2456 book.translate.xml:2496 +#: book.translate.xml:2463 book.translate.xml:2503 msgid "<primary>386BSD</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2457 +#: book.translate.xml:2464 msgid "" "The original goal was to produce an intermediate snapshot of 386BSD in order " "to fix a number of problems with it that the patchkit mechanism just was not " @@ -2709,12 +2709,12 @@ msgstr "" "386BSD Interim 便是這個原因。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2463 +#: book.translate.xml:2470 msgid "<primary>Jolitz, Bill</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2464 +#: book.translate.xml:2471 msgid "" "386BSD was Bill Jolitz's operating system, which had been up to that point " "suffering rather severely from almost a year's worth of neglect. As the " @@ -2730,17 +2730,17 @@ msgstr "" "出未來的打算,所以該計劃便突然面臨中止。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2474 +#: book.translate.xml:2481 msgid "<primary>Greenman, David</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2475 +#: book.translate.xml:2482 msgid "<primary>Walnut Creek CDROM</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2477 +#: book.translate.xml:2484 msgid "" "The trio thought that the goal remained worthwhile, even without Bill's " "support, and so they adopted the name \"FreeBSD\" coined by David Greenman. " @@ -2765,27 +2765,27 @@ msgstr "" "模。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2493 +#: book.translate.xml:2500 msgid "<primary>4.3BSD-Lite</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2494 book.translate.xml:2509 +#: book.translate.xml:2501 book.translate.xml:2516 msgid "<primary>Net/2</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2495 book.translate.xml:2508 +#: book.translate.xml:2502 book.translate.xml:2515 msgid "<primary>U.C. Berkeley</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2497 book.translate.xml:8883 +#: book.translate.xml:2504 book.translate.xml:8890 msgid "<primary>Free Software Foundation</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2499 +#: book.translate.xml:2506 msgid "" "The first CD-ROM (and general net-wide) distribution was FreeBSD 1.0, " "released in December of 1993. This was based on the 4.3BSD-Lite " @@ -2800,17 +2800,17 @@ msgstr "" "還算成功,我們又接著於 1994 年 5 月發行了相當成功的 FreeBSD 1.1。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2507 +#: book.translate.xml:2514 msgid "<primary>Novell</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2510 +#: book.translate.xml:2517 msgid "<primary>AT&T</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2511 +#: book.translate.xml:2518 msgid "" "Around this time, some rather unexpected storm clouds formed on the horizon " "as Novell and U.C. Berkeley settled their long-running lawsuit over the " @@ -2835,7 +2835,7 @@ msgstr "" "最後一次發行,也就是 FreeBSD 1.1.5.1。" #. (itstool) path: sect2/para -#: book.translate.xml:2528 +#: book.translate.xml:2535 msgid "" "FreeBSD then set about the arduous task of literally re-inventing itself " "from a completely new and rather incomplete set of 4.4BSD-Lite bits. The " @@ -2857,7 +2857,7 @@ msgstr "" "之於 1995 年 6 月又發行了更容易安裝,更好的 FreeBSD 2.0.5。" #. (itstool) path: sect2/para -#: book.translate.xml:2542 +#: book.translate.xml:2549 msgid "" "Since that time, FreeBSD has made a series of releases each time improving " "the stability, speed, and feature set of the previous version." @@ -2866,7 +2866,7 @@ msgstr "" "的發佈版本。" #. (itstool) path: sect2/para -#: book.translate.xml:2546 +#: book.translate.xml:2553 msgid "" "For now, long-term development projects continue to take place in the 10.X-" "CURRENT (trunk) branch, and snapshot releases of 10.X are continually made " @@ -2878,24 +2878,24 @@ msgstr "" "snapshots/\">快照伺服器</link> 取得。" #. (itstool) path: info/title -#: book.translate.xml:2554 +#: book.translate.xml:2561 msgid "FreeBSD Project Goals" msgstr "FreeBSD 計劃目標" #. (itstool) path: authorgroup/author -#: book.translate.xml:2557 +#: book.translate.xml:2564 msgid "" "<personname> <firstname>Jordan</firstname> <surname>Hubbard</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2567 +#: book.translate.xml:2574 msgid "<primary>FreeBSD Project</primary> <secondary>goals</secondary>" msgstr "<primary>FreeBSD 計劃</primary> <secondary>目標</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:2571 +#: book.translate.xml:2578 msgid "" "The goals of the FreeBSD Project are to provide software that may be used " "for any purpose and without strings attached. Many of us have a significant " @@ -2915,22 +2915,22 @@ msgstr "" "是我們所倡導的一個目標。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2583 +#: book.translate.xml:2590 msgid "<primary>GNU General Public License (GPL)</primary>" msgstr "<primary>GNU 通用公共授權條款 (GPL)</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2586 +#: book.translate.xml:2593 msgid "<primary>GNU Lesser General Public License (LGPL)</primary>" msgstr "<primary>GNU 較寬鬆通用公共授權條款 (LGPL)</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2589 +#: book.translate.xml:2596 msgid "<primary>BSD Copyright</primary>" msgstr "<primary>BSD 版權</primary>" #. (itstool) path: sect2/para -#: book.translate.xml:2590 +#: book.translate.xml:2597 msgid "" "That code in our source tree which falls under the GNU General Public " "License (GPL) or Library General Public License (LGPL) comes with slightly " @@ -2946,25 +2946,25 @@ msgstr "" "果可以選擇的話, 我們會比較喜歡使用限制相對更寬鬆的 BSD 版權來發佈軟體。" #. (itstool) path: info/title -#: book.translate.xml:2602 +#: book.translate.xml:2609 msgid "The FreeBSD Development Model" msgstr "FreeBSD 開發模式" #. (itstool) path: authorgroup/author -#: book.translate.xml:2605 +#: book.translate.xml:2612 msgid "" "<personname> <firstname>Satoshi</firstname> <surname>Asami</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:2615 +#: book.translate.xml:2622 msgid "" "<primary>FreeBSD Project</primary> <secondary>development model</secondary>" msgstr "<primary>FreeBSD 專案</primary> <secondary>開發模式</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:2620 +#: book.translate.xml:2627 msgid "" "The development of FreeBSD is a very open and flexible process, being " "literally built from the contributions of thousands of people around the " @@ -2991,7 +2991,7 @@ msgstr "" "link> 對那些希望了解我們進度的人也是相當有用的。" #. (itstool) path: sect2/para -#: book.translate.xml:2633 +#: book.translate.xml:2640 msgid "" "Useful things to know about the FreeBSD Project and its development process, " "whether working independently or in close cooperation:" @@ -3000,44 +3000,43 @@ msgstr "" "錯的︰" #. (itstool) path: varlistentry/term -#: book.translate.xml:2639 +#: book.translate.xml:2646 msgid "The SVN repositories<anchor xml:id=\"development-cvs-repository\"/>" msgstr "SVN 檔案庫<anchor xml:id=\"development-cvs-repository\"/>" #. (itstool) path: para/indexterm -#: book.translate.xml:2643 +#: book.translate.xml:2650 msgid "<primary>CVS</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2647 +#: book.translate.xml:2654 msgid "<primary>CVS Repository</primary>" msgstr "<primary>CVS 檔案庫</primary>" #. (itstool) path: para/indexterm -#: book.translate.xml:2651 +#: book.translate.xml:2658 msgid "<primary>Concurrent Versions System</primary> <see>CVS</see>" msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:2656 book.translate.xml:45130 book.translate.xml:45170 -#: book.translate.xml:65535 +#: book.translate.xml:2663 book.translate.xml:65535 msgid "<primary>Subversion</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2660 +#: book.translate.xml:2667 msgid "<primary>Subversion Repository</primary>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:2664 +#: book.translate.xml:2671 msgid "<primary>SVN</primary> <see>Subversion</see>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:2642 +#: book.translate.xml:2649 msgid "" "<_:indexterm-1/> <_:indexterm-2/> <_:indexterm-3/> <_:indexterm-4/> <_:" "indexterm-5/> <_:indexterm-6/> For several years, the central source tree " @@ -3070,17 +3069,17 @@ msgstr "" "\"ports-using\">使用 Port 套件集</link> 了解如何取得 FreeBSD Port 套件集。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2691 +#: book.translate.xml:2698 msgid "The committers list<anchor xml:id=\"development-committers\"/>" msgstr "提交者名單<anchor xml:id=\"development-committers\"/>" #. (itstool) path: para/indexterm -#: book.translate.xml:2695 +#: book.translate.xml:2702 msgid "<primary>committers</primary>" msgstr "<primary>提交者</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2694 +#: book.translate.xml:2701 msgid "" "The <firstterm>committers</firstterm> <_:indexterm-1/> are the people who " "have <emphasis>write</emphasis> access to the Subversion tree, and are " @@ -3101,17 +3100,17 @@ msgstr "" "誤 (Bug)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:2711 +#: book.translate.xml:2718 msgid "The FreeBSD core team<anchor xml:id=\"development-core\"/>" msgstr "FreeBSD 核心團隊<anchor xml:id=\"development-core\"/>" #. (itstool) path: para/indexterm -#: book.translate.xml:2715 +#: book.translate.xml:2722 msgid "<primary>core team</primary>" msgstr "<primary>核心團隊</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2714 +#: book.translate.xml:2721 msgid "" "The <firstterm>FreeBSD core team</firstterm> <_:indexterm-1/> would be " "equivalent to the board of directors if the FreeBSD Project were a company. " @@ -3129,7 +3128,7 @@ msgstr "" "2014 年 7 月從提交者候選人之中選出來的,這個選舉每兩年會舉辦一次。" #. (itstool) path: note/para -#: book.translate.xml:2730 +#: book.translate.xml:2737 msgid "" "Like most developers, most members of the core team are also volunteers when " "it comes to FreeBSD development and do not benefit from the project " @@ -3146,12 +3145,12 @@ msgstr "" "而選擇投入 FreeBSD 開發的熱血有為者才對!" #. (itstool) path: varlistentry/term -#: book.translate.xml:2745 +#: book.translate.xml:2752 msgid "Outside contributors" msgstr "非官方貢獻者" #. (itstool) path: listitem/para -#: book.translate.xml:2748 +#: book.translate.xml:2755 msgid "" "Last, but definitely not least, the largest group of developers are the " "users themselves who provide feedback and bug fixes to us on an almost " @@ -3169,12 +3168,12 @@ msgstr "" "linkend=\"eresources\"/> 以瞭解各式不同的 FreeBSD 郵遞論壇。" #. (itstool) path: para/indexterm -#: book.translate.xml:2759 +#: book.translate.xml:2766 msgid "<primary>contributors</primary>" msgstr "<primary>貢獻者</primary>" #. (itstool) path: listitem/para -#: book.translate.xml:2757 +#: book.translate.xml:2764 msgid "" "<citetitle><link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/" "contributors/article.html\">The FreeBSD Contributors List</link></citetitle> " @@ -3187,7 +3186,7 @@ msgstr "" "貢獻 FreeBSD 一些回饋呢?" #. (itstool) path: listitem/para -#: book.translate.xml:2764 +#: book.translate.xml:2771 msgid "" "Providing code is not the only way of contributing to the project; for a " "more complete list of things that need doing, please refer to the <link " @@ -3197,7 +3196,7 @@ msgstr "" "<link xlink:href=\"@@URL_RELPREFIX@@/index.html\">FreeBSD 計畫網站</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:2772 +#: book.translate.xml:2779 msgid "" "In summary, our development model is organized as a loose set of concentric " "circles. The centralized model is designed for the convenience of the " @@ -3214,7 +3213,7 @@ msgstr "" "用 — 而這個開發模式對我們要完成這個目標來說運作的非常好。" #. (itstool) path: sect2/para -#: book.translate.xml:2782 +#: book.translate.xml:2789 msgid "" "All we ask of those who would join us as FreeBSD developers is some of the " "same dedication its current people have to its continued success!" @@ -3223,12 +3222,12 @@ msgstr "" "保繼續成功!" #. (itstool) path: sect2/title -#: book.translate.xml:2788 +#: book.translate.xml:2795 msgid "Third Party Programs" msgstr "第三方程式" #. (itstool) path: sect2/para -#: book.translate.xml:2790 +#: book.translate.xml:2797 msgid "" "In addition to the base distributions, FreeBSD offers a ported software " "collection with thousands of commonly sought-after programs. At the time of " @@ -3256,12 +3255,12 @@ msgstr "" "更多有關套件與 Port 的資訊可於 <xref linkend=\"ports\"/> 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:2811 +#: book.translate.xml:2818 msgid "Additional Documentation" msgstr "其他文件" #. (itstool) path: sect2/para -#: book.translate.xml:2813 +#: book.translate.xml:2820 msgid "" "All recent FreeBSD versions provide an option in the installer (either " "<citerefentry><refentrytitle>sysinstall</refentrytitle><manvolnum>8</" @@ -3283,12 +3282,12 @@ msgstr "" "已安裝在本機的操作手冊:" #. (itstool) path: varlistentry/term -#: book.translate.xml:2825 +#: book.translate.xml:2832 msgid "The FreeBSD Handbook" msgstr "FreeBSD 使用手冊" #. (itstool) path: listitem/para -#: book.translate.xml:2828 +#: book.translate.xml:2835 msgid "" "<link xlink:href=\"file://localhost/usr/local/share/doc/freebsd/handbook/" "index.html\"><filename>/usr/local/share/doc/freebsd/handbook/index.html</" @@ -3296,12 +3295,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:2833 +#: book.translate.xml:2840 msgid "The FreeBSD FAQ" msgstr "FreeBSD 常見問答集" #. (itstool) path: listitem/para -#: book.translate.xml:2836 +#: book.translate.xml:2843 msgid "" "<link xlink:href=\"file://localhost/usr/local/share/doc/freebsd/faq/index." "html\"><filename>/usr/local/share/doc/freebsd/faq/index.html</filename></" @@ -3309,7 +3308,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:2841 +#: book.translate.xml:2848 msgid "" "You can also view the master (and most frequently updated) copies at <uri " "xlink:href=\"http://www.FreeBSD.org/\">http://www.FreeBSD.org/</uri>." @@ -3318,38 +3317,38 @@ msgstr "" "\"http://www.FreeBSD.org/\">http://www.FreeBSD.org/</uri>。" #. (itstool) path: info/title -#: book.translate.xml:2857 +#: book.translate.xml:2864 msgid "Installing FreeBSD" msgstr "安裝 FreeBSD" #. (itstool) path: authorgroup/author -#: book.translate.xml:2885 +#: book.translate.xml:2892 msgid "" "<personname> <firstname>Gavin</firstname> <surname>Atkinson</surname> </" "personname> <contrib>Updated for bsdinstall by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:2894 +#: book.translate.xml:2901 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:2903 +#: book.translate.xml:2910 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>Updated for root-on-ZFS by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:2917 +#: book.translate.xml:2924 msgid "<primary>installation</primary>" msgstr "<primary>安裝</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:2919 +#: book.translate.xml:2926 msgid "" "Beginning with FreeBSD 9.0-RELEASE, FreeBSD provides an easy to use, text-" "based installation program named <application>bsdinstall</application>. This " @@ -3361,7 +3360,7 @@ msgstr "" "<application>bsdinstall</application> 來安裝 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:2925 +#: book.translate.xml:2932 msgid "" "In general, the installation instructions in this chapter are written for " "the <trademark>i386</trademark> and <acronym>AMD64</acronym> architectures. " @@ -3376,38 +3375,38 @@ msgstr "" "著來做。" #. (itstool) path: note/para -#: book.translate.xml:2934 +#: book.translate.xml:2941 msgid "" "Users who prefer to install FreeBSD using a graphical installer may be " "interested in <application>pc-sysinstall</application>, the installer used " -"by the PC-BSD Project. It can be used to install either a graphical desktop " -"(PC-BSD) or a command line version of FreeBSD. Refer to the PC-BSD Users " -"Handbook for details (<link xlink:href=\"http://wiki.pcbsd.org/index.php/" -"Colophon\">http://wiki.pcbsd.org/index.php/Colophon</link>)." +"by the TrueOS Project. It can be used to install either a graphical desktop " +"(TrueOS) or a command line version of FreeBSD. Refer to the TrueOS Users " +"Handbook for details (<link xlink:href=\"https://www.trueos.org/handbook/" +"trueos.html\">https://www.trueos.org/handbook/trueos.html</link>)." msgstr "" "喜歡用圖形化安裝程式安裝 FreeBSD 的使用者, 可能會對 <application>pc-" -"sysinstall</application> 有興趣,這是 PC-BSD 計畫所使用的。 他可以用來安裝圖" -"形化桌面 (PC-BSD) 或是指令列版本的 FreeBSD。 細節請參考 PC-BSD 使用者 " -"Handbook (<link xlink:href=\"http://wiki.pcbsd.org/index.php/Colophon" -"\">http://wiki.pcbsd.org/index.php/Colophon</link>)。" +"sysinstall</application> 有興趣,這是 TrueOS 計畫所使用的。 他可以用來安裝圖" +"形化桌面 (TrueOS) 或是指令列版本的 FreeBSD。 細節請參考 TrueOS 使用者 " +"Handbook (<link xlink:href=\"https://www.trueos.org/handbook/trueos.html" +"\">https://www.trueos.org/handbook/trueos.html</link>)。" #. (itstool) path: listitem/para -#: book.translate.xml:2946 +#: book.translate.xml:2953 msgid "The minimum hardware requirements and FreeBSD supported architectures." msgstr "最低的硬體需求和 FreeBSD 支援的架構。" #. (itstool) path: listitem/para -#: book.translate.xml:2951 +#: book.translate.xml:2958 msgid "How to create the FreeBSD installation media." msgstr "如何建立 FreeBSD 的安裝媒體。" #. (itstool) path: listitem/para -#: book.translate.xml:2955 +#: book.translate.xml:2962 msgid "How to start <application>bsdinstall</application>." msgstr "如何開始執行 <application>bsdinstall</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:2960 +#: book.translate.xml:2967 msgid "" "The questions <application>bsdinstall</application> will ask, what they " "mean, and how to answer them." @@ -3416,29 +3415,29 @@ msgstr "" "回答。" #. (itstool) path: listitem/para -#: book.translate.xml:2965 +#: book.translate.xml:2972 msgid "How to troubleshoot a failed installation." msgstr "安裝失敗時如何做故障排除。" #. (itstool) path: listitem/para -#: book.translate.xml:2969 +#: book.translate.xml:2976 msgid "" "How to access a live version of FreeBSD before committing to an installation." msgstr "如何在正式安裝前使用 live 版本的 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:2974 book.translate.xml:10699 book.translate.xml:14031 -#: book.translate.xml:18122 book.translate.xml:19387 book.translate.xml:23811 -#: book.translate.xml:29510 book.translate.xml:31257 book.translate.xml:32009 -#: book.translate.xml:35653 book.translate.xml:41584 book.translate.xml:41779 -#: book.translate.xml:43082 book.translate.xml:44105 book.translate.xml:46266 -#: book.translate.xml:46625 book.translate.xml:48836 book.translate.xml:50542 -#: book.translate.xml:58192 book.translate.xml:61843 +#: book.translate.xml:2981 book.translate.xml:10706 book.translate.xml:14038 +#: book.translate.xml:18129 book.translate.xml:19394 book.translate.xml:23818 +#: book.translate.xml:29517 book.translate.xml:31264 book.translate.xml:32016 +#: book.translate.xml:35787 book.translate.xml:41718 book.translate.xml:41913 +#: book.translate.xml:43291 book.translate.xml:44314 book.translate.xml:45887 +#: book.translate.xml:46246 book.translate.xml:48457 book.translate.xml:50163 +#: book.translate.xml:57814 book.translate.xml:61465 msgid "Before reading this chapter, you should:" msgstr "在開始閱讀這章之前,您需要︰" #. (itstool) path: listitem/para -#: book.translate.xml:2978 +#: book.translate.xml:2985 msgid "" "Read the supported hardware list that shipped with the version of FreeBSD to " "be installed and verify that the system's hardware is supported." @@ -3446,12 +3445,12 @@ msgstr "" "閱讀即將安裝的 FreeBSD 版本所附帶的硬體支援清單,並核對系統的硬體是否有支援。" #. (itstool) path: sect1/title -#: book.translate.xml:2986 +#: book.translate.xml:2993 msgid "Minimum Hardware Requirements" msgstr "最低硬體需求" #. (itstool) path: sect1/para -#: book.translate.xml:2988 +#: book.translate.xml:2995 msgid "" "The hardware requirements to install FreeBSD vary by architecture. Hardware " "architectures and devices supported by a FreeBSD release are listed on the " @@ -3467,7 +3466,7 @@ msgstr "" "也有建議如何正確的選擇在不同架構使用的映像檔。" #. (itstool) path: sect1/para -#: book.translate.xml:2995 +#: book.translate.xml:3002 msgid "" "A FreeBSD installation requires a minimum of 96 MB of <acronym>RAM</acronym> " "and 1.5 GB of free hard drive space. However, such small amounts of memory " @@ -3480,17 +3479,17 @@ msgstr "" "途的桌面系統會需要更多的資源,2-4 GB RAM 與至少 8 GB 的硬碟空間是不錯的起點。" #. (itstool) path: sect1/para -#: book.translate.xml:3003 +#: book.translate.xml:3010 msgid "These are the processor requirements for each architecture:" msgstr "每一種架構的處理器需求概述如下:" #. (itstool) path: varlistentry/term -#: book.translate.xml:3008 +#: book.translate.xml:3015 msgid "amd64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3010 +#: book.translate.xml:3017 msgid "" "This is the most common desktop and laptop processor type, used in most " "modern systems. <trademark class=\"registered\">Intel</trademark> calls it " @@ -3502,7 +3501,7 @@ msgstr "" "製造商則稱該類型為 <acronym>x86-64</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:3015 +#: book.translate.xml:3022 msgid "" "Examples of amd64 compatible processsors include: <trademark>AMD Athlon</" "trademark>64, <trademark>AMD Opteron</trademark>, multi-core <trademark " @@ -3517,17 +3516,17 @@ msgstr "" "器。" #. (itstool) path: varlistentry/term -#: book.translate.xml:3023 +#: book.translate.xml:3030 msgid "i386" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3025 +#: book.translate.xml:3032 msgid "Older desktops and laptops often use this 32-bit, x86 architecture." msgstr "舊型的桌面電腦與筆記型電腦常使用此 32-bit, x86 架構。" #. (itstool) path: listitem/para -#: book.translate.xml:3028 +#: book.translate.xml:3035 msgid "" "Almost all i386-compatible processors with a floating point unit are " "supported. All <trademark class=\"registered\">Intel</trademark> processors " @@ -3537,7 +3536,7 @@ msgstr "" "\"registered\">Intel</trademark> 486 或是更高階的處理器也有支援。" #. (itstool) path: listitem/para -#: book.translate.xml:3032 +#: book.translate.xml:3039 msgid "" "FreeBSD will take advantage of Physical Address Extensions (<acronym>PAE</" "acronym>) support on <acronym>CPU</acronym>s with this feature. A kernel " @@ -3555,12 +3554,12 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:3044 +#: book.translate.xml:3051 msgid "ia64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3046 +#: book.translate.xml:3053 msgid "" "Currently supported processors are the <trademark class=\"registered" "\">Itanium</trademark> and the <trademark class=\"registered\">Itanium</" @@ -3578,12 +3577,12 @@ msgstr "" "<acronym>SMP</acronym>) 的設定都有支援。" #. (itstool) path: varlistentry/term -#: book.translate.xml:3056 +#: book.translate.xml:3063 msgid "pc98" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3058 +#: book.translate.xml:3065 msgid "" "NEC PC-9801/9821 series with almost all i386-compatible processors, " "including 80486, <trademark class=\"registered\">Pentium</trademark>, " @@ -3601,7 +3600,7 @@ msgstr "" "FC-9801/9821 及 NEC SV-98 系列也有支援。" #. (itstool) path: listitem/para -#: book.translate.xml:3067 +#: book.translate.xml:3074 msgid "" "High-resolution mode is not supported. NEC PC-98XA/XL/RL/XL^2, and NEC PC-" "H98 series are supported in normal (PC-9801 compatible) mode only. The " @@ -3615,12 +3614,12 @@ msgstr "" "流排不支援。" #. (itstool) path: varlistentry/term -#: book.translate.xml:3078 +#: book.translate.xml:3085 msgid "powerpc" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3080 +#: book.translate.xml:3087 msgid "" "All New World <acronym>ROM</acronym> <trademark class=\"registered\">Apple</" "trademark> <trademark class=\"registered\">Mac</trademark> systems with " @@ -3633,17 +3632,17 @@ msgstr "" "<acronym>CPU</acronym> 的機器都有支援。" #. (itstool) path: listitem/para -#: book.translate.xml:3085 +#: book.translate.xml:3092 msgid "A 32-bit kernel can only use the first 2 GB of <acronym>RAM</acronym>." msgstr "32 位元的核心只能使用前 2 GB 的 <acronym>RAM</acronym>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:3091 +#: book.translate.xml:3098 msgid "sparc64" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:3093 +#: book.translate.xml:3100 msgid "" "Systems supported by FreeBSD/sparc64 are listed at the <link xlink:href=" "\"@@URL_RELPREFIX@@/platforms/sparc.html\">FreeBSD/sparc64 Project</link>." @@ -3652,7 +3651,7 @@ msgstr "" "platforms/sparc.html\">FreeBSD/sparc64 計劃</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:3097 +#: book.translate.xml:3104 msgid "" "<acronym>SMP</acronym> is supported on all systems with more than 1 " "processor. A dedicated disk is required as it is not possible to share a " @@ -3662,12 +3661,12 @@ msgstr "" "因為此時無法和其他作業系統共用磁碟。" #. (itstool) path: sect1/title -#: book.translate.xml:3107 +#: book.translate.xml:3114 msgid "Pre-Installation Tasks" msgstr "安裝前準備工作" #. (itstool) path: sect1/para -#: book.translate.xml:3109 +#: book.translate.xml:3116 msgid "" "Once it has been determined that the system meets the minimum hardware " "requirements for installing FreeBSD, the installation file should be " @@ -3679,12 +3678,12 @@ msgstr "" "體。 做這些之前,先檢查以下核對清單的項目是否準備好了:" #. (itstool) path: step/title -#: book.translate.xml:3118 +#: book.translate.xml:3125 msgid "Back Up Important Data" msgstr "備份重要資料" #. (itstool) path: step/para -#: book.translate.xml:3120 +#: book.translate.xml:3127 msgid "" "Before installing any operating system, <emphasis>always</emphasis> backup " "all important data first. Do not store the backup on the system being " @@ -3701,12 +3700,12 @@ msgstr "" "面的資料都會遺失。" #. (itstool) path: step/title -#: book.translate.xml:3132 +#: book.translate.xml:3139 msgid "Decide Where to Install FreeBSD" msgstr "決定 FreeBSD 安裝在哪裡" #. (itstool) path: step/para -#: book.translate.xml:3134 +#: book.translate.xml:3141 msgid "" "If FreeBSD will be the only operating system installed, this step can be " "skipped. But if FreeBSD will share the disk with another operating system, " @@ -3717,7 +3716,7 @@ msgstr "" "是哪個分割區 (Partition)。" #. (itstool) path: step/para -#: book.translate.xml:3139 +#: book.translate.xml:3146 msgid "" "In the i386 and amd64 architectures, disks can be divided into multiple " "partitions using one of two partitioning schemes. A traditional " @@ -3743,7 +3742,7 @@ msgstr "" "個分割區,不再需要使用邏輯分割區。" #. (itstool) path: warning/para -#: book.translate.xml:3157 +#: book.translate.xml:3164 msgid "" "Some older operating systems, like <trademark class=\"registered\">Windows</" "trademark> XP, are not compatible with the <acronym>GPT</acronym> partition " @@ -3755,7 +3754,7 @@ msgstr "" "這類作業系統共用一個磁碟,則需要用 <acronym>MBR</acronym> 分割表格式。" #. (itstool) path: step/para -#: book.translate.xml:3164 +#: book.translate.xml:3171 msgid "" "The FreeBSD boot loader requires either a primary or <acronym>GPT</acronym> " "partition. If all of the primary or <acronym>GPT</acronym> partitions are " @@ -3769,7 +3768,7 @@ msgstr "" "工具來縮小現有的分割區,並使用釋放出來的空間建立新分割區。" #. (itstool) path: step/para -#: book.translate.xml:3172 +#: book.translate.xml:3179 msgid "" "A variety of free and commercial partition resizing tools are listed at " "<link xlink:href=\"http://en.wikipedia.org/wiki/" @@ -3790,7 +3789,7 @@ msgstr "" "GParted 同時也被許多 Linux Live <acronym>CD</acronym> 發行版所收錄。" #. (itstool) path: warning/para -#: book.translate.xml:3182 +#: book.translate.xml:3189 msgid "" "When used properly, disk shrinking utilities can safely create space for " "creating a new partition. Since the possibility of selecting the wrong " @@ -3802,7 +3801,7 @@ msgstr "" "料,並確認備份的完整性。" #. (itstool) path: step/para -#: book.translate.xml:3189 +#: book.translate.xml:3196 msgid "" "Disk partitions containing different operating systems make it possible to " "install multiple operating systems on one computer. An alternative is to use " @@ -3815,12 +3814,12 @@ msgstr "" "執行而不需要改變任何磁碟分割區。" #. (itstool) path: step/title -#: book.translate.xml:3198 +#: book.translate.xml:3205 msgid "Collect Network Information" msgstr "收集網路資訊" #. (itstool) path: step/para -#: book.translate.xml:3200 +#: book.translate.xml:3207 msgid "" "Some FreeBSD installation methods require a network connection in order to " "download the installation files. After any installation, the installer will " @@ -3830,7 +3829,7 @@ msgstr "" "入設定系統網路的介面。" #. (itstool) path: step/para -#: book.translate.xml:3205 +#: book.translate.xml:3212 msgid "" "If the network has a <acronym>DHCP</acronym> server, it can be used to " "provide automatic network configuration. If <acronym>DHCP</acronym> is not " @@ -3842,45 +3841,45 @@ msgstr "" "商 (Internet Service Provider, ISP) 取得以的網路資訊供系統使用:" #. (itstool) path: orderedlist/title -#: book.translate.xml:3213 +#: book.translate.xml:3220 msgid "Required Network Information" msgstr "需要的網路資訊" #. (itstool) path: listitem/para #. (itstool) path: row/entry -#: book.translate.xml:3216 book.translate.xml:53596 +#: book.translate.xml:3223 book.translate.xml:53217 msgid "<acronym>IP</acronym> address" msgstr "<acronym>IP</acronym> 位址" #. (itstool) path: listitem/para -#: book.translate.xml:3220 +#: book.translate.xml:3227 msgid "Subnet mask" msgstr "子網路遮罩" #. (itstool) path: listitem/para -#: book.translate.xml:3224 +#: book.translate.xml:3231 msgid "<acronym>IP</acronym> address of default gateway" msgstr "預設通訊閘 <acronym>IP</acronym> 位址" #. (itstool) path: listitem/para -#: book.translate.xml:3229 +#: book.translate.xml:3236 msgid "Domain name of the network" msgstr "網路的網域名稱" #. (itstool) path: listitem/para -#: book.translate.xml:3233 +#: book.translate.xml:3240 msgid "" "<acronym>IP</acronym> addresses of the network's <acronym>DNS</acronym> " "servers" msgstr "網路 <acronym>DNS</acronym> 伺服器 <acronym>IP</acronym> 位址" #. (itstool) path: step/title -#: book.translate.xml:3240 +#: book.translate.xml:3247 msgid "Check for FreeBSD Errata" msgstr "檢查 FreeBSD 勘誤表" #. (itstool) path: step/para -#: book.translate.xml:3242 +#: book.translate.xml:3249 msgid "" "Although the FreeBSD Project strives to ensure that each release of FreeBSD " "is as stable as possible, bugs occasionally creep into the process. On very " @@ -3899,7 +3898,7 @@ msgstr "" "裝的問題。" #. (itstool) path: step/para -#: book.translate.xml:3252 +#: book.translate.xml:3259 msgid "" "Information and errata for all the releases can be found on the release " "information section of the FreeBSD web site (<link xlink:href=" @@ -3911,12 +3910,12 @@ msgstr "" "index.html</link>)。" #. (itstool) path: sect2/title -#: book.translate.xml:3259 +#: book.translate.xml:3266 msgid "Prepare the Installation Media" msgstr "準備安裝的媒體" #. (itstool) path: sect2/para -#: book.translate.xml:3261 +#: book.translate.xml:3268 msgid "" "The FreeBSD installer is not an application that can be run from within " "another operating system. Instead, download a FreeBSD installation file, " @@ -3930,7 +3929,7 @@ msgstr "" "媒體來安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:3268 +#: book.translate.xml:3275 msgid "" "FreeBSD installation files are available at <link xlink:href=" "\"@@URL_RELPREFIX@@/where.html#download\">www.freebsd.org/where." @@ -3949,7 +3948,7 @@ msgstr "" "<acronym>DVD</acronym> 來開機。" #. (itstool) path: sect2/para -#: book.translate.xml:3277 +#: book.translate.xml:3284 msgid "" "Installation files are available in several formats. The formats vary " "depending on computer architecture and media type." @@ -3957,7 +3956,7 @@ msgstr "安裝檔有許多種可用的格式,格式會依據電腦架構及媒 #. (itstool) path: sect2/para #. (itstool) id: book.translate.xml#bsdinstall-installation-media-uefi -#: book.translate.xml:3281 +#: book.translate.xml:3288 msgid "" "Additional installation files are included for computers that boot with " "<acronym>UEFI</acronym> (Unified Extensible Firmware Interface). The names " @@ -3968,12 +3967,12 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:3287 +#: book.translate.xml:3294 msgid "File types:" msgstr "檔案類型:" #. (itstool) path: listitem/para -#: book.translate.xml:3291 +#: book.translate.xml:3298 msgid "" "<literal>-bootonly.iso</literal>: This is the smallest installation file as " "it only contains the installer. A working Internet connection is required " @@ -3986,7 +3985,7 @@ msgstr "" "<acronym>CD</acronym> 燒錄應用程式燒錄到 <acronym>CD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3301 +#: book.translate.xml:3308 msgid "" "<literal>-disc1.iso</literal>: This file contains all of the files needed to " "install FreeBSD, its source, and the Ports Collection. It should be burned " @@ -3997,7 +3996,7 @@ msgstr "" "到 <acronym>CD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3309 +#: book.translate.xml:3316 msgid "" "<literal>-dvd1.iso</literal>: This file contains all of the files needed to " "install FreeBSD, its source, and the Ports Collection. It also contains a " @@ -4012,7 +4011,7 @@ msgstr "" "<acronym>DVD</acronym> 燒錄應用程式燒錄到 <acronym>DVD</acronym> 使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3320 +#: book.translate.xml:3327 msgid "" "<literal>-memstick.img</literal>: This file contains all of the files needed " "to install FreeBSD, its source, and the Ports Collection. It should be " @@ -4023,7 +4022,7 @@ msgstr "" "acronym> 隨身碟使用。" #. (itstool) path: listitem/para -#: book.translate.xml:3328 +#: book.translate.xml:3335 msgid "" "<literal>-mini-memstick.img</literal>: Like <literal>-bootonly.iso</" "literal>, does not include installation files, but downloads them as needed. " @@ -4037,7 +4036,7 @@ msgstr "" "碟。" #. (itstool) path: sect2/para -#: book.translate.xml:3337 +#: book.translate.xml:3344 msgid "" "After downloading the image file, download <filename>CHECKSUM.SHA256</" "filename> from the same directory. Calculate a <firstterm>checksum</" @@ -4054,7 +4053,7 @@ msgstr "" "程式。" #. (itstool) path: sect2/para -#: book.translate.xml:3345 +#: book.translate.xml:3352 msgid "" "Compare the calculated checksum with the one shown in <filename>CHECKSUM." "SHA256</filename>. The checksums must match exactly. If the checksums do not " @@ -4064,12 +4063,12 @@ msgstr "" "應該要完全相符,若校驗碼不相符,則代表該映像檔是損壞的,必須再下載一次。" #. (itstool) path: sect3/title -#: book.translate.xml:3351 +#: book.translate.xml:3358 msgid "Writing an Image File to <acronym>USB</acronym>" msgstr "寫入映象檔到 <acronym>USB</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:3353 +#: book.translate.xml:3360 msgid "" "The <filename>*.img</filename> file is an <emphasis>image</emphasis> of the " "complete contents of a memory stick. It <emphasis>cannot</emphasis> be " @@ -4083,7 +4082,7 @@ msgstr "" "隨身碟,本節會介紹其中兩種。" #. (itstool) path: important/para -#: book.translate.xml:3362 +#: book.translate.xml:3369 msgid "" "Before proceeding, back up any important data on the <acronym>USB</acronym> " "stick. This procedure will erase the existing data on the stick." @@ -4092,12 +4091,12 @@ msgstr "" "身碟上既有的資料。" #. (itstool) path: procedure/title -#: book.translate.xml:3368 +#: book.translate.xml:3375 msgid "Using <command>dd</command> to Write the Image" msgstr "使用 <command>dd</command> 來寫入映像檔" #. (itstool) path: warning/para -#: book.translate.xml:3372 +#: book.translate.xml:3379 msgid "" "This example uses <filename>/dev/da0</filename> as the target device where " "the image will be written. Be <emphasis>very careful</emphasis> that the " @@ -4109,7 +4108,7 @@ msgstr "" "毀所有在指定目標裝置上已存在的資料。" #. (itstool) path: step/para -#: book.translate.xml:3380 +#: book.translate.xml:3387 msgid "" "The <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> command-line utility is available on BSD, <trademark class=" @@ -4130,13 +4129,13 @@ msgstr "" "到第一個 <acronym>USB</acronym> 裝置。" #. (itstool) path: step/screen -#: book.translate.xml:3391 +#: book.translate.xml:3398 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=<replaceable>FreeBSD-10.2-RELEASE-amd64-memstick.img</replaceable> of=/dev/<replaceable>da0</replaceable> bs=1M conv=sync</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:3393 +#: book.translate.xml:3400 msgid "" "If this command fails, verify that the <acronym>USB</acronym> stick is not " "mounted and that the device name is for the disk, not a partition. Some " @@ -4156,13 +4155,13 @@ msgstr "" "citerefentry>。" #. (itstool) path: procedure/title -#: book.translate.xml:3404 +#: book.translate.xml:3411 msgid "" "Using <trademark class=\"registered\">Windows</trademark> to Write the Image" msgstr "使用 <trademark class=\"registered\">Windows</trademark> 來寫入映象檔" #. (itstool) path: warning/para -#: book.translate.xml:3407 +#: book.translate.xml:3414 msgid "" "Be sure to give the correct drive letter as the existing data on the " "specified drive will be overwritten and destroyed." @@ -4170,7 +4169,7 @@ msgstr "" "務必確認指定的磁碟機代號正確,因在指定磁碟機上的既有資料將會被覆蓋與摧毀。" #. (itstool) path: step/title -#: book.translate.xml:3413 +#: book.translate.xml:3420 msgid "" "Obtaining <application>Image Writer for <trademark class=\"registered" "\">Windows</trademark></application>" @@ -4179,27 +4178,27 @@ msgstr "" "trademark> 版</application>" #. (itstool) path: step/para -#: book.translate.xml:3416 +#: book.translate.xml:3423 msgid "" "<application>Image Writer for <trademark class=\"registered\">Windows</" "trademark></application> is a free application that can correctly write an " "image file to a memory stick. Download it from <uri xlink:href=\"https://" -"launchpad.net/win32-image-writer/\">https://launchpad.net/win32-image-writer/" -"</uri> and extract it into a folder." +"sourceforge.net/projects/win32diskimager/\">https://sourceforge.net/projects/" +"win32diskimager/</uri> and extract it into a folder." msgstr "" "<application>Image Writer <trademark class=\"registered\">Windows</" "trademark> 版</application> 是一個免費的應用程式,可以正確地將映像檔寫入隨身" -"碟。 從 <uri xlink:href=\"https://launchpad.net/win32-image-writer/" -"\">https://launchpad.net/win32-image-writer/</uri> 下載,並解壓縮到一個資料" -"夾。" +"碟。可從 <uri xlink:href=\"https://sourceforge.net/projects/win32diskimager/" +"\">https://sourceforge.net/projects/win32diskimager/</uri> 下載,並解壓縮到一" +"個資料夾。" #. (itstool) path: step/title -#: book.translate.xml:3424 +#: book.translate.xml:3431 msgid "Writing the Image with Image Writer" msgstr "用 Image Writer 寫入映象檔" #. (itstool) path: step/para -#: book.translate.xml:3426 +#: book.translate.xml:3433 msgid "" "Double-click the <application>Win32DiskImager</application> icon to start " "the program. Verify that the drive letter shown under " @@ -4218,24 +4217,24 @@ msgstr "" "入隨身碟。" #. (itstool) path: sect3/para -#: book.translate.xml:3441 +#: book.translate.xml:3448 msgid "You are now ready to start installing FreeBSD." msgstr "您現在可以開始安裝 FreeBSD 。" #. (itstool) path: sect1/title -#: book.translate.xml:3447 +#: book.translate.xml:3454 msgid "Starting the Installation" msgstr "開始安裝" #. (itstool) path: important/para -#: book.translate.xml:3450 +#: book.translate.xml:3457 msgid "" "By default, the installation will not make any changes to the disk(s) before " "the following message:" msgstr "預設安裝程序在下列訊息顯示之前不會對磁碟做任何更動:" #. (itstool) path: important/programlisting -#: book.translate.xml:3453 +#: book.translate.xml:3460 #, no-wrap msgid "" "Your changes will now be written to disk. If you\n" @@ -4245,7 +4244,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:3458 +#: book.translate.xml:3465 msgid "" "The install can be exited at any time prior to this warning. If there is a " "concern that something is incorrectly configured, just turn the computer off " @@ -4255,7 +4254,7 @@ msgstr "" "腦,將不會對系統磁碟做任何更改。" #. (itstool) path: sect1/para -#: book.translate.xml:3465 +#: book.translate.xml:3472 msgid "" "This section describes how to boot the system from the installation media " "which was prepared using the instructions in <xref linkend=\"bsdinstall-" @@ -4272,12 +4271,12 @@ msgstr "" "會有所不同。" #. (itstool) path: sect2/title -#: book.translate.xml:3476 +#: book.translate.xml:3483 msgid "Booting on <trademark>i386</trademark> and amd64" msgstr "在 <trademark>i386</trademark> 及 amd64 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3478 +#: book.translate.xml:3485 msgid "" "These architectures provide a <acronym>BIOS</acronym> menu for selecting the " "boot device. Depending upon the installation media being used, select the " @@ -4295,14 +4294,14 @@ msgstr "" "<keycap>Escape</keycap> 其中之一。" #. (itstool) path: sect2/para -#: book.translate.xml:3489 +#: book.translate.xml:3496 msgid "" "If the computer loads the existing operating system instead of the FreeBSD " "installer, then either:" msgstr "若電腦仍載入了現有的作業系統,而不是 FreeBSD 安裝程式,原因可能為:" #. (itstool) path: listitem/para -#: book.translate.xml:3494 +#: book.translate.xml:3501 msgid "" "The installation media was not inserted early enough in the boot process. " "Leave the media inserted and try restarting the computer." @@ -4311,7 +4310,7 @@ msgstr "" "電腦。" #. (itstool) path: listitem/para -#: book.translate.xml:3500 +#: book.translate.xml:3507 msgid "" "The <acronym>BIOS</acronym> changes were incorrect or not saved. Double-" "check that the right boot device is selected as the first boot device." @@ -4320,7 +4319,7 @@ msgstr "" "確的裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:3506 +#: book.translate.xml:3513 msgid "" "This system is too old to support booting from the chosen media. In this " "case, the <application>Plop Boot Manager</application> (<link xlink:href=" @@ -4332,12 +4331,12 @@ msgstr "" "plop.at/en/bootmanagers.html\"/>) 來從選擇的開機媒體開機。" #. (itstool) path: sect2/title -#: book.translate.xml:3516 +#: book.translate.xml:3523 msgid "Booting on <trademark class=\"registered\">PowerPC</trademark>" msgstr "在 <trademark class=\"registered\">PowerPC</trademark> 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3518 +#: book.translate.xml:3525 msgid "" "On most machines, holding <keycap>C</keycap> on the keyboard during boot " "will boot from the <acronym>CD</acronym>. Otherwise, hold <keycombo action=" @@ -4356,18 +4355,18 @@ msgstr "" "prompt> 提示時,輸入" #. (itstool) path: sect2/screen -#: book.translate.xml:3534 +#: book.translate.xml:3541 #, no-wrap msgid "<userinput>boot cd:,\\ppc\\loader cd:0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:3538 +#: book.translate.xml:3545 msgid "Booting on <trademark class=\"registered\">SPARC64</trademark>" msgstr "在 <trademark class=\"registered\">SPARC64</trademark> 開機" #. (itstool) path: sect2/para -#: book.translate.xml:3540 +#: book.translate.xml:3547 msgid "" "Most <trademark class=\"registered\">SPARC64</trademark> systems are set up " "to boot automatically from disk. To install FreeBSD from a <acronym>CD</" @@ -4378,7 +4377,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:3544 +#: book.translate.xml:3551 msgid "" "To do this, reboot the system and wait until the boot message appears. The " "message depends on the model, but should look something like this:" @@ -4387,7 +4386,7 @@ msgstr "" "機型而有所不同,但大致結果會如:" #. (itstool) path: sect2/screen -#: book.translate.xml:3548 +#: book.translate.xml:3555 #, no-wrap msgid "" "Sun Blade 100 (UltraSPARC-IIe), Keyboard Present\n" @@ -4397,7 +4396,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3553 +#: book.translate.xml:3560 msgid "" "If the system proceeds to boot from disk at this point, press <keycombo " "action=\"simul\"><keycap>L1</keycap><keycap>A</keycap></keycombo> or " @@ -4420,7 +4419,7 @@ msgstr "" "prompt>,其中的數字代表啟動的 <acronym>CPU</acronym> 數。" #. (itstool) path: sect2/para -#: book.translate.xml:3565 +#: book.translate.xml:3572 msgid "" "At this point, place the <acronym>CD</acronym> into the drive and type " "<command>boot cdrom</command> from the <acronym>PROM</acronym> prompt." @@ -4429,19 +4428,19 @@ msgstr "" "畫面輸入 <command>boot cdrom</command>。" #. (itstool) path: sect2/title -#: book.translate.xml:3571 +#: book.translate.xml:3578 msgid "FreeBSD Boot Menu" msgstr "FreeBSD 開機選單" #. (itstool) path: sect2/para -#: book.translate.xml:3573 +#: book.translate.xml:3580 msgid "" "Once the system boots from the installation media, a menu similar to the " "following will be displayed:" msgstr "從安裝媒體開機之後,會顯示如下的選單:" #. (itstool) path: figure/title -#: book.translate.xml:3577 +#: book.translate.xml:3584 msgid "FreeBSD Boot Loader Menu" msgstr "FreeBSD 開機載入程式選單" @@ -4450,14 +4449,14 @@ msgstr "FreeBSD 開機載入程式選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3581 +#: book.translate.xml:3588 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-newboot-loader-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3586 +#: book.translate.xml:3593 msgid "" "By default, the menu will wait ten seconds for user input before booting " "into the FreeBSD installer or, if FreeBSD is already installed, before " @@ -4471,7 +4470,7 @@ msgstr "" "以下選項可選。" #. (itstool) path: listitem/para -#: book.translate.xml:3596 +#: book.translate.xml:3603 msgid "" "<literal>Boot Multi User</literal>: This will continue the FreeBSD boot " "process. If the boot timer has been paused, press <keycap>1</keycap>, upper- " @@ -4482,7 +4481,7 @@ msgstr "" "<keycap>B</keycap> 或 <keycap>Enter</keycap> 鍵。" #. (itstool) path: listitem/para -#: book.translate.xml:3604 +#: book.translate.xml:3611 msgid "" "<literal>Boot Single User</literal>: This mode can be used to fix an " "existing FreeBSD installation as described in <xref linkend=\"boot-singleuser" @@ -4494,7 +4493,7 @@ msgstr "" "keycap>、大寫或小寫 <keycap>S</keycap> 進入這個模式。" #. (itstool) path: listitem/para -#: book.translate.xml:3612 +#: book.translate.xml:3619 msgid "" "<literal>Escape to loader prompt</literal>: This will boot the system into a " "repair prompt that contains a limited number of low-level commands. This " @@ -4507,12 +4506,12 @@ msgstr "" "入這個提示。" #. (itstool) path: listitem/para -#: book.translate.xml:3621 +#: book.translate.xml:3628 msgid "<literal>Reboot</literal>: Reboots the system." msgstr "重新開機 (<literal>Reboot</literal>):重新開啟系統。" #. (itstool) path: listitem/para -#: book.translate.xml:3625 +#: book.translate.xml:3632 msgid "" "<literal>Configure Boot Options</literal>: Opens the menu shown in, and " "described under, <xref linkend=\"bsdinstall-boot-options-menu\"/>." @@ -4521,7 +4520,7 @@ msgstr "" "說明於 <xref linkend=\"bsdinstall-boot-options-menu\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3631 +#: book.translate.xml:3638 msgid "FreeBSD Boot Options Menu" msgstr "FreeBSD 開機選項選單" @@ -4530,13 +4529,13 @@ msgstr "FreeBSD 開機選項選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3635 +#: book.translate.xml:3642 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-boot-options-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3640 +#: book.translate.xml:3647 msgid "" "The boot options menu is divided into two sections. The first section can be " "used to either return to the main boot menu or to reset any toggled options " @@ -4546,7 +4545,7 @@ msgstr "" "回預設值。" #. (itstool) path: sect2/para -#: book.translate.xml:3645 +#: book.translate.xml:3652 msgid "" "The next section is used to toggle the available options to <literal>On</" "literal> or <literal>Off</literal> by pressing the option's highlighted " @@ -4559,7 +4558,7 @@ msgstr "" "到選項被修改。有數個選項可以在這個選單做切換:" #. (itstool) path: listitem/para -#: book.translate.xml:3654 +#: book.translate.xml:3661 msgid "" "<literal>ACPI Support</literal>: If the system hangs during boot, try " "toggling this option to <literal>Off</literal>." @@ -4568,7 +4567,7 @@ msgstr "" "個選項為關 (<literal>Off</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3660 +#: book.translate.xml:3667 msgid "" "<literal>Safe Mode</literal>: If the system still hangs during boot even " "with <literal>ACPI Support</literal> set to <literal>Off</literal>, try " @@ -4579,7 +4578,7 @@ msgstr "" "將此選項設為開 (<literal>On</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3667 +#: book.translate.xml:3674 msgid "" "<literal>Single User</literal>: Toggle this option to <literal>On</literal> " "to fix an existing FreeBSD installation as described in <xref linkend=\"boot-" @@ -4591,7 +4590,7 @@ msgstr "" "述,問題修正後,將其設回關 (<literal>Off</literal>)。" #. (itstool) path: listitem/para -#: book.translate.xml:3675 +#: book.translate.xml:3682 msgid "" "<literal>Verbose</literal>: Toggle this option to <literal>On</literal> to " "see more detailed messages during the boot process. This can be useful when " @@ -4601,7 +4600,7 @@ msgstr "" "literal>) 來查看開機程序中更詳細的訊息,這在診斷硬體問題時非常有用。" #. (itstool) path: sect2/para -#: book.translate.xml:3682 +#: book.translate.xml:3689 msgid "" "After making the needed selections, press <keycap>1</keycap> or " "<keycap>Backspace</keycap> to return to the main boot menu, then press " @@ -4616,7 +4615,7 @@ msgstr "" "選單如 <xref linkend=\"bsdinstall-choose-mode\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3691 +#: book.translate.xml:3698 msgid "Welcome Menu" msgstr "歡迎選單" @@ -4625,13 +4624,13 @@ msgstr "歡迎選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3695 +#: book.translate.xml:3702 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-choose-mode' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3700 +#: book.translate.xml:3707 msgid "" "Press <keycap>Enter</keycap> to select the default of " "<guibutton>[ Install ]</guibutton> to enter the installer. The rest of this " @@ -4651,7 +4650,7 @@ msgstr "" "本的詳細說明於 <xref linkend=\"using-live-cd\"/>。" #. (itstool) path: tip/para -#: book.translate.xml:3713 +#: book.translate.xml:3720 msgid "" "To review the boot messages, including the hardware device probe, press the " "upper- or lower-case <keycap>S</keycap> and then <keycap>Enter</keycap> to " @@ -4665,12 +4664,12 @@ msgstr "" "<command>exit</command> 返回歡迎選單。" #. (itstool) path: sect1/title -#: book.translate.xml:3726 +#: book.translate.xml:3733 msgid "Using <application>bsdinstall</application>" msgstr "使用 <application>bsdinstall</application>" #. (itstool) path: sect1/para -#: book.translate.xml:3728 +#: book.translate.xml:3735 msgid "" "This section shows the order of the <application>bsdinstall</application> " "menus and the type of information that will be asked before the system is " @@ -4685,12 +4684,12 @@ msgstr "" "選項然後進入下一個畫面。" #. (itstool) path: sect2/title -#: book.translate.xml:3737 +#: book.translate.xml:3744 msgid "Selecting the Keymap Menu" msgstr "選擇鍵盤對應表選單" #. (itstool) path: sect2/para -#: book.translate.xml:3739 +#: book.translate.xml:3746 msgid "" "Depending on the system console being used, <application>bsdinstall</" "application> may initially display the menu shown in <xref linkend=" @@ -4700,7 +4699,7 @@ msgstr "" "的選單會如 <xref linkend=\"bsdinstall-keymap-select-default\"/>。" #. (itstool) path: figure/title -#: book.translate.xml:3744 +#: book.translate.xml:3751 msgid "Keymap Selection" msgstr "鍵盤對應表選擇" @@ -4709,14 +4708,14 @@ msgstr "鍵盤對應表選擇" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3748 +#: book.translate.xml:3755 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-keymap-select-default' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3753 +#: book.translate.xml:3760 msgid "" "To configure the keyboard layout, press <keycap>Enter</keycap> with " "<guibutton>[ YES ]</guibutton> selected, which will display the menu shown " @@ -4730,7 +4729,7 @@ msgstr "" "<keycap>Enter</keycap> 跳過這個選單畫面。" #. (itstool) path: figure/title -#: book.translate.xml:3762 +#: book.translate.xml:3769 msgid "Selecting Keyboard Menu" msgstr "選擇鍵盤選單" @@ -4739,13 +4738,13 @@ msgstr "選擇鍵盤選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3766 +#: book.translate.xml:3773 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-keymap' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3771 +#: book.translate.xml:3778 msgid "" "When configuring the keyboard layout, use the up and down arrows to select " "the keymap that most closely represents the mapping of the keyboard attached " @@ -4755,7 +4754,7 @@ msgstr "" "(Keymap),然後按下 <keycap>Enter</keycap> 儲存選項。" #. (itstool) path: note/para -#: book.translate.xml:3777 +#: book.translate.xml:3784 msgid "" "Pressing <keycap>Esc</keycap> will exit this menu and use the default " "keymap. If the choice of keymap is not clear, <guimenuitem>United States of " @@ -4766,7 +4765,7 @@ msgstr "" "guimenuitem> 是也是保險的選項。" #. (itstool) path: sect2/para -#: book.translate.xml:3783 +#: book.translate.xml:3790 msgid "" "In FreeBSD 10.0-RELEASE and later, this menu has been enhanced. The full " "selection of keymaps is shown, with the default preselected. In addition, " @@ -4778,7 +4777,7 @@ msgstr "" "對話框讓使用者測試鍵盤對應表來確認。" #. (itstool) path: figure/title -#: book.translate.xml:3790 +#: book.translate.xml:3797 msgid "Enhanced Keymap Menu" msgstr "改進後的鍵盤對應表選單" @@ -4787,19 +4786,19 @@ msgstr "改進後的鍵盤對應表選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3794 +#: book.translate.xml:3801 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-keymap-10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3802 book.translate.xml:3809 +#: book.translate.xml:3809 book.translate.xml:3816 msgid "Setting the Hostname" msgstr "設定主機名稱" #. (itstool) path: sect2/para -#: book.translate.xml:3804 +#: book.translate.xml:3811 msgid "" "The next <application>bsdinstall</application> menu is used to set the " "hostname for the newly installed system." @@ -4812,13 +4811,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3813 +#: book.translate.xml:3820 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-hostname' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3818 +#: book.translate.xml:3825 msgid "" "Type in a hostname that is unique for the network. It should be a fully-" "qualified hostname, such as <systemitem class=\"fqdomainname\">machine3." @@ -4829,12 +4828,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3823 book.translate.xml:3829 +#: book.translate.xml:3830 book.translate.xml:3836 msgid "Selecting Components to Install" msgstr "選擇要安裝的元件" #. (itstool) path: sect2/para -#: book.translate.xml:3825 +#: book.translate.xml:3832 msgid "" "Next, <application>bsdinstall</application> will prompt to select optional " "components to install." @@ -4846,13 +4845,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3833 +#: book.translate.xml:3840 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-components' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3838 +#: book.translate.xml:3845 msgid "" "Deciding which components to install will depend largely on the intended use " "of the system and the amount of disk space available. The FreeBSD kernel and " @@ -4865,7 +4864,7 @@ msgstr "" "必須安裝的部份。依據系統的架構,部份元件可能不會顯示:" #. (itstool) path: listitem/para -#: book.translate.xml:3847 +#: book.translate.xml:3854 msgid "" "<literal>doc</literal> - Additional documentation, mostly of historical " "interest, to install into <filename>/usr/share/doc</filename>. The " @@ -4879,7 +4878,7 @@ msgstr "" "操作。" #. (itstool) path: listitem/para -#: book.translate.xml:3855 +#: book.translate.xml:3862 msgid "" "<literal>games</literal> - Several traditional <acronym>BSD</acronym> games, " "including <application>fortune</application>, <application>rot13</" @@ -4890,7 +4889,7 @@ msgstr "" "他。" #. (itstool) path: listitem/para -#: book.translate.xml:3862 +#: book.translate.xml:3869 msgid "" "<literal>lib32</literal> - Compatibility libraries for running 32-bit " "applications on a 64-bit version of FreeBSD." @@ -4899,7 +4898,7 @@ msgstr "" "用的相容性程式庫。" #. (itstool) path: listitem/para -#: book.translate.xml:3868 +#: book.translate.xml:3875 msgid "" "<literal>ports</literal> - The FreeBSD Ports Collection is a collection of " "files which automates the downloading, compiling and installation of third-" @@ -4910,7 +4909,7 @@ msgstr "" "方軟體套件的集合,<xref linkend=\"ports\"/> 中會討論到如何使用 Port 套件集。" #. (itstool) path: warning/para -#: book.translate.xml:3875 +#: book.translate.xml:3882 msgid "" "The installation program does not check for adequate disk space. Select this " "option only if sufficient hard disk space is available. The FreeBSD Ports " @@ -4920,7 +4919,7 @@ msgstr "" "磁碟空間,只有在有足夠的磁碟空間時才選擇這個選項。" #. (itstool) path: listitem/para -#: book.translate.xml:3884 +#: book.translate.xml:3891 msgid "" "<literal>src</literal> - The complete FreeBSD source code for both the " "kernel and the userland. Although not required for the majority of " @@ -4937,12 +4936,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:3897 book.translate.xml:3908 +#: book.translate.xml:3904 book.translate.xml:3915 msgid "Installing from the Network" msgstr "從網路安裝" #. (itstool) path: sect2/para -#: book.translate.xml:3899 +#: book.translate.xml:3906 msgid "" "The menu shown in <xref linkend=\"bsdinstall-netinstall-notify\"/> only " "appears when installing from a <filename>-bootonly.iso</filename> " @@ -4961,13 +4960,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3912 +#: book.translate.xml:3919 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-netinstall-files' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3917 +#: book.translate.xml:3924 msgid "" "To configure the network connection, press <keycap>Enter</keycap> and follow " "the instructions in <xref linkend=\"bsdinstall-config-network-dev\"/>. Once " @@ -4982,7 +4981,7 @@ msgstr "" "載的速度會比較快,這會減少安裝的時間。" #. (itstool) path: figure/title -#: book.translate.xml:3926 +#: book.translate.xml:3933 msgid "Choosing a Mirror" msgstr "選擇鏡像站" @@ -4991,26 +4990,26 @@ msgstr "選擇鏡像站" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3930 +#: book.translate.xml:3937 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-netinstall-mirrorselect' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3935 +#: book.translate.xml:3942 msgid "" "Installation will then continue as if the installation files were located on " "the local installation media." msgstr "若在本機的安裝媒體中找到安裝檔案,安裝程序便會繼續。" #. (itstool) path: sect1/title -#: book.translate.xml:3941 +#: book.translate.xml:3948 msgid "Allocating Disk Space" msgstr "配置磁碟空間" #. (itstool) path: sect1/para -#: book.translate.xml:3943 +#: book.translate.xml:3950 msgid "" "The next menu is used to determine the method for allocating disk space. The " "options available in the menu depend upon the version of FreeBSD being " @@ -5020,7 +5019,7 @@ msgstr "" "本而有所不同。" #. (itstool) path: figure/title -#: book.translate.xml:3948 +#: book.translate.xml:3955 msgid "Partitioning Choices on FreeBSD 9.x" msgstr "FreeBSD 9.x 的磁碟分割選項" @@ -5029,14 +5028,14 @@ msgstr "FreeBSD 9.x 的磁碟分割選項" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3952 +#: book.translate.xml:3959 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-guided-manual' md5='__failed__'" msgstr "" #. (itstool) path: figure/title -#: book.translate.xml:3958 +#: book.translate.xml:3965 msgid "Partitioning Choices on FreeBSD 10.x and Higher" msgstr "FreeBSD 10.x 或更新版本的磁碟分割選項" @@ -5045,13 +5044,13 @@ msgstr "FreeBSD 10.x 或更新版本的磁碟分割選項" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:3962 +#: book.translate.xml:3969 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-partmenu' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:3967 +#: book.translate.xml:3974 msgid "" "<literal>Guided</literal> partitioning automatically sets up the disk " "partitions, <literal>Manual</literal> partitioning allows advanced users to " @@ -5079,7 +5078,7 @@ msgstr "" "firstterm>。" #. (itstool) path: sect1/para -#: book.translate.xml:3978 +#: book.translate.xml:3985 msgid "" "This section describes what to consider when laying out the disk partitions. " "It then demonstrates how to use the different partitioning methods." @@ -5087,32 +5086,32 @@ msgstr "" "本節會介紹在配置磁碟分割時需要考量那些事情,並且會示範各種磁碟分割的方式。" #. (itstool) path: sect2/title -#: book.translate.xml:3983 +#: book.translate.xml:3990 msgid "Designing the Partition Layout" msgstr "規劃分割區配置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3985 +#: book.translate.xml:3992 msgid "<primary>partition layout</primary>" msgstr "<primary>分割區配置</primary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3986 +#: book.translate.xml:3993 msgid "<primary><filename>/etc</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3989 +#: book.translate.xml:3996 msgid "<primary><filename>/var</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:3992 +#: book.translate.xml:3999 msgid "<primary><filename>/usr</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:3996 +#: book.translate.xml:4003 msgid "" "When laying out file systems, remember that hard drives transfer data faster " "from the outer tracks to the inner. Thus, smaller and heavier-accessed file " @@ -5128,7 +5127,7 @@ msgstr "" "<filename>/var</filename> 然後 <filename>/usr</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:4006 +#: book.translate.xml:4013 msgid "" "The size of the <filename>/var</filename> partition reflects the intended " "machine's usage. This partition is used to hold mailboxes, log files, and " @@ -5143,7 +5142,7 @@ msgstr "" "<filename>/var</filename> 需要超過 1 GB 的可用磁碟空間。" #. (itstool) path: note/para -#: book.translate.xml:4016 +#: book.translate.xml:4023 msgid "" "Sometimes, a lot of disk space is required in <filename>/var/tmp</filename>. " "When new software is installed, the packaging tools extract a temporary copy " @@ -5160,17 +5159,17 @@ msgstr "" "application> 或 <application>LibreOffice</application> 會很困難。" #. (itstool) path: sect2/para -#: book.translate.xml:4027 +#: book.translate.xml:4034 msgid "" "The <filename>/usr</filename> partition holds many of the files which " "support the system, including the FreeBSD Ports Collection and system source " -"code. At least 2 gigabytes is recommended for this partition." +"code. At least 2 gigabytes of space is recommended for this partition." msgstr "" -"<filename>/usr</filename> 分割區會保存許多支持系統運作的檔案,包含 FreeBSD " -"Port 套件集以及系統原始碼。這個分割區建議至少要有 2 GB 的空間。" +"<filename>/usr</filename> 分割區保存了許多支持系統運作的檔案,包含 FreeBSD " +"Port 套件集以及系統原始碼,這個分割區建議至少要有 2 GB 的空間。" #. (itstool) path: sect2/para -#: book.translate.xml:4032 +#: book.translate.xml:4039 msgid "" "When selecting partition sizes, keep the space requirements in mind. Running " "out of space in one partition while barely using another can be a hassle." @@ -5179,17 +5178,17 @@ msgstr "" "區時會很麻煩。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:4036 +#: book.translate.xml:4043 msgid "<primary>swap sizing</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:4039 +#: book.translate.xml:4046 msgid "<primary>swap partition</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4043 +#: book.translate.xml:4050 msgid "" "As a rule of thumb, the swap partition should be about double the size of " "physical memory (<acronym>RAM</acronym>). Systems with minimal <acronym>RAM</" @@ -5203,7 +5202,7 @@ msgstr "" "往後增加更多記憶體時可能會產生問題。" #. (itstool) path: sect2/para -#: book.translate.xml:4051 +#: book.translate.xml:4058 msgid "" "On larger systems with multiple <acronym>SCSI</acronym> disks or multiple " "<acronym>IDE</acronym> disks operating on different controllers, it is " @@ -5223,7 +5222,7 @@ msgstr "" "換空間,這也會讓要從失控的程式恢復運作更容易,而不需強制重新啟動系統。" #. (itstool) path: sect2/para -#: book.translate.xml:4064 +#: book.translate.xml:4071 msgid "" "By properly partitioning a system, fragmentation introduced in the smaller " "write heavy partitions will not bleed over into the mostly read partitions. " @@ -5241,12 +5240,12 @@ msgstr "" "顯著。" #. (itstool) path: sect2/title -#: book.translate.xml:4077 +#: book.translate.xml:4084 msgid "Guided Partitioning" msgstr "引導式磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4079 +#: book.translate.xml:4086 msgid "" "When this method is selected, a menu will display the available disk(s). If " "multiple disks are connected, choose the one where FreeBSD is to be " @@ -5256,7 +5255,7 @@ msgstr "" "個來安裝 FreeBSD。" #. (itstool) path: figure/title -#: book.translate.xml:4084 +#: book.translate.xml:4091 msgid "Selecting from Multiple Disks" msgstr "自多個磁碟選擇" @@ -5265,13 +5264,13 @@ msgstr "自多個磁碟選擇" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4088 +#: book.translate.xml:4095 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-guided-disk' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4093 +#: book.translate.xml:4100 msgid "" "Once the disk is selected, the next menu prompts to install to either the " "entire disk or to create a partition using free space. If " @@ -5286,7 +5285,7 @@ msgstr "" "未使用的空間來建立分割區配置。" #. (itstool) path: figure/title -#: book.translate.xml:4103 +#: book.translate.xml:4110 msgid "Selecting Entire Disk or Partition" msgstr "選擇完整磁碟或分割區" @@ -5295,13 +5294,13 @@ msgstr "選擇完整磁碟或分割區" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4107 +#: book.translate.xml:4114 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-entire-part' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4112 +#: book.translate.xml:4119 msgid "" "After the partition layout has been created, review it to ensure it meets " "the needs of the installation. Selecting <guibutton>[ Revert ]</guibutton> " @@ -5318,7 +5317,7 @@ msgstr "" "<guibutton>[ Finish ]</guibutton> 繼續安裝。" #. (itstool) path: figure/title -#: book.translate.xml:4123 +#: book.translate.xml:4130 msgid "Review Created Partitions" msgstr "確認已建立的分割區" @@ -5327,23 +5326,23 @@ msgstr "確認已建立的分割區" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4127 +#: book.translate.xml:4134 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-part-review' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4134 +#: book.translate.xml:4141 msgid "Manual Partitioning" msgstr "手動磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4136 +#: book.translate.xml:4143 msgid "Selecting this method opens the partition editor:" msgstr "選擇這個方法會開啟分割區編輯程式:" #. (itstool) path: figure/title -#: book.translate.xml:4139 book.translate.xml:4154 book.translate.xml:4225 +#: book.translate.xml:4146 book.translate.xml:4161 book.translate.xml:4232 msgid "Manually Create Partitions" msgstr "手動建立分割區" @@ -5352,14 +5351,14 @@ msgstr "手動建立分割區" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4143 +#: book.translate.xml:4150 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-create' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4148 +#: book.translate.xml:4155 msgid "" "Highlight the installation drive (<filename>ada0</filename> in this example) " "and select <guibutton>[ Create ]</guibutton> to display a menu of available " @@ -5374,14 +5373,14 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4158 +#: book.translate.xml:4165 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-partscheme' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4163 +#: book.translate.xml:4170 msgid "" "<acronym>GPT</acronym> is usually the most appropriate choice for amd64 " "computers. Older computers that are not compatible with <acronym>GPT</" @@ -5393,33 +5392,34 @@ msgstr "" "那些較罕見或較舊的電腦上。" #. (itstool) path: table/title -#: book.translate.xml:4170 +#: book.translate.xml:4177 msgid "Partitioning Schemes" msgstr "磁碟分割表格式" #. (itstool) path: row/entry -#: book.translate.xml:4175 +#: book.translate.xml:4182 msgid "Abbreviation" msgstr "縮寫" #. (itstool) path: row/entry -#: book.translate.xml:4176 book.translate.xml:7134 book.translate.xml:8477 -#: book.translate.xml:11905 book.translate.xml:23134 book.translate.xml:23313 -#: book.translate.xml:27423 book.translate.xml:31411 book.translate.xml:43117 -#: book.translate.xml:52938 book.translate.xml:53445 book.translate.xml:54204 -#: book.translate.xml:54245 book.translate.xml:55571 book.translate.xml:65535 +#: book.translate.xml:4183 book.translate.xml:7141 book.translate.xml:8484 +#: book.translate.xml:11912 book.translate.xml:23141 book.translate.xml:23320 +#: book.translate.xml:27430 book.translate.xml:31418 book.translate.xml:43326 +#: book.translate.xml:45412 book.translate.xml:52559 book.translate.xml:53066 +#: book.translate.xml:53825 book.translate.xml:53866 book.translate.xml:55192 +#: book.translate.xml:65535 msgid "Description" msgstr "說明" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:4182 book.translate.xml:65535 +#: book.translate.xml:4189 book.translate.xml:65535 msgid "APM" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4183 +#: book.translate.xml:4190 msgid "" "Apple Partition Map, used by <trademark class=\"registered\">PowerPC</" "trademark>." @@ -5430,12 +5430,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:4187 book.translate.xml:65535 +#: book.translate.xml:4194 book.translate.xml:65535 msgid "BSD" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4188 +#: book.translate.xml:4195 msgid "" "<acronym>BSD</acronym> label without an <acronym>MBR</acronym>, sometimes " "called <firstterm>dangerously dedicated mode</firstterm> as non-" @@ -5446,12 +5446,12 @@ msgstr "" "(Dangerously dedicated mode)</firstterm>。" #. (itstool) path: row/entry -#: book.translate.xml:4196 +#: book.translate.xml:4203 msgid "GPT" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4197 +#: book.translate.xml:4204 msgid "" "GUID Partition Table (<link xlink:href=\"http://en.wikipedia.org/wiki/" "GUID_Partition_Table\">http://en.wikipedia.org/wiki/GUID_Partition_Table</" @@ -5462,12 +5462,12 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4201 +#: book.translate.xml:4208 msgid "MBR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4202 +#: book.translate.xml:4209 msgid "" "Master Boot Record (<link xlink:href=\"http://en.wikipedia.org/wiki/" "Master_boot_record\">http://en.wikipedia.org/wiki/Master_boot_record</link>)." @@ -5477,12 +5477,12 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4206 +#: book.translate.xml:4213 msgid "PC98" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4207 +#: book.translate.xml:4214 msgid "" "<acronym>MBR</acronym> variant used by NEC PC-98 computers (<link xlink:href=" "\"http://en.wikipedia.org/wiki/Pc9801\">http://en.wikipedia.org/wiki/Pc9801</" @@ -5493,17 +5493,17 @@ msgstr "" "link>)。" #. (itstool) path: row/entry -#: book.translate.xml:4212 +#: book.translate.xml:4219 msgid "VTOC8" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4213 +#: book.translate.xml:4220 msgid "Volume Table Of Contents used by Sun SPARC64 and UltraSPARC computers." msgstr "Volume Table Of Contents,用於 Sun SPARC64 及 UltraSPARC 電腦。" #. (itstool) path: sect2/para -#: book.translate.xml:4220 +#: book.translate.xml:4227 msgid "" "After the partitioning scheme has been selected and created, select " "<guibutton>[ Create ]</guibutton> again to create the partitions." @@ -5516,26 +5516,26 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4229 +#: book.translate.xml:4236 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-part-manual-addpart' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4234 +#: book.translate.xml:4241 msgid "" "A standard FreeBSD <acronym>GPT</acronym> installation uses at least three " "partitions:" msgstr "標準的 FreeBSD <acronym>GPT</acronym> 安裝會使用至少三種分割區:" #. (itstool) path: listitem/para -#: book.translate.xml:4239 +#: book.translate.xml:4246 msgid "<literal>freebsd-boot</literal> - Holds the FreeBSD boot code." msgstr "<literal>freebsd-boot</literal> - 儲存 FreeBSD 開機程式 (Boot code)。" #. (itstool) path: listitem/para -#: book.translate.xml:4244 +#: book.translate.xml:4251 msgid "" "<literal>freebsd-ufs</literal> - A FreeBSD <acronym>UFS</acronym> file " "system." @@ -5543,12 +5543,12 @@ msgstr "" "<literal>freebsd-ufs</literal> - FreeBSD 的 <acronym>UFS</acronym> 檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:4249 +#: book.translate.xml:4256 msgid "<literal>freebsd-swap</literal> - FreeBSD swap space." msgstr "<literal>freebsd-swap</literal> - FreeBSD 交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:4254 +#: book.translate.xml:4261 msgid "" "Another partition type worth noting is <literal>freebsd-zfs</literal>, used " "for partitions that will contain a FreeBSD <acronym>ZFS</acronym> file " @@ -5563,7 +5563,7 @@ msgstr "" "citerefentry> 取得可用的 <acronym>GPT</acronym> 分割區類型說明。" #. (itstool) path: sect2/para -#: book.translate.xml:4260 +#: book.translate.xml:4267 msgid "" "Multiple file system partitions can be created and some people prefer a " "traditional layout with separate partitions for <filename>/</filename>, " @@ -5577,7 +5577,7 @@ msgstr "" "\"bsdinstall-part-manual-splitfs\"/> 的範例。" #. (itstool) path: sect2/para -#: book.translate.xml:4267 +#: book.translate.xml:4274 msgid "" "The <literal>Size</literal> may be entered with common abbreviations: " "<emphasis>K</emphasis> for kilobytes, <emphasis>M</emphasis> for megabytes, " @@ -5588,7 +5588,7 @@ msgstr "" "表 GB。" #. (itstool) path: tip/para -#: book.translate.xml:4273 +#: book.translate.xml:4280 msgid "" "Proper sector alignment provides the best performance, and making partition " "sizes even multiples of 4K bytes helps to ensure alignment on drives with " @@ -5605,7 +5605,7 @@ msgstr "" "(Boot code) 的限制,不可大於 512K。" #. (itstool) path: sect2/para -#: book.translate.xml:4284 +#: book.translate.xml:4291 msgid "" "A <literal>Mountpoint</literal> is needed if the partition will contain a " "file system. If only a single <acronym>UFS</acronym> partition will be " @@ -5616,7 +5616,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:4289 +#: book.translate.xml:4296 msgid "" "The <literal>Label</literal> is a name by which the partition will be known. " "Drive names or numbers can change if the drive is connected to a different " @@ -5636,7 +5636,7 @@ msgstr "" "且標籤會在 <filename>/dev/</filename> 中有各自的目錄。" #. (itstool) path: tip/para -#: book.translate.xml:4302 +#: book.translate.xml:4309 msgid "" "Use a unique label on every partition to avoid conflicts from identical " "labels. A few letters from the computer's name, use, or location can be " @@ -5650,12 +5650,12 @@ msgstr "" "<acronym>UFS</acronym> 根目錄分割區。" #. (itstool) path: example/title -#: book.translate.xml:4312 +#: book.translate.xml:4319 msgid "Creating Traditional Split File System Partitions" msgstr "建立傳統分割的檔案系統分割區" #. (itstool) path: example/para -#: book.translate.xml:4315 +#: book.translate.xml:4322 msgid "" "For a traditional partition layout where the <filename>/</filename>, " "<filename>/var</filename>, <filename>/tmp</filename>, and <filename>/usr</" @@ -5676,7 +5676,7 @@ msgstr "" "說明使用其他獨一無二的標籤。" #. (itstool) path: example/para -#: book.translate.xml:4328 +#: book.translate.xml:4335 msgid "" "By default, FreeBSD's <filename>gptboot</filename> expects the first " "<acronym>UFS</acronym> partition to be the <filename>/</filename> partition." @@ -5685,113 +5685,113 @@ msgstr "" "acronym> 分割區為 <filename>/</filename> 分割區。" #. (itstool) path: row/entry -#: book.translate.xml:4336 +#: book.translate.xml:4343 msgid "Partition Type" msgstr "分割區類型" #. (itstool) path: row/entry -#: book.translate.xml:4337 +#: book.translate.xml:4344 msgid "Size" msgstr "大小" #. (itstool) path: row/entry -#: book.translate.xml:4338 +#: book.translate.xml:4345 msgid "Mountpoint" msgstr "掛載點" #. (itstool) path: row/entry -#: book.translate.xml:4339 +#: book.translate.xml:4346 msgid "Label" msgstr "標籤" #. (itstool) path: row/entry -#: book.translate.xml:4345 +#: book.translate.xml:4352 msgid "<literal>freebsd-boot</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4346 +#: book.translate.xml:4353 msgid "<literal>512K</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4350 book.translate.xml:4364 book.translate.xml:4371 -#: book.translate.xml:4378 +#: book.translate.xml:4357 book.translate.xml:4371 book.translate.xml:4378 +#: book.translate.xml:4385 msgid "<literal>freebsd-ufs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4351 book.translate.xml:4365 +#: book.translate.xml:4358 book.translate.xml:4372 msgid "<literal>2G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4352 book.translate.xml:7139 +#: book.translate.xml:4359 book.translate.xml:7146 msgid "<filename>/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4353 +#: book.translate.xml:4360 msgid "<literal>exrootfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4357 +#: book.translate.xml:4364 msgid "<literal>freebsd-swap</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4358 +#: book.translate.xml:4365 msgid "<literal>4G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4360 +#: book.translate.xml:4367 msgid "<literal>exswap</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4366 +#: book.translate.xml:4373 msgid "<filename>/var</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4367 +#: book.translate.xml:4374 msgid "<literal>exvarfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4372 +#: book.translate.xml:4379 msgid "<literal>1G</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4373 +#: book.translate.xml:4380 msgid "<filename>/tmp</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4374 +#: book.translate.xml:4381 msgid "<literal>extmpfs</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4379 +#: book.translate.xml:4386 msgid "accept the default (remainder of the disk)" msgstr "接受預設值 (依磁碟提示)" #. (itstool) path: row/entry -#: book.translate.xml:4381 +#: book.translate.xml:4388 msgid "<filename>/usr</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:4382 +#: book.translate.xml:4389 msgid "<literal>exusrfs</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4389 +#: book.translate.xml:4396 msgid "" "After the custom partitions have been created, select <guibutton>[ Finish ]</" "guibutton> to continue with the installation." @@ -5799,12 +5799,12 @@ msgstr "" "自訂的分割區建立完後,選擇 <guibutton>[ Finish ]</guibutton> 繼續安裝。" #. (itstool) path: sect2/title -#: book.translate.xml:4395 +#: book.translate.xml:4402 msgid "Root-on-ZFS Automatic Partitioning" msgstr "Root-on-ZFS 自動磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4397 +#: book.translate.xml:4404 msgid "" "Support for automatic creation of root-on-ZFS installations was added in " "FreeBSD 10.0-RELEASE. This partitioning mode only works with whole disks and " @@ -5833,7 +5833,7 @@ msgstr "" "存池使用。" #. (itstool) path: sect2/para -#: book.translate.xml:4416 +#: book.translate.xml:4423 msgid "" "The main <acronym>ZFS</acronym> configuration menu offers a number of " "options to control the creation of the pool." @@ -5841,7 +5841,7 @@ msgstr "" "主要 <acronym>ZFS</acronym> 設定選單提供了數個設定選項來控制儲存池的建立。" #. (itstool) path: figure/title -#: book.translate.xml:4421 +#: book.translate.xml:4428 msgid "<acronym>ZFS</acronym> Partitioning Menu" msgstr "<acronym>ZFS</acronym> 磁碟分割選單" @@ -5850,13 +5850,13 @@ msgstr "<acronym>ZFS</acronym> 磁碟分割選單" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4425 +#: book.translate.xml:4432 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-menu' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4430 +#: book.translate.xml:4437 msgid "" "Select <keycap>T</keycap> to configure the <literal>Pool Type</literal> and " "the disk(s) that will constitute the pool. The automatic <acronym>ZFS</" @@ -5866,7 +5866,7 @@ msgid "" "pool. The installer supports the creation of various pool types, including " "stripe (not recommended, no redundancy), mirror (best performance, least " "usable space), and RAID-Z 1, 2, and 3 (with the capability to withstand the " -"concurrent failure of 1, 2, and 3 disks, respectively). while selecting the " +"concurrent failure of 1, 2, and 3 disks, respectively). While selecting the " "pool type, a tooltip is displayed across the bottom of the screen with " "advice about the number of required disks, and in the case of RAID-Z, the " "optimal number of disks for each configuration." @@ -5877,11 +5877,11 @@ msgstr "" "linkend=\"bsdinstall-part-shell\"/> 的操作來建立儲存池。安裝程式支援建立各種" "儲存池類型,包含串連 Stripe (不建議,沒有備援功能)、鏡像 Mirror (效能較佳,但" "可用空間較少) 以及 RAID-Z 1, 2, 與 3 (分別有能力承受同時 1, 2 與 3 個磁碟的損" -"壞)。在選擇儲存池類型時會有提示顯示在螢幕的下方,提示所需要的磁碟數以及在使" -"用 RAID-Z 時,每個配置最佳的磁碟數。" +"壞)。在選擇儲存池類型時會在螢幕的下方提示所需的磁碟數量,以及在使用 RAID-Z " +"時,每種配置最佳的磁碟數。" #. (itstool) path: figure/title -#: book.translate.xml:4447 +#: book.translate.xml:4454 msgid "<acronym>ZFS</acronym> Pool Type" msgstr "<acronym>ZFS</acronym> 儲存池類型" @@ -5890,13 +5890,13 @@ msgstr "<acronym>ZFS</acronym> 儲存池類型" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4451 +#: book.translate.xml:4458 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-vdev_type' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4456 +#: book.translate.xml:4463 msgid "" "Once a <literal>Pool Type</literal> has been selected, a list of available " "disks is displayed, and the user is prompted to select one or more disks to " @@ -5911,7 +5911,7 @@ msgstr "" "返回磁碟清單或取消 (<guibutton><Cancel></guibutton>) 來更改儲存池類型。" #. (itstool) path: figure/title -#: book.translate.xml:4466 +#: book.translate.xml:4473 msgid "Disk Selection" msgstr "磁碟選擇" @@ -5920,13 +5920,13 @@ msgstr "磁碟選擇" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4470 +#: book.translate.xml:4477 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-disk_select' md5='__failed__'" msgstr "" #. (itstool) path: figure/title -#: book.translate.xml:4476 +#: book.translate.xml:4483 msgid "Invalid Selection" msgstr "無效的選擇" @@ -5935,13 +5935,13 @@ msgstr "無效的選擇" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4480 +#: book.translate.xml:4487 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-vdev_invalid' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4485 +#: book.translate.xml:4492 msgid "" "If one or more disks are missing from the list, or if disks were attached " "after the installer was started, select <guibutton>- Rescan Devices</" @@ -5956,7 +5956,7 @@ msgstr "" "磁碟,包含磁碟中的分割表以及各種其他資訊如裝置型號與序號 (若有的話)。" #. (itstool) path: figure/title -#: book.translate.xml:4496 +#: book.translate.xml:4503 msgid "Analyzing a Disk" msgstr "分析磁碟" @@ -5965,13 +5965,13 @@ msgstr "分析磁碟" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4500 +#: book.translate.xml:4507 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-disk_info' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4505 +#: book.translate.xml:4512 msgid "" "The main <acronym>ZFS</acronym> configuration menu also allows the user to " "enter a pool name, disable forcing 4k sectors, enable or disable encryption, " @@ -5986,7 +5986,7 @@ msgstr "" "單上方的安裝 (<guibutton>>>> Install</guibutton>) 選項。" #. (itstool) path: sect2/para -#: book.translate.xml:4515 +#: book.translate.xml:4522 msgid "" "If <acronym>GELI</acronym> disk encryption was enabled, the installer will " "prompt twice for the passphrase to be used to encrypt the disks." @@ -5995,7 +5995,7 @@ msgstr "" "的密碼。" #. (itstool) path: figure/title -#: book.translate.xml:4520 +#: book.translate.xml:4527 msgid "Disk Encryption Password" msgstr "磁碟加密密碼" @@ -6004,13 +6004,13 @@ msgstr "磁碟加密密碼" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4524 +#: book.translate.xml:4531 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-geli_password' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4529 +#: book.translate.xml:4536 msgid "" "The installer then offers a last chance to cancel before the contents of the " "selected drives are destroyed to create the <acronym>ZFS</acronym> pool." @@ -6019,7 +6019,7 @@ msgstr "" "<acronym>ZFS</acronym> 儲存池的磁碟機。" #. (itstool) path: figure/title -#: book.translate.xml:4534 +#: book.translate.xml:4541 msgid "Last Chance" msgstr "最後修改" @@ -6028,23 +6028,23 @@ msgstr "最後修改" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4538 +#: book.translate.xml:4545 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-zfs-warning' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4543 +#: book.translate.xml:4550 msgid "The installation then proceeds normally." msgstr "然後安裝程序會正常繼續。" #. (itstool) path: sect2/title -#: book.translate.xml:4548 +#: book.translate.xml:4555 msgid "Shell Mode Partitioning" msgstr "Shell 模式磁碟分割" #. (itstool) path: sect2/para -#: book.translate.xml:4550 +#: book.translate.xml:4557 msgid "" "When creating advanced installations, the <application>bsdinstall</" "application> partitioning menus may not provide the level of flexibility " @@ -6063,12 +6063,12 @@ msgstr "" "<application>bsdinstall</application> 繼續安裝程序。" #. (itstool) path: sect1/title -#: book.translate.xml:4565 +#: book.translate.xml:4572 msgid "Committing to the Installation" msgstr "確認安裝" #. (itstool) path: sect1/para -#: book.translate.xml:4567 +#: book.translate.xml:4574 msgid "" "Once the disks are configured, the next menu provides the last chance to " "make changes before the selected hard drive(s) are formatted. If changes " @@ -6082,7 +6082,7 @@ msgstr "" "何變更。" #. (itstool) path: figure/title -#: book.translate.xml:4577 +#: book.translate.xml:4584 msgid "Final Confirmation" msgstr "最後確認" @@ -6091,14 +6091,14 @@ msgstr "最後確認" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4581 +#: book.translate.xml:4588 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-final-confirmation' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4586 +#: book.translate.xml:4593 msgid "" "To instead start the actual installation, select <guibutton>[ Commit ]</" "guibutton> and press <keycap>Enter</keycap>." @@ -6107,7 +6107,7 @@ msgstr "" "<keycap>Enter</keycap>。" #. (itstool) path: sect1/para -#: book.translate.xml:4590 +#: book.translate.xml:4597 msgid "" "Installation time will vary depending on the distributions chosen, " "installation media, and speed of the computer. A series of messages will " @@ -6117,7 +6117,7 @@ msgstr "" "訊息會告知目前的進度。" #. (itstool) path: sect1/para -#: book.translate.xml:4594 +#: book.translate.xml:4601 msgid "" "First, the installer formats the selected disk(s) and initializes the " "partitions. Next, in the case of a bootonly media, it downloads the selected " @@ -6127,7 +6127,7 @@ msgstr "" "(Boot only) 的媒體則會開始下載選擇的元件:" #. (itstool) path: figure/title -#: book.translate.xml:4599 +#: book.translate.xml:4606 msgid "Fetching Distribution Files" msgstr "取得發行版檔案" @@ -6136,13 +6136,13 @@ msgstr "取得發行版檔案" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4603 +#: book.translate.xml:4610 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-distfile-fetching' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4608 +#: book.translate.xml:4615 msgid "" "Next, the integrity of the distribution files is verified to ensure they " "have not been corrupted during download or misread from the installation " @@ -6152,7 +6152,7 @@ msgstr "" "取錯誤造成的損壞:" #. (itstool) path: figure/title -#: book.translate.xml:4613 +#: book.translate.xml:4620 msgid "Verifying Distribution Files" msgstr "檢驗發行版檔案" @@ -6161,19 +6161,19 @@ msgstr "檢驗發行版檔案" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4617 +#: book.translate.xml:4624 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-distfile-verifying' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4622 +#: book.translate.xml:4629 msgid "Finally, the verified distribution files are extracted to the disk:" msgstr "最後,檢驗過的發行版檔案會被取出儲存至磁碟:" #. (itstool) path: figure/title -#: book.translate.xml:4626 +#: book.translate.xml:4633 msgid "Extracting Distribution Files" msgstr "解開發行版檔案" @@ -6182,14 +6182,14 @@ msgstr "解開發行版檔案" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4630 +#: book.translate.xml:4637 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-distfile-extracting' md5='__failed__'" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:4635 +#: book.translate.xml:4642 msgid "" "Once all requested distribution files have been extracted, " "<application>bsdinstall</application> displays the first post-installation " @@ -6200,12 +6200,12 @@ msgstr "" "次安裝後設定畫面,可用的安裝後設定選項會在下一節說明。" #. (itstool) path: sect1/title -#: book.translate.xml:4643 +#: book.translate.xml:4650 msgid "Post-Installation" msgstr "安裝後注意事項" #. (itstool) path: sect1/para -#: book.translate.xml:4645 +#: book.translate.xml:4652 msgid "" "Once FreeBSD is installed, <application>bsdinstall</application> will prompt " "to configure several options before booting into the newly installed system. " @@ -6215,7 +6215,7 @@ msgstr "" "的系統之前提示設定數個選項,本節將介紹這些設定選項。" #. (itstool) path: tip/para -#: book.translate.xml:4651 +#: book.translate.xml:4658 msgid "" "Once the system has booted, <command>bsdconfig</command> provides a menu-" "driven method for configuring the system using these and additional options." @@ -6225,12 +6225,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:4658 book.translate.xml:4669 +#: book.translate.xml:4665 book.translate.xml:4676 msgid "Setting the <systemitem class=\"username\">root</systemitem> Password" msgstr "設定 <systemitem class=\"username\">root</systemitem> 密碼" #. (itstool) path: sect2/para -#: book.translate.xml:4662 +#: book.translate.xml:4669 msgid "" "First, the <systemitem class=\"username\">root</systemitem> password must be " "set. While entering the password, the characters being typed are not " @@ -6246,25 +6246,25 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4673 +#: book.translate.xml:4680 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-post-root-passwd' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4680 +#: book.translate.xml:4687 msgid "Configuring Network Interfaces" msgstr "設定網路介面卡" #. (itstool) path: sect2/para -#: book.translate.xml:4682 +#: book.translate.xml:4689 msgid "" "Next, a list of the network interfaces found on the computer is shown. " "Select the interface to configure." msgstr "接著,會顯示在電腦上找到的網路介面卡清單。請選擇要設定的介面卡。" #. (itstool) path: note/para -#: book.translate.xml:4686 +#: book.translate.xml:4693 msgid "" "The network configuration menus will be skipped if the network was " "previously configured as part of a <emphasis>bootonly</emphasis> " @@ -6274,7 +6274,7 @@ msgstr "" "網路設定選單。" #. (itstool) path: figure/title -#: book.translate.xml:4692 +#: book.translate.xml:4699 msgid "Choose a Network Interface" msgstr "選擇網路介面卡" @@ -6283,7 +6283,7 @@ msgstr "選擇網路介面卡" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4696 +#: book.translate.xml:4703 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface' " @@ -6291,7 +6291,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4701 +#: book.translate.xml:4708 msgid "" "If an Ethernet interface is selected, the installer will skip ahead to the " "menu shown in <xref linkend=\"bsdinstall-configure-net-ipv4\"/>. If a " @@ -6303,7 +6303,7 @@ msgstr "" "描無線存取點 (Wireless Access Point):" #. (itstool) path: figure/title -#: book.translate.xml:4707 +#: book.translate.xml:4714 msgid "Scanning for Wireless Access Points" msgstr "掃描無線網路存取點" @@ -6312,14 +6312,14 @@ msgstr "掃描無線網路存取點" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4711 +#: book.translate.xml:4718 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-scan' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4716 +#: book.translate.xml:4723 msgid "" "Wireless networks are identified by a Service Set Identifier (<acronym>SSID</" "acronym>), a short, unique name given to each network. <acronym>SSIDs</" @@ -6338,7 +6338,7 @@ msgstr "" "題,或者嘗試將電腦移至更靠近存取點的位置,然後再掃描一次。" #. (itstool) path: figure/title -#: book.translate.xml:4728 +#: book.translate.xml:4735 msgid "Choosing a Wireless Network" msgstr "選擇無線網路" @@ -6347,7 +6347,7 @@ msgstr "選擇無線網路" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4732 +#: book.translate.xml:4739 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-accesspoints' " @@ -6355,7 +6355,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4737 +#: book.translate.xml:4744 msgid "" "Next, enter the encryption information for connecting to the selected " "wireless network. <acronym>WPA2</acronym> encryption is strongly recommended " @@ -6370,7 +6370,7 @@ msgstr "" "(<acronym>PSK</acronym>)。考量安全性,輸入到輸入框的字元會以星號顯示。" #. (itstool) path: figure/title -#: book.translate.xml:4747 +#: book.translate.xml:4754 msgid "WPA2 Setup" msgstr "WPA2 設定" @@ -6379,7 +6379,7 @@ msgstr "WPA2 設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4751 +#: book.translate.xml:4758 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-wireless-wpa2setup' " @@ -6387,7 +6387,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4756 +#: book.translate.xml:4763 msgid "" "Next, choose whether or not an <acronym>IPv4</acronym> address should be " "configured on the Ethernet or wireless interface:" @@ -6396,7 +6396,7 @@ msgstr "" "址:" #. (itstool) path: figure/title -#: book.translate.xml:4761 +#: book.translate.xml:4768 msgid "Choose <acronym>IPv4</acronym> Networking" msgstr "選擇 <acronym>IPv4</acronym> 網路" @@ -6405,7 +6405,7 @@ msgstr "選擇 <acronym>IPv4</acronym> 網路" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4765 +#: book.translate.xml:4772 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4' " @@ -6413,7 +6413,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4770 +#: book.translate.xml:4777 msgid "" "There are two methods of <acronym>IPv4</acronym> configuration. " "<acronym>DHCP</acronym> will automatically configure the network interface " @@ -6426,7 +6426,7 @@ msgstr "" "手動輸入位址的資訊來做靜態設定。" #. (itstool) path: note/para -#: book.translate.xml:4778 +#: book.translate.xml:4785 msgid "" "Do not enter random network information as it will not work. If a " "<acronym>DHCP</acronym> server is not available, obtain the information " @@ -6438,7 +6438,7 @@ msgstr "" "列於 <xref linkend=\"bsdinstall-collect-network-information\"/> 的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:4785 +#: book.translate.xml:4792 msgid "" "If a <acronym>DHCP</acronym> server is available, select <guibutton>[ Yes ]</" "guibutton> in the next menu to automatically configure the network " @@ -6451,7 +6451,7 @@ msgstr "" "acronym> 伺服器並且取得系統的位址資訊時,安裝程式會出現一分鐘左右的停頓。" #. (itstool) path: figure/title -#: book.translate.xml:4793 +#: book.translate.xml:4800 msgid "Choose <acronym>IPv4</acronym> <acronym>DHCP</acronym> Configuration" msgstr "選擇 <acronym>IPv4</acronym> <acronym>DHCP</acronym> 設定" @@ -6460,7 +6460,7 @@ msgstr "選擇 <acronym>IPv4</acronym> <acronym>DHCP</acronym> 設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4798 +#: book.translate.xml:4805 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4-dhcp' " @@ -6468,7 +6468,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4803 +#: book.translate.xml:4810 msgid "" "If a <acronym>DHCP</acronym> server is not available, select " "<guibutton>[ No ]</guibutton> and input the following addressing information " @@ -6478,7 +6478,7 @@ msgstr "" "guibutton> 然後在這個選單中輸入以下位址資訊:" #. (itstool) path: figure/title -#: book.translate.xml:4808 +#: book.translate.xml:4815 msgid "<acronym>IPv4</acronym> Static Configuration" msgstr "<acronym>IPv4</acronym> 靜態位置設定" @@ -6487,7 +6487,7 @@ msgstr "<acronym>IPv4</acronym> 靜態位置設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4812 +#: book.translate.xml:4819 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv4-static' " @@ -6495,7 +6495,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:4819 +#: book.translate.xml:4826 msgid "" "<literal>IP Address</literal> - The <acronym>IPv4</acronym> address assigned " "to this computer. The address must be unique and not already in use by " @@ -6505,12 +6505,12 @@ msgstr "" "acronym> 位址。位址必須獨一無二且不可已被其他在區域網路上的設備使用。" #. (itstool) path: listitem/para -#: book.translate.xml:4826 +#: book.translate.xml:4833 msgid "<literal>Subnet Mask</literal> - The subnet mask for the network." msgstr "子網路遮罩 (<literal>Subnet Mask</literal>) - 網路的子網路遮罩。" #. (itstool) path: listitem/para -#: book.translate.xml:4831 +#: book.translate.xml:4838 msgid "" "<literal>Default Router</literal> - The <acronym>IP</acronym> address of the " "network's default gateway." @@ -6519,7 +6519,7 @@ msgstr "" "在網段的預設通訊閘。" #. (itstool) path: sect2/para -#: book.translate.xml:4837 +#: book.translate.xml:4844 msgid "" "The next screen will ask if the interface should be configured for " "<acronym>IPv6</acronym>. If <acronym>IPv6</acronym> is available and " @@ -6529,7 +6529,7 @@ msgstr "" "要使用 <acronym>IPv6</acronym>,請選擇 <guibutton>[ Yes ]</guibutton>。" #. (itstool) path: figure/title -#: book.translate.xml:4843 +#: book.translate.xml:4850 msgid "Choose IPv6 Networking" msgstr "選擇 IPv6 網路" @@ -6538,7 +6538,7 @@ msgstr "選擇 IPv6 網路" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4847 +#: book.translate.xml:4854 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv6' " @@ -6546,7 +6546,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4852 +#: book.translate.xml:4859 msgid "" "<acronym>IPv6</acronym> also has two methods of configuration. StateLess " "Address AutoConfiguration (<acronym>SLAAC</acronym>) will automatically " @@ -6562,7 +6562,7 @@ msgstr "" "則需要手動輸入網路資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:4860 +#: book.translate.xml:4867 msgid "" "If an <acronym>IPv6</acronym> router is available, select " "<guibutton>[ Yes ]</guibutton> in the next menu to automatically configure " @@ -6574,7 +6574,7 @@ msgstr "" "的位址資訊時,安裝程式會出現一分鐘左右的停頓。" #. (itstool) path: figure/title -#: book.translate.xml:4867 +#: book.translate.xml:4874 msgid "Choose IPv6 SLAAC Configuration" msgstr "選擇 IPv6 SLAAC 設定" @@ -6583,7 +6583,7 @@ msgstr "選擇 IPv6 SLAAC 設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4871 +#: book.translate.xml:4878 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-slaac' " @@ -6591,7 +6591,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4876 +#: book.translate.xml:4883 msgid "" "If an <acronym>IPv6</acronym> router is not available, select " "<guibutton>[ No ]</guibutton> and input the following addressing information " @@ -6601,7 +6601,7 @@ msgstr "" "guibutton> 然後在這個選單中輸入以下位址資訊:" #. (itstool) path: figure/title -#: book.translate.xml:4881 +#: book.translate.xml:4888 msgid "IPv6 Static Configuration" msgstr "IPv6 靜態位置設定" @@ -6610,7 +6610,7 @@ msgstr "IPv6 靜態位置設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4885 +#: book.translate.xml:4892 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-interface-ipv6-static' " @@ -6618,7 +6618,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:4892 +#: book.translate.xml:4899 msgid "" "<literal>IPv6 Address</literal> - The <acronym>IPv6</acronym> address " "assigned to this computer. The address must be unique and not already in use " @@ -6629,7 +6629,7 @@ msgstr "" "備使用。" #. (itstool) path: listitem/para -#: book.translate.xml:4899 +#: book.translate.xml:4906 msgid "" "<literal>Default Router</literal> - The <acronym>IPv6</acronym> address of " "the network's default gateway." @@ -6638,7 +6638,7 @@ msgstr "" "所在網段的預設通訊閘。" #. (itstool) path: sect2/para -#: book.translate.xml:4905 +#: book.translate.xml:4912 msgid "" "The last network configuration menu is used to configure the Domain Name " "System (<acronym>DNS</acronym>) resolver, which converts hostnames to and " @@ -6661,7 +6661,7 @@ msgstr "" "<acronym>DNS</acronym> 伺服器。" #. (itstool) path: figure/title -#: book.translate.xml:4919 +#: book.translate.xml:4926 msgid "DNS Configuration" msgstr "DNS 設定" @@ -6670,7 +6670,7 @@ msgstr "DNS 設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4923 +#: book.translate.xml:4930 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-configure-network-ipv4-dns' " @@ -6678,12 +6678,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:4930 +#: book.translate.xml:4937 msgid "Setting the Time Zone" msgstr "設定時區" #. (itstool) path: sect2/para -#: book.translate.xml:4932 +#: book.translate.xml:4939 msgid "" "The next menu asks if the system clock uses <acronym>UTC</acronym> or local " "time. When in doubt, select <guibutton>[ No ]</guibutton> to choose the more " @@ -6693,7 +6693,7 @@ msgstr "" "問時可選擇 <guibutton>[ No ]</guibutton>使用更常用的當地時間。" #. (itstool) path: figure/title -#: book.translate.xml:4938 +#: book.translate.xml:4945 msgid "Select Local or UTC Clock" msgstr "選擇本地或 UTC 時鐘" @@ -6702,14 +6702,14 @@ msgstr "選擇本地或 UTC 時鐘" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4942 +#: book.translate.xml:4949 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-set-clock-local-utc' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4947 +#: book.translate.xml:4954 msgid "" "The next series of menus are used to determine the correct local time by " "selecting the geographic region, country, and time zone. Setting the time " @@ -6722,7 +6722,7 @@ msgstr "" "能。" #. (itstool) path: sect2/para -#: book.translate.xml:4954 +#: book.translate.xml:4961 msgid "" "The example shown here is for a machine located in the Eastern time zone of " "the United States. The selections will vary according to the geographical " @@ -6730,7 +6730,7 @@ msgid "" msgstr "此處以位於美國東部時區的機器為例,選擇會依據地理位置不同改變。" #. (itstool) path: figure/title -#: book.translate.xml:4959 +#: book.translate.xml:4966 msgid "Select a Region" msgstr "選擇區域" @@ -6739,20 +6739,20 @@ msgstr "選擇區域" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4963 +#: book.translate.xml:4970 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-region' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4968 +#: book.translate.xml:4975 msgid "" "The appropriate region is selected using the arrow keys and then pressing " "<keycap>Enter</keycap>." msgstr "使用方向鍵選擇適當的區域然後按下 <keycap>Enter</keycap>。" #. (itstool) path: figure/title -#: book.translate.xml:4972 +#: book.translate.xml:4979 msgid "Select a Country" msgstr "選擇城市" @@ -6761,20 +6761,20 @@ msgstr "選擇城市" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4976 +#: book.translate.xml:4983 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-country' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4981 +#: book.translate.xml:4988 msgid "" "Select the appropriate country using the arrow keys and press <keycap>Enter</" "keycap>." msgstr "使用方向鍵選擇適當的城市然後按下 <keycap>Enter</keycap>。" #. (itstool) path: figure/title -#: book.translate.xml:4985 +#: book.translate.xml:4992 msgid "Select a Time Zone" msgstr "選擇時區" @@ -6783,20 +6783,20 @@ msgstr "選擇時區" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:4989 +#: book.translate.xml:4996 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-zone' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:4994 +#: book.translate.xml:5001 msgid "" "The appropriate time zone is selected using the arrow keys and pressing " "<keycap>Enter</keycap>." msgstr "使用方向鍵選擇適當的時區然後按下 <keycap>Enter</keycap>。" #. (itstool) path: figure/title -#: book.translate.xml:4998 +#: book.translate.xml:5005 msgid "Confirm Time Zone" msgstr "確認時區" @@ -6805,13 +6805,13 @@ msgstr "確認時區" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5002 +#: book.translate.xml:5009 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-timezone-confirm' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5007 +#: book.translate.xml:5014 msgid "" "Confirm the abbreviation for the time zone is correct. If it is, press " "<keycap>Enter</keycap> to continue with the post-installation configuration." @@ -6819,12 +6819,12 @@ msgstr "" "確認時區的縮寫是否正確,若正確,按下 <keycap>Enter</keycap> 繼續安裝後設定。" #. (itstool) path: sect2/title -#: book.translate.xml:5013 +#: book.translate.xml:5020 msgid "Enabling Services" msgstr "開啟服務" #. (itstool) path: sect2/para -#: book.translate.xml:5015 +#: book.translate.xml:5022 msgid "" "The next menu is used to configure which system services will be started " "whenever the system boots. All of these services are optional. Only start " @@ -6834,7 +6834,7 @@ msgstr "" "開啟系統運作真正需要的服務。" #. (itstool) path: figure/title -#: book.translate.xml:5021 +#: book.translate.xml:5028 msgid "Selecting Additional Services to Enable" msgstr "選擇要開啟的其他服務" @@ -6843,18 +6843,18 @@ msgstr "選擇要開啟的其他服務" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5025 +#: book.translate.xml:5032 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-services' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5030 +#: book.translate.xml:5037 msgid "Here is a summary of the services which can be enabled in this menu:" msgstr "這是可以在這個選單開啟的服務摘要:" #. (itstool) path: listitem/para -#: book.translate.xml:5035 +#: book.translate.xml:5042 msgid "" "<literal>sshd</literal> - The Secure Shell (<acronym>SSH</acronym>) daemon " "is used to remotely access a system over an encrypted connection. Only " @@ -6864,7 +6864,7 @@ msgstr "" "端透過加密的連線存取系統,只有在系統允許遠端登入時開啟這個服務。" #. (itstool) path: listitem/para -#: book.translate.xml:5043 +#: book.translate.xml:5050 msgid "" "<literal>moused</literal> - Enable this service if the mouse will be used " "from the command-line system console." @@ -6873,7 +6873,7 @@ msgstr "" "務。" #. (itstool) path: listitem/para -#: book.translate.xml:5049 +#: book.translate.xml:5056 msgid "" "<literal>ntpd</literal> - The Network Time Protocol (<acronym>NTP</acronym>) " "daemon for automatic clock synchronization. Enable this service if there is " @@ -6886,7 +6886,7 @@ msgstr "" "acronym> 伺服器時,可開啟此服務。" #. (itstool) path: listitem/para -#: book.translate.xml:5057 +#: book.translate.xml:5064 msgid "" "<literal>powerd</literal> - System power control utility for power control " "and energy saving." @@ -6894,12 +6894,12 @@ msgstr "<literal>powerd</literal> - 系統電源控制工具用來做電源控 #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:5064 book.translate.xml:5072 +#: book.translate.xml:5071 book.translate.xml:5079 msgid "Enabling Crash Dumps" msgstr "開啟當機資訊 (Crash Dump)" #. (itstool) path: sect2/para -#: book.translate.xml:5066 +#: book.translate.xml:5073 msgid "" "The next menu is used to configure whether or not crash dumps should be " "enabled. Enabling crash dumps can be useful in debugging issues with the " @@ -6913,18 +6913,18 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5076 +#: book.translate.xml:5083 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-config-crashdump' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:5083 +#: book.translate.xml:5090 msgid "Add Users" msgstr "新增使用者" #. (itstool) path: sect2/para -#: book.translate.xml:5085 +#: book.translate.xml:5092 msgid "" "The next menu prompts to create at least one user account. It is recommended " "to login to the system using a user account rather than as <systemitem class=" @@ -6939,12 +6939,12 @@ msgstr "" "使用一般使用者登入較保險且安全。" #. (itstool) path: sect2/para -#: book.translate.xml:5092 +#: book.translate.xml:5099 msgid "Select <guibutton>[ Yes ]</guibutton> to add new users." msgstr "選擇 <guibutton>[ Yes ]</guibutton> 來新增新使用者。" #. (itstool) path: figure/title -#: book.translate.xml:5096 +#: book.translate.xml:5103 msgid "Add User Accounts" msgstr "新增使用者帳號" @@ -6953,13 +6953,13 @@ msgstr "新增使用者帳號" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5100 +#: book.translate.xml:5107 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5105 +#: book.translate.xml:5112 msgid "" "Follow the prompts and input the requested information for the user account. " "The example shown in <xref linkend=\"bsdinstall-add-user2\"/> creates the " @@ -6970,7 +6970,7 @@ msgstr "" "號。" #. (itstool) path: figure/title -#: book.translate.xml:5109 +#: book.translate.xml:5116 msgid "Enter User Information" msgstr "輸入使用者資訊" @@ -6979,18 +6979,18 @@ msgstr "輸入使用者資訊" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5113 +#: book.translate.xml:5120 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5118 +#: book.translate.xml:5125 msgid "Here is a summary of the information to input:" msgstr "這裡是要輸入的資訊摘要:" #. (itstool) path: listitem/para -#: book.translate.xml:5122 +#: book.translate.xml:5129 msgid "" "<literal>Username</literal> - The name the user will enter to log in. A " "common convention is to use the first letter of the first name combined with " @@ -7002,7 +7002,7 @@ msgstr "" "區分大小寫且不應含有任何空白字元。" #. (itstool) path: listitem/para -#: book.translate.xml:5131 +#: book.translate.xml:5138 msgid "" "<literal>Full name</literal> - The user's full name. This can contain spaces " "and is used as a description for the user account." @@ -7011,7 +7011,7 @@ msgstr "" "用來描述該使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5137 +#: book.translate.xml:5144 msgid "" "<literal>Uid</literal> - User <acronym>ID</acronym>. Typically, this is left " "blank so the system will assign a value." @@ -7020,7 +7020,7 @@ msgstr "" "統會自動分配一個值。" #. (itstool) path: listitem/para -#: book.translate.xml:5143 +#: book.translate.xml:5150 msgid "" "<literal>Login group</literal> - The user's group. Typically this is left " "blank to accept the default." @@ -7029,7 +7029,7 @@ msgstr "" "來使用預設值。" #. (itstool) path: listitem/para -#: book.translate.xml:5148 +#: book.translate.xml:5155 msgid "" "<literal>Invite <replaceable>user</replaceable> into other groups?</literal> " "- Additional groups to which the user will be added as a member. If the user " @@ -7040,12 +7040,12 @@ msgstr "" "需要管理權限,則在此輸入 <literal>wheel</literal>。" #. (itstool) path: listitem/para -#: book.translate.xml:5156 +#: book.translate.xml:5163 msgid "<literal>Login class</literal> - Typically left blank for the default." msgstr "登入類別 (<literal>Login class</literal>) - 通常會留空來使用預設值。" #. (itstool) path: listitem/para -#: book.translate.xml:5161 +#: book.translate.xml:5168 msgid "" "<literal>Shell</literal> - Type in one of the listed values to set the " "interactive shell for the user. Refer to <xref linkend=\"shells\"/> for more " @@ -7055,7 +7055,7 @@ msgstr "" "參考 <xref linkend=\"shells\"/> 取得更多有關 Shell 的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:5168 +#: book.translate.xml:5175 msgid "" "<literal>Home directory</literal> - The user's home directory. The default " "is usually correct." @@ -7064,7 +7064,7 @@ msgstr "" "問題的。" #. (itstool) path: listitem/para -#: book.translate.xml:5173 +#: book.translate.xml:5180 msgid "" "<literal>Home directory permissions</literal> - Permissions on the user's " "home directory. The default is usually correct." @@ -7073,7 +7073,7 @@ msgstr "" "限,預設值通常是沒有問題的。" #. (itstool) path: listitem/para -#: book.translate.xml:5179 +#: book.translate.xml:5186 msgid "" "<literal>Use password-based authentication?</literal> - Typically " "<literal>yes</literal> so that the user is prompted to input their password " @@ -7083,7 +7083,7 @@ msgstr "" "literal>) - 通常為是 (<literal>yes</literal>),使用者才可於登入時輸入密碼。" #. (itstool) path: listitem/para -#: book.translate.xml:5185 +#: book.translate.xml:5192 msgid "" "<literal>Use an empty password?</literal> - Typically <literal>no</literal> " "as it is insecure to have a blank password." @@ -7092,7 +7092,7 @@ msgstr "" "(<literal>no</literal>),因為使用空白密碼並不安全。" #. (itstool) path: listitem/para -#: book.translate.xml:5191 +#: book.translate.xml:5198 msgid "" "<literal>Use a random password?</literal> - Typically <literal>no</literal> " "so that the user can set their own password in the next prompt." @@ -7101,7 +7101,7 @@ msgstr "" "(<literal>no</literal>),這樣使用者接下來才可設定自己的密碼。" #. (itstool) path: listitem/para -#: book.translate.xml:5197 +#: book.translate.xml:5204 msgid "" "<literal>Enter password</literal> - The password for this user. Characters " "typed will not show on the screen." @@ -7110,7 +7110,7 @@ msgstr "" "會顯示在畫面上。" #. (itstool) path: listitem/para -#: book.translate.xml:5203 +#: book.translate.xml:5210 msgid "" "<literal>Enter password again</literal> - The password must be typed again " "for verification." @@ -7119,7 +7119,7 @@ msgstr "" "認無誤。" #. (itstool) path: listitem/para -#: book.translate.xml:5208 +#: book.translate.xml:5215 msgid "" "<literal>Lock out the account after creation?</literal> - Typically " "<literal>no</literal> so that the user can login." @@ -7128,7 +7128,7 @@ msgstr "" "literal>) - 通常為否 (<literal>no</literal>),這樣使用者才可以登入。" #. (itstool) path: sect2/para -#: book.translate.xml:5214 +#: book.translate.xml:5221 msgid "" "After entering everything, a summary is shown for review. If a mistake was " "made, enter <literal>no</literal> and try again. If everything is correct, " @@ -7139,7 +7139,7 @@ msgstr "" "literal>) 以後便會建立新使用者。" #. (itstool) path: figure/title -#: book.translate.xml:5220 +#: book.translate.xml:5227 msgid "Exit User and Group Management" msgstr "離開使用者與群組管理" @@ -7148,13 +7148,13 @@ msgstr "離開使用者與群組管理" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5224 +#: book.translate.xml:5231 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-adduser3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5229 +#: book.translate.xml:5236 msgid "" "If there are more users to add, answer the <literal>Add another user?</" "literal> question with <literal>yes</literal>. Enter <literal>no</literal> " @@ -7165,7 +7165,7 @@ msgstr "" "literal>) 來完成加入使用者然後繼續安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:5234 +#: book.translate.xml:5241 msgid "" "For more information on adding users and user management, see <xref linkend=" "\"users-synopsis\"/>." @@ -7175,12 +7175,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: figure/title -#: book.translate.xml:5239 book.translate.xml:5245 +#: book.translate.xml:5246 book.translate.xml:5252 msgid "Final Configuration" msgstr "最後設定" #. (itstool) path: sect2/para -#: book.translate.xml:5241 +#: book.translate.xml:5248 msgid "" "After everything has been installed and configured, a final chance is " "provided to modify settings." @@ -7191,21 +7191,21 @@ msgstr "在所有東西安裝並設定完之後,會提供最後一次修改設 #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5249 +#: book.translate.xml:5256 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-finalconfiguration' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5254 +#: book.translate.xml:5261 msgid "" "Use this menu to make any changes or do any additional configuration before " "completing the installation." msgstr "使用這個選單在完成安裝前做任何更改或做任何額外的設定。" #. (itstool) path: listitem/para -#: book.translate.xml:5259 +#: book.translate.xml:5266 msgid "" "<literal>Add User</literal> - Described in <xref linkend=\"bsdinstall-" "addusers\"/>." @@ -7214,7 +7214,7 @@ msgstr "" "addusers\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5263 +#: book.translate.xml:5270 msgid "" "<literal>Root Password</literal> - Described in <xref linkend=\"bsdinstall-" "post-root\"/>." @@ -7223,7 +7223,7 @@ msgstr "" "\"bsdinstall-post-root\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5267 +#: book.translate.xml:5274 msgid "" "<literal>Hostname</literal> - Described in <xref linkend=\"bsdinstall-" "hostname\"/>." @@ -7232,7 +7232,7 @@ msgstr "" "hostname\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5271 +#: book.translate.xml:5278 msgid "" "<literal>Network</literal> - Described in <xref linkend=\"bsdinstall-config-" "network-dev\"/>." @@ -7241,7 +7241,7 @@ msgstr "" "network-dev\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5275 +#: book.translate.xml:5282 msgid "" "<literal>Services</literal> - Described in <xref linkend=\"bsdinstall-sysconf" "\"/>." @@ -7250,7 +7250,7 @@ msgstr "" "sysconf\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5279 +#: book.translate.xml:5286 msgid "" "<literal>Time Zone</literal> - Described in <xref linkend=\"bsdinstall-" "timezone\"/>." @@ -7259,13 +7259,13 @@ msgstr "" "timezone\"/>。" #. (itstool) path: listitem/para -#: book.translate.xml:5283 +#: book.translate.xml:5290 msgid "" "<literal>Handbook</literal> - Download and install the FreeBSD Handbook." msgstr "使用手冊 (<literal>Handbook</literal>) - 下載並安裝 FreeBSD 使用手冊。" #. (itstool) path: sect2/para -#: book.translate.xml:5288 +#: book.translate.xml:5295 msgid "" "After any final configuration is complete, select <guibutton>Exit</" "guibutton>." @@ -7273,7 +7273,7 @@ msgstr "完成最後的設定之後,選擇 <guibutton>Exit</guibutton>。" #. (itstool) path: figure/title #. (itstool) path: sect2/title -#: book.translate.xml:5292 book.translate.xml:11491 +#: book.translate.xml:5299 book.translate.xml:11498 msgid "Manual Configuration" msgstr "手動設定" @@ -7282,7 +7282,7 @@ msgstr "手動設定" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5296 +#: book.translate.xml:5303 msgctxt "_" msgid "" "external ref='bsdinstall/bsdinstall-final-modification-shell' " @@ -7290,7 +7290,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5301 +#: book.translate.xml:5308 msgid "" "<application>bsdinstall</application> will prompt if there are any " "additional configuration that needs to be done before rebooting into the new " @@ -7303,7 +7303,7 @@ msgstr "" "的 Shell 或 <guibutton>[ No ]</guibutton> 繼續最後的安裝步驟。" #. (itstool) path: figure/title -#: book.translate.xml:5310 +#: book.translate.xml:5317 msgid "Complete the Installation" msgstr "完成安裝" @@ -7312,13 +7312,13 @@ msgstr "完成安裝" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:5314 +#: book.translate.xml:5321 msgctxt "_" msgid "external ref='bsdinstall/bsdinstall-mainexit' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5319 +#: book.translate.xml:5326 msgid "" "If further configuration or special setup is needed, select " "<guibutton>[ Live CD ]</guibutton> to boot the install media into Live " @@ -7328,7 +7328,7 @@ msgstr "" "進入安裝媒體的 Live <acronym>CD</acronym> 模式。" #. (itstool) path: sect2/para -#: book.translate.xml:5324 +#: book.translate.xml:5331 msgid "" "If the installation is complete, select <guibutton>[ Reboot ]</guibutton> to " "reboot the computer and start the new FreeBSD system. Do not forget to " @@ -7339,7 +7339,7 @@ msgstr "" "式。" #. (itstool) path: sect2/para -#: book.translate.xml:5330 +#: book.translate.xml:5337 msgid "" "As FreeBSD boots, informational messages are displayed. After the system " "finishes booting, a login prompt is displayed. At the <prompt>login:</" @@ -7354,7 +7354,7 @@ msgstr "" "\"users-superuser\"/> 來取得當需要管理權限時如何成為超級使用者的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:5339 +#: book.translate.xml:5346 msgid "" "The messages that appeared during boot can be reviewed by pressing " "<keycap>Scroll-Lock</keycap> to turn on the scroll-back buffer. The " @@ -7373,7 +7373,7 @@ msgstr "" "列。" #. (itstool) path: sect2/para -#: book.translate.xml:5351 +#: book.translate.xml:5358 msgid "" "If <application>sshd</application> was enabled in <xref linkend=\"bsdinstall-" "config-serv\"/>, the first boot may be a bit slower as the system will " @@ -7387,7 +7387,7 @@ msgstr "" "(Fingerprint),如這個範例:" #. (itstool) path: sect2/screen -#: book.translate.xml:5357 +#: book.translate.xml:5364 #, no-wrap msgid "" "Generating public/private rsa1 key pair.\n" @@ -7428,7 +7428,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5393 +#: book.translate.xml:5400 msgid "" "Refer to <xref linkend=\"openssh\"/> for more information about fingerprints " "and <acronym>SSH</acronym>." @@ -7437,7 +7437,7 @@ msgstr "" "acronym> 的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:5396 +#: book.translate.xml:5403 msgid "" "FreeBSD does not install a graphical environment by default. Refer to <xref " "linkend=\"x11\"/> for more information about installing and configuring a " @@ -7447,7 +7447,7 @@ msgstr "" "與設定圖型化視窗管理程式的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:5400 +#: book.translate.xml:5407 msgid "" "Proper shutdown of a FreeBSD computer helps protect data and hardware from " "damage. <emphasis>Do not turn off the power before the system has been " @@ -7468,27 +7468,27 @@ msgstr "" #. (itstool) path: sect1/title #. (itstool) path: sect2/title #. (itstool) path: sect3/title -#: book.translate.xml:5413 book.translate.xml:12443 book.translate.xml:15206 -#: book.translate.xml:20381 book.translate.xml:35537 book.translate.xml:36307 -#: book.translate.xml:47947 book.translate.xml:51193 book.translate.xml:62289 -#: book.translate.xml:63944 book.translate.xml:64667 +#: book.translate.xml:5420 book.translate.xml:12450 book.translate.xml:15213 +#: book.translate.xml:20388 book.translate.xml:35671 book.translate.xml:36441 +#: book.translate.xml:47568 book.translate.xml:50814 book.translate.xml:61911 +#: book.translate.xml:63571 book.translate.xml:64294 msgid "Troubleshooting" msgstr "疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5415 +#: book.translate.xml:5422 msgid "<primary>installation</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5419 +#: book.translate.xml:5426 msgid "" "This section covers basic installation troubleshooting, such as common " "problems people have reported." msgstr "本節涵蓋基礎的安裝疑難排解,例如一些已有人回報的常見問題。" #. (itstool) path: sect1/para -#: book.translate.xml:5423 +#: book.translate.xml:5430 msgid "" "Check the Hardware Notes (<link xlink:href=\"@@URL_RELPREFIX@@/releases/" "index.html\">http://www.freebsd.org/releases/index.html</link>) document for " @@ -7512,7 +7512,7 @@ msgstr "" "訴 FreeBSD 到那找到這些裝置。" #. (itstool) path: note/para -#: book.translate.xml:5437 +#: book.translate.xml:5444 msgid "" "Some installation problems can be avoided or alleviated by updating the " "firmware on various hardware components, most notably the motherboard. " @@ -7525,7 +7525,7 @@ msgstr "" "得升級程式與升級資訊。" #. (itstool) path: note/para -#: book.translate.xml:5444 +#: book.translate.xml:5451 msgid "" "Manufacturers generally advise against upgrading the motherboard " "<acronym>BIOS</acronym> unless there is a good reason for doing so, like a " @@ -7535,7 +7535,7 @@ msgstr "" "製造商通常會建議若沒有特殊原因盡量避免升級主機板 <acronym>BIOS</acronym>" #. (itstool) path: sect1/para -#: book.translate.xml:5452 +#: book.translate.xml:5459 msgid "" "If the system hangs while probing hardware during boot, or it behaves " "strangely during install, <acronym>ACPI</acronym> may be the culprit. " @@ -7555,13 +7555,13 @@ msgstr "" "disabled</literal> Hint 來關閉 <acronym>ACPI</acronym>:" #. (itstool) path: sect1/screen -#: book.translate.xml:5464 +#: book.translate.xml:5471 #, no-wrap msgid "<userinput>set hint.acpi.0.disabled=\"1\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5466 +#: book.translate.xml:5473 msgid "" "This is reset each time the system is booted, so it is necessary to add " "<literal>hint.acpi.0.disabled=\"1\"</literal> to the file <filename>/boot/" @@ -7573,12 +7573,12 @@ msgstr "" "機載入程式的資訊可於 <xref linkend=\"boot-synopsis\"/> 取得。" #. (itstool) path: sect1/title -#: book.translate.xml:5473 +#: book.translate.xml:5480 msgid "Using the Live <acronym>CD</acronym>" msgstr "使用 Live <acronym>CD</acronym>" #. (itstool) path: sect1/para -#: book.translate.xml:5475 +#: book.translate.xml:5482 msgid "" "The welcome menu of <application>bsdinstall</application>, shown in <xref " "linkend=\"bsdinstall-choose-mode\"/>, provides a <guibutton>[ Live CD ]</" @@ -7592,14 +7592,14 @@ msgstr "" "測試一部份功能。" #. (itstool) path: sect1/para -#: book.translate.xml:5482 +#: book.translate.xml:5489 msgid "" "The following points should be noted before using the " "<guibutton>[ Live CD ]</guibutton>:" msgstr "在使用 <guibutton>[ Live CD ]</guibutton> 之前必須注意以下幾點事項:" #. (itstool) path: listitem/para -#: book.translate.xml:5487 +#: book.translate.xml:5494 msgid "" "To gain access to the system, authentication is required. The username is " "<systemitem class=\"username\">root</systemitem> and the password is blank." @@ -7608,25 +7608,25 @@ msgstr "" "\">root</systemitem> 而密碼則是空白。" #. (itstool) path: listitem/para -#: book.translate.xml:5493 +#: book.translate.xml:5500 msgid "" "As the system runs directly from the installation media, performance will be " "significantly slower than that of a system installed on a hard disk." msgstr "系統是直接從安裝媒體上執行,比起安裝到硬碟的系統,效能可能較差。" #. (itstool) path: listitem/para -#: book.translate.xml:5499 +#: book.translate.xml:5506 msgid "" "This option only provides a command prompt and not a graphical interface." msgstr "這個選項只提供指令提示,不會有圖型化介面。" #. (itstool) path: chapter/title -#: book.translate.xml:5524 +#: book.translate.xml:5531 msgid "FreeBSD Basics" msgstr "FreeBSD 基礎" #. (itstool) path: sect1/para -#: book.translate.xml:5529 +#: book.translate.xml:5536 msgid "" "This chapter covers the basic commands and functionality of the FreeBSD " "operating system. Much of this material is relevant for any <trademark class=" @@ -7639,17 +7639,17 @@ msgstr "" "細的讀完這章。" #. (itstool) path: listitem/para -#: book.translate.xml:5538 +#: book.translate.xml:5545 msgid "How to use and configure virtual consoles." msgstr "如何使用 FreeBSD 的虛擬 Console。" #. (itstool) path: listitem/para -#: book.translate.xml:5542 +#: book.translate.xml:5549 msgid "How to create and manage users and groups on FreeBSD." msgstr "如何在 FreeBSD 建立與管理使用者與群組。" #. (itstool) path: listitem/para -#: book.translate.xml:5547 +#: book.translate.xml:5554 msgid "" "How <trademark class=\"registered\">UNIX</trademark> file permissions and " "FreeBSD file flags work." @@ -7658,68 +7658,68 @@ msgstr "" "記的運作方式。" #. (itstool) path: listitem/para -#: book.translate.xml:5552 +#: book.translate.xml:5559 msgid "The default FreeBSD file system layout." msgstr "預設的 FreeBSD 檔案系統配置。" #. (itstool) path: listitem/para -#: book.translate.xml:5556 +#: book.translate.xml:5563 msgid "The FreeBSD disk organization." msgstr "FreeBSD 的磁碟組織。" #. (itstool) path: listitem/para -#: book.translate.xml:5560 +#: book.translate.xml:5567 msgid "How to mount and unmount file systems." msgstr "如何掛載 (Mount)、卸載 (Umount) 檔案系統。" #. (itstool) path: listitem/para -#: book.translate.xml:5564 +#: book.translate.xml:5571 msgid "What processes, daemons, and signals are." msgstr "什麼是程序、Daemon 以及信號 (Signal)。" #. (itstool) path: listitem/para -#: book.translate.xml:5568 +#: book.translate.xml:5575 msgid "What a shell is, and how to change the default login environment." msgstr "什麼是 Shell,以及如何變更您預設的登入環境。" #. (itstool) path: listitem/para -#: book.translate.xml:5573 +#: book.translate.xml:5580 msgid "How to use basic text editors." msgstr "如何使用基本的文字編輯器。" #. (itstool) path: listitem/para -#: book.translate.xml:5577 +#: book.translate.xml:5584 msgid "What devices and device nodes are." msgstr "什麼是裝置 (Device) 和裝置節點 (Device node)。" #. (itstool) path: listitem/para -#: book.translate.xml:5581 +#: book.translate.xml:5588 msgid "How to read manual pages for more information." msgstr "如何閱讀操作手冊以獲得更多的資訊。" #. (itstool) path: sect1/title -#: book.translate.xml:5587 +#: book.translate.xml:5594 msgid "Virtual Consoles and Terminals" msgstr "虛擬 Console 與終端機" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5589 +#: book.translate.xml:5596 msgid "<primary>virtual consoles</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:5592 book.translate.xml:47229 +#: book.translate.xml:5599 book.translate.xml:46850 msgid "<primary>terminals</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect3/indexterm -#: book.translate.xml:5595 book.translate.xml:23363 +#: book.translate.xml:5602 book.translate.xml:23370 msgid "<primary>console</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5599 +#: book.translate.xml:5606 msgid "" "Unless FreeBSD has been configured to automatically start a graphical " "environment during startup, the system will boot into a command line login " @@ -7729,7 +7729,7 @@ msgstr "" "是這樣的東西:" #. (itstool) path: sect1/screen -#: book.translate.xml:5604 +#: book.translate.xml:5611 #, no-wrap msgid "" "FreeBSD/amd64 (pc3.example.org) (ttyv0)\n" @@ -7738,7 +7738,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:5608 +#: book.translate.xml:5615 msgid "" "The first line contains some information about the system. The " "<literal>amd64</literal> indicates that the system in this example is " @@ -7752,7 +7752,7 @@ msgstr "" "quote>。第二行則是登人的提示訊息。" #. (itstool) path: sect1/para -#: book.translate.xml:5616 +#: book.translate.xml:5623 msgid "" "Since FreeBSD is a multiuser system, it needs some way to distinguish " "between different users. This is accomplished by requiring every user to log " @@ -7766,7 +7766,7 @@ msgstr "" "(<quote>password</quote>)。" #. (itstool) path: sect1/para -#: book.translate.xml:5623 +#: book.translate.xml:5630 msgid "" "To log into the system console, type the username that was configured during " "system installation, as described in <xref linkend=\"bsdinstall-addusers\"/" @@ -7780,7 +7780,7 @@ msgstr "" "示</emphasis>在畫面上。" #. (itstool) path: sect1/para -#: book.translate.xml:5631 +#: book.translate.xml:5638 msgid "" "Once the correct password is input, the message of the day (<acronym>MOTD</" "acronym>) will be displayed followed by a command prompt. Depending upon the " @@ -7796,12 +7796,12 @@ msgstr "" "Console 且已經準備好可以下指令。" #. (itstool) path: sect2/title -#: book.translate.xml:5641 +#: book.translate.xml:5648 msgid "Virtual Consoles" msgstr "虛擬 Console" #. (itstool) path: sect2/para -#: book.translate.xml:5643 +#: book.translate.xml:5650 msgid "" "While the system console can be used to interact with the system, a user " "working from the command line at the keyboard of a FreeBSD system will " @@ -7815,7 +7815,7 @@ msgstr "" "這些訊些會在使用者作業的過程中不斷出現,讓使用者難以專心作業。" #. (itstool) path: sect2/para -#: book.translate.xml:5652 +#: book.translate.xml:5659 msgid "" "By default, FreeBSD is configured to provide several virtual consoles for " "inputting commands. Each virtual console has its own login prompt and shell " @@ -7828,7 +7828,7 @@ msgstr "" "於圖型化環境中可以同時開啟多個視窗的功能。" #. (itstool) path: sect2/para -#: book.translate.xml:5659 +#: book.translate.xml:5666 msgid "" "The key combinations <keycombo><keycap>Alt</keycap><keycap>F1</keycap></" "keycombo> through <keycombo><keycap>Alt</keycap><keycap>F8</keycap></" @@ -7850,7 +7850,7 @@ msgstr "" "(<filename>ttyv2</filename>),以此類推。" #. (itstool) path: sect2/para -#: book.translate.xml:5675 +#: book.translate.xml:5682 msgid "" "When switching from one console to the next, FreeBSD manages the screen " "output. The result is an illusion of having multiple virtual screens and " @@ -7863,7 +7863,7 @@ msgstr "" "Console 上執行的程式並不會因為使用者切到別的 Console 而停止執行。" #. (itstool) path: sect2/para -#: book.translate.xml:5682 +#: book.translate.xml:5689 msgid "" "Refer to <citerefentry><refentrytitle>kbdcontrol</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, " @@ -7885,7 +7885,7 @@ msgstr "" "citerefentry> 來取得更多有關 FreeBSD Console 及鍵盤驅動程式的技術說明。" #. (itstool) path: sect2/para -#: book.translate.xml:5687 +#: book.translate.xml:5694 msgid "" "In FreeBSD, the number of available virtual consoles is configured in this " "section of <filename>/etc/ttys</filename>:" @@ -7894,7 +7894,7 @@ msgstr "" "列章節:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5691 +#: book.translate.xml:5698 #, no-wrap msgid "" "# name getty type status comments\n" @@ -7912,7 +7912,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5705 +#: book.translate.xml:5712 msgid "" "To disable a virtual console, put a comment symbol (<literal>#</literal>) at " "the beginning of the line representing that virtual console. For example, to " @@ -7934,7 +7934,7 @@ msgstr "" "個虛擬 Console (<filename>ttyv8</filename>)。" #. (itstool) path: sect2/para -#: book.translate.xml:5719 +#: book.translate.xml:5726 msgid "" "For a detailed description of every column in this file and the available " "options for the virtual consoles, refer to " @@ -7945,12 +7945,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 說明。" #. (itstool) path: sect2/title -#: book.translate.xml:5725 +#: book.translate.xml:5732 msgid "Single User Mode" msgstr "單使用者模式" #. (itstool) path: sect2/para -#: book.translate.xml:5727 +#: book.translate.xml:5734 msgid "" "The FreeBSD boot menu provides an option labelled as <quote>Boot Single " "User</quote>. If this option is selected, the system will boot into a " @@ -7975,7 +7975,7 @@ msgstr "" "鍵盤的人員。" #. (itstool) path: sect2/para -#: book.translate.xml:5743 +#: book.translate.xml:5750 msgid "" "The settings which control single user mode are found in this section of " "<filename>/etc/ttys</filename>:" @@ -7984,7 +7984,7 @@ msgstr "" "到:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5746 +#: book.translate.xml:5753 #, no-wrap msgid "" "# name getty type status comments\n" @@ -7995,7 +7995,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5752 +#: book.translate.xml:5759 msgid "" "By default, the status is set to <literal>secure</literal>. This assumes " "that who has physical access to the keyboard is either not important or it " @@ -8014,7 +8014,7 @@ msgstr "" "碼。" #. (itstool) path: note/para -#: book.translate.xml:5764 +#: book.translate.xml:5771 msgid "" "<emphasis>Be careful when changing this setting to <literal>insecure</" "literal></emphasis>! If the <systemitem class=\"username\">root</systemitem> " @@ -8027,12 +8027,12 @@ msgstr "" "有其他辦法可以登入單使用者模式,只是對不熟 FreeBSD 開機程序的人可就麻煩了。" #. (itstool) path: sect2/title -#: book.translate.xml:5774 +#: book.translate.xml:5781 msgid "Changing Console Video Modes" msgstr "更改 Console 影像模式" #. (itstool) path: sect2/para -#: book.translate.xml:5776 +#: book.translate.xml:5783 msgid "" "The FreeBSD console default video mode may be adjusted to 1024x768, " "1280x1024, or any other size supported by the graphics chip and monitor. To " @@ -8043,13 +8043,13 @@ msgstr "" "組:" #. (itstool) path: sect2/screen -#: book.translate.xml:5781 +#: book.translate.xml:5788 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vesa</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5783 +#: book.translate.xml:5790 msgid "" "To determine which video modes are supported by the hardware, use " "<citerefentry><refentrytitle>vidcontrol</refentrytitle><manvolnum>1</" @@ -8061,13 +8061,13 @@ msgstr "" "清單可輸入以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:5787 +#: book.translate.xml:5794 #, no-wrap msgid "<prompt>#</prompt> <userinput>vidcontrol -i mode</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5789 +#: book.translate.xml:5796 msgid "" "The output of this command lists the video modes that are supported by the " "hardware. To select a new video mode, specify the mode using " @@ -8081,13 +8081,13 @@ msgstr "" "manvolnum></citerefentry> 指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:5794 +#: book.translate.xml:5801 #, no-wrap msgid "<prompt>#</prompt> <userinput>vidcontrol MODE_279</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:5796 +#: book.translate.xml:5803 msgid "" "If the new video mode is acceptable, it can be permanently set on boot by " "adding it to <filename>/etc/rc.conf</filename>:" @@ -8096,18 +8096,18 @@ msgstr "" "次重開機後會自動生效:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:5800 +#: book.translate.xml:5807 #, no-wrap msgid "allscreens_flags=\"MODE_279\"" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:5817 +#: book.translate.xml:5824 msgid "Users and Basic Account Management" msgstr "使用者與基礎帳號管理" #. (itstool) path: sect1/para -#: book.translate.xml:5819 +#: book.translate.xml:5826 msgid "" "FreeBSD allows multiple users to use the computer at the same time. While " "only one user can sit in front of the screen and use the keyboard at any one " @@ -8119,39 +8119,39 @@ msgstr "" "用者應有自己的帳號。" #. (itstool) path: sect1/para -#: book.translate.xml:5825 +#: book.translate.xml:5832 msgid "This chapter describes:" msgstr "本章介紹︰" #. (itstool) path: listitem/para -#: book.translate.xml:5829 +#: book.translate.xml:5836 msgid "The different types of user accounts on a FreeBSD system." msgstr "FreeBSD 系統中各種類型的使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5834 +#: book.translate.xml:5841 msgid "How to add, remove, and modify user accounts." msgstr "如何加入、移除與修改使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:5838 +#: book.translate.xml:5845 msgid "" "How to set limits to control the resources that users and groups are allowed " "to access." msgstr "如何設定用來控制使用者與群組允許存取的資源的限制。" #. (itstool) path: listitem/para -#: book.translate.xml:5844 +#: book.translate.xml:5851 msgid "How to create groups and add users as members of a group." msgstr "如何建立群組與加入使用者作為群組成員。" #. (itstool) path: sect2/title -#: book.translate.xml:5850 +#: book.translate.xml:5857 msgid "Account Types" msgstr "帳號類型" #. (itstool) path: sect2/para -#: book.translate.xml:5852 +#: book.translate.xml:5859 msgid "" "Since all access to the FreeBSD system is achieved using accounts and all " "processes are run by users, user and account management is important." @@ -8160,24 +8160,24 @@ msgstr "" "者來執行,因此使用者帳號管理非常重要。" #. (itstool) path: sect2/para -#: book.translate.xml:5856 +#: book.translate.xml:5863 msgid "" "There are three main types of accounts: system accounts, user accounts, and " "the superuser account." msgstr "有三種主要類型的帳號:系統帳號、使用者帳號以及超級使用者帳號。" #. (itstool) path: sect3/title -#: book.translate.xml:5860 +#: book.translate.xml:5867 msgid "System Accounts" msgstr "系統帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5862 +#: book.translate.xml:5869 msgid "<primary>accounts</primary> <secondary>system</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5867 +#: book.translate.xml:5874 msgid "" "System accounts are used to run services such as DNS, mail, and web servers. " "The reason for this is security; if all services ran as the superuser, they " @@ -8187,21 +8187,21 @@ msgstr "" "若所有的服務均以超級使用者來執行,那麼這些服務的運作將不會受到限制。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5872 +#: book.translate.xml:5879 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">daemon</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5876 +#: book.translate.xml:5883 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">operator</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5881 +#: book.translate.xml:5888 msgid "" "Examples of system accounts are <systemitem class=\"username\">daemon</" "systemitem>, <systemitem class=\"username\">operator</systemitem>, " @@ -8215,14 +8215,14 @@ msgstr "" "systemitem>, and <systemitem class=\"username\">www</systemitem>。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5888 +#: book.translate.xml:5895 msgid "" "<primary>accounts</primary> <secondary><systemitem class=\"username" "\">nobody</systemitem></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5893 +#: book.translate.xml:5900 msgid "" "<systemitem class=\"username\">nobody</systemitem> is the generic " "unprivileged system account. However, the more services that use <systemitem " @@ -8236,17 +8236,17 @@ msgstr "" "限。" #. (itstool) path: sect3/title -#: book.translate.xml:5902 +#: book.translate.xml:5909 msgid "User Accounts" msgstr "使用者帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:5904 +#: book.translate.xml:5911 msgid "<primary>accounts</primary> <secondary>user</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:5909 +#: book.translate.xml:5916 msgid "" "User accounts are assigned to real people and are used to log in and use the " "system. Every person accessing the system should have a unique user account. " @@ -8258,7 +8258,7 @@ msgstr "" "的設定。" #. (itstool) path: sect3/para -#: book.translate.xml:5915 +#: book.translate.xml:5922 msgid "" "Each user can set up their own environment to accommodate their use of the " "system, by configuring their default shell, editor, key bindings, and " @@ -8268,19 +8268,19 @@ msgstr "" "編輯器、組合鍵 (Key Binding) 及語言設定。" #. (itstool) path: sect3/para -#: book.translate.xml:5920 +#: book.translate.xml:5927 msgid "" "Every user account on a FreeBSD system has certain information associated " "with it:" msgstr "每個在 FreeBSD 系統的使用者帳號都會有一些相關的資訊:" #. (itstool) path: varlistentry/term -#: book.translate.xml:5925 +#: book.translate.xml:5932 msgid "User name" msgstr "使用者名稱 (User name)" #. (itstool) path: listitem/para -#: book.translate.xml:5928 +#: book.translate.xml:5935 msgid "" "The user name is typed at the <prompt>login:</prompt> prompt. Each user must " "have a unique user name. There are a number of rules for creating valid user " @@ -8296,22 +8296,22 @@ msgstr "" "元以向下相容應用程式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5940 +#: book.translate.xml:5947 msgid "Password" msgstr "密碼 (Password)" #. (itstool) path: listitem/para -#: book.translate.xml:5943 +#: book.translate.xml:5950 msgid "Each account has an associated password." msgstr "每個帳號都會有密碼。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5948 +#: book.translate.xml:5955 msgid "User ID (<acronym>UID</acronym>)" msgstr "使用者 ID (<acronym>UID</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:5951 +#: book.translate.xml:5958 msgid "" "The User ID (<acronym>UID</acronym>) is a number used to uniquely identify " "the user to the FreeBSD system. Commands that allow a user name to be " @@ -8325,12 +8325,12 @@ msgstr "" "體的相容性問題。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5962 +#: book.translate.xml:5969 msgid "Group ID (<acronym>GID</acronym>)" msgstr "群組 ID (<acronym>GID</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:5965 +#: book.translate.xml:5972 msgid "" "The Group ID (<acronym>GID</acronym>) is a number used to uniquely identify " "the primary group that the user belongs to. Groups are a mechanism for " @@ -8347,12 +8347,12 @@ msgstr "" "的 GID 可能會讓部份軟體無法運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5979 +#: book.translate.xml:5986 msgid "Login class" msgstr "登入類別 (Login class)" #. (itstool) path: listitem/para -#: book.translate.xml:5982 +#: book.translate.xml:5989 msgid "" "Login classes are an extension to the group mechanism that provide " "additional flexibility when tailoring the system to different users. Login " @@ -8362,12 +8362,12 @@ msgstr "" "的彈性。在 <xref linkend=\"users-limiting\"/> 有對登入類別更進一步的討論。" #. (itstool) path: varlistentry/term -#: book.translate.xml:5991 +#: book.translate.xml:5998 msgid "Password change time" msgstr "密碼更改時間 (Password change time)" #. (itstool) path: listitem/para -#: book.translate.xml:5994 +#: book.translate.xml:6001 msgid "" "By default, passwords do not expire. However, password expiration can be " "enabled on a per-user basis, forcing some or all users to change their " @@ -8377,12 +8377,12 @@ msgstr "" "或所有使用者在某段期間過後更改他們的密碼。" #. (itstool) path: varlistentry/term -#: book.translate.xml:6003 +#: book.translate.xml:6010 msgid "Account expiration time" msgstr "帳號到期時間 (Account expiration time)" #. (itstool) path: listitem/para -#: book.translate.xml:6006 +#: book.translate.xml:6013 msgid "" "By default, FreeBSD does not expire accounts. When creating accounts that " "need a limited lifespan, such as student accounts in a school, specify the " @@ -8397,12 +8397,12 @@ msgstr "" "期日期過後,便無法使用該帳號登入到系統,儘管該帳號的目錄及檔案仍存在。" #. (itstool) path: varlistentry/term -#: book.translate.xml:6017 +#: book.translate.xml:6024 msgid "User's full name" msgstr "使用者的全名 (User's full name)" #. (itstool) path: listitem/para -#: book.translate.xml:6020 +#: book.translate.xml:6027 msgid "" "The user name uniquely identifies the account to FreeBSD, but does not " "necessarily reflect the user's real name. Similar to a comment, this " @@ -8413,12 +8413,12 @@ msgstr "" "名。類似註解,這個資訊可以含有空白、大寫字元並可超過 8 個字母的長度。" #. (itstool) path: varlistentry/term -#: book.translate.xml:6029 +#: book.translate.xml:6036 msgid "Home directory" msgstr "家目錄 (Home directory)" #. (itstool) path: listitem/para -#: book.translate.xml:6032 +#: book.translate.xml:6039 msgid "" "The home directory is the full path to a directory on the system. This is " "the user's starting directory when the user logs in. A common convention is " @@ -8433,12 +8433,12 @@ msgstr "" "filename>。每位使用者可以儲存他們的個人檔案及子目錄於他們自己的家目錄。" #. (itstool) path: varlistentry/term -#: book.translate.xml:6043 +#: book.translate.xml:6050 msgid "User shell" msgstr "使用者 Shell (User shell)" #. (itstool) path: listitem/para -#: book.translate.xml:6046 +#: book.translate.xml:6053 msgid "" "The shell provides the user's default environment for interacting with the " "system. There are many different kinds of shells and experienced users will " @@ -8448,17 +8448,17 @@ msgstr "" "用者會有自己偏好的選擇,可儲存在自己的帳號設定。" #. (itstool) path: sect3/title -#: book.translate.xml:6057 +#: book.translate.xml:6064 msgid "The Superuser Account" msgstr "超級使用者帳號" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6059 +#: book.translate.xml:6066 msgid "<primary>accounts</primary> <secondary>superuser (root)</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6064 +#: book.translate.xml:6071 msgid "" "The superuser account, usually called <systemitem class=\"username\">root</" "systemitem>, is used to manage the system with no limitations on privileges. " @@ -8470,7 +8470,7 @@ msgstr "" "如:寄信與收信、系統的一般探索或程式設計。" #. (itstool) path: sect3/para -#: book.translate.xml:6071 +#: book.translate.xml:6078 msgid "" "The superuser, unlike other user accounts, can operate without limits, and " "misuse of the superuser account may result in spectacular disasters. User " @@ -8483,7 +8483,7 @@ msgstr "" "登入一般使用者帳號,只有在指令需要額外權限時切換為超級使用者。" #. (itstool) path: sect3/para -#: book.translate.xml:6079 +#: book.translate.xml:6086 msgid "" "Always double and triple-check any commands issued as the superuser, since " "an extra space or missing character can mean irreparable data loss." @@ -8492,7 +8492,7 @@ msgstr "" "著無法挽回的資料遺失。" #. (itstool) path: sect3/para -#: book.translate.xml:6083 +#: book.translate.xml:6090 msgid "" "There are several ways to gain superuser privilege. While one can log in as " "<systemitem class=\"username\">root</systemitem>, this is highly discouraged." @@ -8501,7 +8501,7 @@ msgstr "" "\"username\">root</systemitem>,但強烈不建議這樣做。" #. (itstool) path: sect3/para -#: book.translate.xml:6088 +#: book.translate.xml:6095 msgid "" "Instead, use <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to become the superuser. If <literal>-</literal> " @@ -8519,7 +8519,7 @@ msgstr "" "的密碼。" #. (itstool) path: sect3/para -#: book.translate.xml:6098 +#: book.translate.xml:6105 msgid "" "In this example, the user only becomes superuser in order to run " "<command>make install</command> as this step requires superuser privilege. " @@ -8531,12 +8531,12 @@ msgstr "" "<command>exit</command> 離開超級使用者帳號並返回他的使用者帳號權限。" #. (itstool) path: example/title -#: book.translate.xml:6106 +#: book.translate.xml:6113 msgid "Install a Program As the Superuser" msgstr "以超級使用者的身份安裝程式" #. (itstool) path: example/screen -#: book.translate.xml:6108 +#: book.translate.xml:6115 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>configure</userinput>\n" @@ -8549,7 +8549,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6117 +#: book.translate.xml:6124 msgid "" "The built-in <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> framework works well for single systems or small " @@ -8564,17 +8564,17 @@ msgstr "" "體提供了活動記錄且允許管理者設定那個使用者可以用超級使用者執行那個指令。" #. (itstool) path: sect2/title -#: book.translate.xml:6128 +#: book.translate.xml:6135 msgid "Managing Accounts" msgstr "管理帳號" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6130 +#: book.translate.xml:6137 msgid "<primary>accounts</primary> <secondary>modifying</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6135 +#: book.translate.xml:6142 msgid "" "FreeBSD provides a variety of different commands to manage user accounts. " "The most common commands are summarized in <xref linkend=\"users-modifying-" @@ -8586,110 +8586,110 @@ msgstr "" "的操作手冊來取得更多詳細的資訊與用法範例。" #. (itstool) path: table/title -#: book.translate.xml:6142 +#: book.translate.xml:6149 msgid "Utilities for Managing User Accounts" msgstr "管理使用者帳號的工具" #. (itstool) path: row/entry -#: book.translate.xml:6150 book.translate.xml:58523 book.translate.xml:62055 +#: book.translate.xml:6157 book.translate.xml:58145 book.translate.xml:61677 msgid "Command" msgstr "指令" #. (itstool) path: row/entry #. (itstool) path: sect2/title -#: book.translate.xml:6151 book.translate.xml:17123 book.translate.xml:17277 +#: book.translate.xml:6158 book.translate.xml:17130 book.translate.xml:17284 msgid "Summary" msgstr "摘要" #. (itstool) path: row/entry -#: book.translate.xml:6156 +#: book.translate.xml:6163 msgid "" "<citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6157 +#: book.translate.xml:6164 msgid "The recommended command-line application for adding new users." msgstr "建議用來新增新使用者的指令列應用程式。" #. (itstool) path: row/entry -#: book.translate.xml:6162 +#: book.translate.xml:6169 msgid "" "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6163 +#: book.translate.xml:6170 msgid "The recommended command-line application for removing users." msgstr "建議用來移除使用者的指令列應用程式。" #. (itstool) path: row/entry -#: book.translate.xml:6168 +#: book.translate.xml:6175 msgid "" "<citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6169 +#: book.translate.xml:6176 msgid "A flexible tool for changing user database information." msgstr "用來更改使用者資料庫資訊的工具。" #. (itstool) path: row/entry -#: book.translate.xml:6174 +#: book.translate.xml:6181 msgid "" "<citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6175 +#: book.translate.xml:6182 msgid "The command-line tool to change user passwords." msgstr "用來更改使用者密碼的指令列工具。" #. (itstool) path: row/entry -#: book.translate.xml:6180 +#: book.translate.xml:6187 msgid "" "<citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6181 +#: book.translate.xml:6188 msgid "" "A powerful and flexible tool for modifying all aspects of user accounts." msgstr "用來修改使用者帳號各方面資訊強大且靈活的工具。" #. (itstool) path: sect3/title -#: book.translate.xml:6189 +#: book.translate.xml:6196 msgid "<command>adduser</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6191 +#: book.translate.xml:6198 msgid "<primary>accounts</primary> <secondary>adding</secondary>" msgstr "" #. (itstool) path: sect3/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:6195 book.translate.xml:43302 +#: book.translate.xml:6202 book.translate.xml:43511 msgid "<primary><command>adduser</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6198 +#: book.translate.xml:6205 msgid "<primary><filename>/usr/share/skel</filename></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6201 +#: book.translate.xml:6208 msgid "<primary>skeleton directory</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6205 +#: book.translate.xml:6212 msgid "" "The recommended program for adding new users is " "<citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" @@ -8708,7 +8708,7 @@ msgstr "" "具必須使用超級使用者執行。" #. (itstool) path: sect3/para -#: book.translate.xml:6215 +#: book.translate.xml:6222 msgid "" "The <citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> utility is interactive and walks through the steps " @@ -8731,12 +8731,12 @@ msgstr "" "離開。" #. (itstool) path: example/title -#: book.translate.xml:6227 +#: book.translate.xml:6234 msgid "Adding a User on FreeBSD" msgstr "在 FreeBSD 新增使用者" #. (itstool) path: example/screen -#: book.translate.xml:6229 +#: book.translate.xml:6236 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>adduser</userinput>\n" @@ -8772,29 +8772,29 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6262 +#: book.translate.xml:6269 msgid "" "Since the password is not echoed when typed, be careful to not mistype the " "password when creating the user account." msgstr "由於密碼在輸入時並不會顯示,在建立使用者帳號時要小心密碼不要輸入錯誤。" #. (itstool) path: sect3/title -#: book.translate.xml:6269 +#: book.translate.xml:6276 msgid "<command>rmuser</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6271 +#: book.translate.xml:6278 msgid "<primary><command>rmuser</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6274 +#: book.translate.xml:6281 msgid "<primary>accounts</primary> <secondary>removing</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6279 +#: book.translate.xml:6286 msgid "" "To completely remove a user from the system, run " "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" @@ -8805,7 +8805,7 @@ msgstr "" "citerefentry>。這個指令會執行以下步驟:" #. (itstool) path: step/para -#: book.translate.xml:6285 +#: book.translate.xml:6292 msgid "" "Removes the user's <citerefentry><refentrytitle>crontab</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> entry, if one exists." @@ -8814,7 +8814,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 項目,若項目存在。" #. (itstool) path: step/para -#: book.translate.xml:6290 +#: book.translate.xml:6297 msgid "" "Removes any <citerefentry><refentrytitle>at</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> jobs belonging to the user." @@ -8823,30 +8823,30 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 工作。" #. (itstool) path: step/para -#: book.translate.xml:6295 +#: book.translate.xml:6302 msgid "Kills all processes owned by the user." msgstr "中止所有該使用者擁有的程序。" #. (itstool) path: step/para -#: book.translate.xml:6299 +#: book.translate.xml:6306 msgid "Removes the user from the system's local password file." msgstr "自系統本地密碼檔移除該使用者。" #. (itstool) path: step/para -#: book.translate.xml:6304 +#: book.translate.xml:6311 msgid "" "Optionally removes the user's home directory, if it is owned by the user." msgstr "選擇性移除該使用者的家目錄,若使用者擁有該目錄。" #. (itstool) path: step/para -#: book.translate.xml:6309 +#: book.translate.xml:6316 msgid "" "Removes the incoming mail files belonging to the user from <filename>/var/" "mail</filename>." msgstr "自 <filename>/var/mail</filename> 移除屬於該使用者的收件郵件檔。" #. (itstool) path: step/para -#: book.translate.xml:6314 +#: book.translate.xml:6321 msgid "" "Removes all files owned by the user from temporary file storage areas such " "as <filename>/tmp</filename>." @@ -8854,7 +8854,7 @@ msgstr "" "自暫存檔儲存區域 (如 <filename>/tmp</filename>) 移除所有使用者擁有的檔案。" #. (itstool) path: step/para -#: book.translate.xml:6320 +#: book.translate.xml:6327 msgid "" "Finally, removes the username from all groups to which it belongs in " "<filename>/etc/group</filename>. If a group becomes empty and the group name " @@ -8868,7 +8868,7 @@ msgstr "" "manvolnum></citerefentry> 替每位使用者建立獨一無二的群組。" #. (itstool) path: sect3/para -#: book.translate.xml:6329 +#: book.translate.xml:6336 msgid "" "<citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> cannot be used to remove superuser accounts since that is " @@ -8878,18 +8878,18 @@ msgstr "" "citerefentry> 無法用來移除超級使用者帳號,因為這幾乎代表著大規模破壞。" #. (itstool) path: sect3/para -#: book.translate.xml:6333 +#: book.translate.xml:6340 msgid "" "By default, an interactive mode is used, as shown in the following example." msgstr "預設會使用互動式模式,如下範例所示。" #. (itstool) path: example/title -#: book.translate.xml:6337 +#: book.translate.xml:6344 msgid "<command>rmuser</command> Interactive Account Removal" msgstr "<command>rmuser</command> 互動式帳號移除" #. (itstool) path: example/screen -#: book.translate.xml:6340 +#: book.translate.xml:6347 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rmuser jru</userinput>\n" @@ -8902,17 +8902,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:6351 +#: book.translate.xml:6358 msgid "<command>chpass</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6353 +#: book.translate.xml:6360 msgid "<primary><command>chpass</command></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6357 +#: book.translate.xml:6364 msgid "" "Any user can use <citerefentry><refentrytitle>chpass</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to change their " @@ -8926,7 +8926,7 @@ msgstr "" "者的其他帳號資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:6362 +#: book.translate.xml:6369 msgid "" "When passed no options, aside from an optional username, " "<citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></" @@ -8939,7 +8939,7 @@ msgstr "" "的資訊到使用者資料庫。" #. (itstool) path: note/para -#: book.translate.xml:6368 +#: book.translate.xml:6375 msgid "" "This utility will prompt for the user's password when exiting the editor, " "unless the utility is run as the superuser." @@ -8947,7 +8947,7 @@ msgstr "" "離開編輯器時,此工具會提示使用者輸入密碼,除非使用超級使用者執行此工具。" #. (itstool) path: sect3/para -#: book.translate.xml:6373 +#: book.translate.xml:6380 msgid "" "In <xref linkend=\"users-modifying-chpass-su\"/>, the superuser has typed " "<command>chpass jru</command> and is now viewing the fields that can be " @@ -8962,12 +8962,12 @@ msgstr "" "個欄位供編輯,如 <xref linkend=\"users-modifying-chpass-ru\"/> 所示。" #. (itstool) path: example/title -#: book.translate.xml:6382 +#: book.translate.xml:6389 msgid "Using <command>chpass</command> as Superuser" msgstr "以超級使用者的身份使用 <command>chpass</command>" #. (itstool) path: example/screen -#: book.translate.xml:6385 +#: book.translate.xml:6392 #, no-wrap msgid "" "#Changing user database information for jru.\n" @@ -8988,12 +8988,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:6403 +#: book.translate.xml:6410 msgid "Using <command>chpass</command> as Regular User" msgstr "以一般使用者的身份使用 <command>chpass</command>" #. (itstool) path: example/screen -#: book.translate.xml:6406 +#: book.translate.xml:6413 #, no-wrap msgid "" "#Changing user database information for jru.\n" @@ -9006,7 +9006,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6416 +#: book.translate.xml:6423 msgid "" "The commands <citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>chsh</" @@ -9034,22 +9034,22 @@ msgstr "" "linkend=\"network-servers\"/> 中有說明。" #. (itstool) path: sect3/title -#: book.translate.xml:6426 +#: book.translate.xml:6433 msgid "<command>passwd</command>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6428 +#: book.translate.xml:6435 msgid "<primary><command>passwd</command></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:6431 +#: book.translate.xml:6438 msgid "<primary>accounts</primary> <secondary>changing password</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6436 +#: book.translate.xml:6443 msgid "" "Any user can easily change their password using " "<citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></" @@ -9062,12 +9062,12 @@ msgstr "" "意外或未授權的變更,這個指令在設定新密碼之前會提示使用者輸入原來的密碼。" #. (itstool) path: example/title -#: book.translate.xml:6442 +#: book.translate.xml:6449 msgid "Changing Your Password" msgstr "更改您的密碼" #. (itstool) path: example/screen -#: book.translate.xml:6444 +#: book.translate.xml:6451 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>passwd</userinput>\n" @@ -9080,7 +9080,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6453 +#: book.translate.xml:6460 msgid "" "The superuser can change any user's password by specifying the username when " "running <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</" @@ -9094,12 +9094,12 @@ msgstr "" "用者目前的密碼,這可在使用者忘記原來的密碼時更改密碼。" #. (itstool) path: example/title -#: book.translate.xml:6461 +#: book.translate.xml:6468 msgid "Changing Another User's Password as the Superuser" msgstr "以超級使用者的身份更改其他使用者的密碼" #. (itstool) path: example/screen -#: book.translate.xml:6464 +#: book.translate.xml:6471 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>passwd jru</userinput>\n" @@ -9111,7 +9111,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:6473 +#: book.translate.xml:6480 msgid "" "As with <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <citerefentry><refentrytitle>yppasswd</" @@ -9126,18 +9126,18 @@ msgstr "" "citerefentry>,因此 <acronym>NIS</acronym> 在兩個指令上皆可運作。" #. (itstool) path: sect3/title -#: book.translate.xml:6480 +#: book.translate.xml:6487 msgid "<command>pw</command>" msgstr "" #. (itstool) path: sect3/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:6482 book.translate.xml:43325 +#: book.translate.xml:6489 book.translate.xml:43534 msgid "<primary><command>pw</command></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:6486 +#: book.translate.xml:6493 msgid "" "The <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> utility can create, remove, modify, and display users and " @@ -9155,27 +9155,27 @@ msgstr "" "本節的指令要複雜許多。" #. (itstool) path: sect2/title -#: book.translate.xml:6497 +#: book.translate.xml:6504 msgid "Managing Groups" msgstr "管理群組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6499 +#: book.translate.xml:6506 msgid "<primary>groups</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6502 +#: book.translate.xml:6509 msgid "<primary><filename>/etc/groups</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6505 +#: book.translate.xml:6512 msgid "<primary>accounts</primary> <secondary>groups</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6510 +#: book.translate.xml:6517 msgid "" "A group is a list of users. A group is identified by its group name and " "<acronym>GID</acronym>. In FreeBSD, the kernel uses the <acronym>UID</" @@ -9189,7 +9189,7 @@ msgstr "" "單中的第一個群組。" #. (itstool) path: sect2/para -#: book.translate.xml:6517 +#: book.translate.xml:6524 msgid "" "The group name to <acronym>GID</acronym> mapping is listed in <filename>/etc/" "group</filename>. This is a plain text file with four colon-delimited " @@ -9207,7 +9207,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:6525 +#: book.translate.xml:6532 msgid "" "The superuser can modify <filename>/etc/group</filename> using a text " "editor. Alternatively, <citerefentry><refentrytitle>pw</" @@ -9221,7 +9221,7 @@ msgstr "" "\"groupname\">teamtwo</systemitem> 的群組然後確認該群組已新增:" #. (itstool) path: example/title -#: book.translate.xml:6532 +#: book.translate.xml:6539 msgid "" "Adding a Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -9230,7 +9230,7 @@ msgstr "" "manvolnum></citerefentry> 新增群組" #. (itstool) path: example/screen -#: book.translate.xml:6534 +#: book.translate.xml:6541 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupadd teamtwo</userinput>\n" @@ -9239,7 +9239,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6539 +#: book.translate.xml:6546 msgid "" "In this example, <literal>1100</literal> is the <acronym>GID</acronym> of " "<systemitem class=\"groupname\">teamtwo</systemitem>. Right now, <systemitem " @@ -9254,7 +9254,7 @@ msgstr "" "\">teamtwo</systemitem> 的成員。" #. (itstool) path: example/title -#: book.translate.xml:6548 +#: book.translate.xml:6555 msgid "" "Adding User Accounts to a New Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -9263,7 +9263,7 @@ msgstr "" "manvolnum></citerefentry> 加入使用者帳號到新的群組" #. (itstool) path: example/screen -#: book.translate.xml:6551 +#: book.translate.xml:6558 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupmod teamtwo -M jru</userinput>\n" @@ -9272,7 +9272,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6556 +#: book.translate.xml:6563 msgid "" "The argument to <option>-M</option> is a comma-delimited list of users to be " "added to a new (empty) group or to replace the members of an existing group. " @@ -9299,7 +9299,7 @@ msgstr "" "filename> 且不會嘗試自 <filename>/etc/passwd</filename> 讀取其他的資料。" #. (itstool) path: example/title -#: book.translate.xml:6570 +#: book.translate.xml:6577 msgid "" "Adding a New Member to a Group Using <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -9308,7 +9308,7 @@ msgstr "" "manvolnum></citerefentry> 加入新成員到群組" #. (itstool) path: example/screen -#: book.translate.xml:6572 +#: book.translate.xml:6579 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupmod teamtwo -m db</userinput>\n" @@ -9317,7 +9317,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6577 +#: book.translate.xml:6584 msgid "" "In this example, the argument to <option>-m</option> is a comma-delimited " "list of users who are to be added to the group. Unlike the previous example, " @@ -9329,7 +9329,7 @@ msgstr "" "者。" #. (itstool) path: example/title -#: book.translate.xml:6584 +#: book.translate.xml:6591 msgid "" "Using <citerefentry><refentrytitle>id</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to Determine Group Membership" @@ -9338,7 +9338,7 @@ msgstr "" "manvolnum></citerefentry> 來查看所屬群組" #. (itstool) path: example/screen -#: book.translate.xml:6586 +#: book.translate.xml:6593 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>id jru</userinput>\n" @@ -9346,7 +9346,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6590 +#: book.translate.xml:6597 msgid "" "In this example, <systemitem class=\"username\">jru</systemitem> is a member " "of the groups <systemitem class=\"groupname\">jru</systemitem> and " @@ -9357,7 +9357,7 @@ msgstr "" "\">teamtwo</systemitem> 的成員。" #. (itstool) path: sect2/para -#: book.translate.xml:6595 +#: book.translate.xml:6602 msgid "" "For more information about this command and the format of <filename>/etc/" "group</filename>, refer to <citerefentry><refentrytitle>pw</" @@ -9371,17 +9371,17 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:6602 +#: book.translate.xml:6609 msgid "Permissions" msgstr "權限" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6604 +#: book.translate.xml:6611 msgid "<primary>UNIX</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6608 +#: book.translate.xml:6615 msgid "" "In FreeBSD, every file and directory has an associated set of permissions " "and several utilities are available for viewing and modifying these " @@ -9395,7 +9395,7 @@ msgstr "" "無法不正確的存取供作業系統或其他使用者擁有的檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:6616 +#: book.translate.xml:6623 msgid "" "This section discusses the traditional <trademark class=\"registered\">UNIX</" "trademark> permissions used in FreeBSD. For finer grained file system access " @@ -9406,7 +9406,7 @@ msgstr "" ">。" #. (itstool) path: sect1/para -#: book.translate.xml:6620 +#: book.translate.xml:6627 msgid "" "In <trademark class=\"registered\">UNIX</trademark>, basic permissions are " "assigned using three types of access: read, write, and execute. These access " @@ -9430,7 +9430,7 @@ msgstr "" "literal> 以及 <literal>x</literal> 開啟的值為 <literal>1</literal>。" #. (itstool) path: sect1/para -#: book.translate.xml:6635 +#: book.translate.xml:6642 msgid "" "Table 4.1 summarizes the possible numeric and alphabetic possibilities. When " "reading the <quote>Directory Listing</quote> column, a <literal>-</literal> " @@ -9440,183 +9440,183 @@ msgstr "" "位時,<literal>-</literal> 用來代表該權限設為關閉。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6640 +#: book.translate.xml:6647 msgid "<primary>permissions</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6643 +#: book.translate.xml:6650 msgid "<primary>file permissions</primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:6648 +#: book.translate.xml:6655 msgid "<trademark class=\"registered\">UNIX</trademark> Permissions" msgstr "<trademark class=\"registered\">UNIX</trademark> 權限" #. (itstool) path: row/entry -#: book.translate.xml:6653 +#: book.translate.xml:6660 msgid "Value" msgstr "數值" #. (itstool) path: row/entry -#: book.translate.xml:6654 +#: book.translate.xml:6661 msgid "Permission" msgstr "權限" #. (itstool) path: row/entry -#: book.translate.xml:6655 +#: book.translate.xml:6662 msgid "Directory Listing" msgstr "目錄清單標示" #. (itstool) path: row/entry -#: book.translate.xml:6661 +#: book.translate.xml:6668 msgid "0" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6662 +#: book.translate.xml:6669 msgid "No read, no write, no execute" msgstr "不可讀取, 不可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6663 +#: book.translate.xml:6670 msgid "<literal>---</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6667 book.translate.xml:46927 book.translate.xml:46949 -#: book.translate.xml:47039 +#: book.translate.xml:6674 book.translate.xml:46548 book.translate.xml:46570 +#: book.translate.xml:46660 msgid "1" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6668 +#: book.translate.xml:6675 msgid "No read, no write, execute" msgstr "不可讀取, 不可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6669 +#: book.translate.xml:6676 msgid "<literal>--x</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6673 book.translate.xml:46819 book.translate.xml:46829 -#: book.translate.xml:46901 book.translate.xml:46911 book.translate.xml:46991 -#: book.translate.xml:46993 +#: book.translate.xml:6680 book.translate.xml:46440 book.translate.xml:46450 +#: book.translate.xml:46522 book.translate.xml:46532 book.translate.xml:46612 +#: book.translate.xml:46614 msgid "2" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6674 +#: book.translate.xml:6681 msgid "No read, write, no execute" msgstr "不可讀取, 可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6675 +#: book.translate.xml:6682 msgid "<literal>-w-</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6679 book.translate.xml:46821 book.translate.xml:46827 -#: book.translate.xml:46903 book.translate.xml:46909 book.translate.xml:46999 -#: book.translate.xml:47001 +#: book.translate.xml:6686 book.translate.xml:46442 book.translate.xml:46448 +#: book.translate.xml:46524 book.translate.xml:46530 book.translate.xml:46620 +#: book.translate.xml:46622 msgid "3" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6680 +#: book.translate.xml:6687 msgid "No read, write, execute" msgstr "不可讀取, 可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6681 +#: book.translate.xml:6688 msgid "<literal>-wx</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6685 book.translate.xml:46835 book.translate.xml:46845 -#: book.translate.xml:46917 book.translate.xml:46925 book.translate.xml:46943 -#: book.translate.xml:46951 book.translate.xml:47007 book.translate.xml:47015 -#: book.translate.xml:47057 +#: book.translate.xml:6692 book.translate.xml:46456 book.translate.xml:46466 +#: book.translate.xml:46538 book.translate.xml:46546 book.translate.xml:46564 +#: book.translate.xml:46572 book.translate.xml:46628 book.translate.xml:46636 +#: book.translate.xml:46678 msgid "4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6686 +#: book.translate.xml:6693 msgid "Read, no write, no execute" msgstr "可讀取, 不可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6687 +#: book.translate.xml:6694 msgid "<literal>r--</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6691 book.translate.xml:46837 book.translate.xml:46843 -#: book.translate.xml:46933 book.translate.xml:46935 book.translate.xml:47023 -#: book.translate.xml:47049 +#: book.translate.xml:6698 book.translate.xml:46458 book.translate.xml:46464 +#: book.translate.xml:46554 book.translate.xml:46556 book.translate.xml:46644 +#: book.translate.xml:46670 msgid "5" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6692 +#: book.translate.xml:6699 msgid "Read, no write, execute" msgstr "可讀取, 不可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6693 +#: book.translate.xml:6700 msgid "<literal>r-x</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6697 book.translate.xml:46853 book.translate.xml:46867 -#: book.translate.xml:46919 book.translate.xml:46941 book.translate.xml:47009 -#: book.translate.xml:47031 +#: book.translate.xml:6704 book.translate.xml:46474 book.translate.xml:46488 +#: book.translate.xml:46540 book.translate.xml:46562 book.translate.xml:46630 +#: book.translate.xml:46652 msgid "6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6698 +#: book.translate.xml:6705 msgid "Read, write, no execute" msgstr "可讀取, 可寫入, 不可執行" #. (itstool) path: row/entry -#: book.translate.xml:6699 +#: book.translate.xml:6706 msgid "<literal>rw-</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6703 book.translate.xml:46811 book.translate.xml:46813 -#: book.translate.xml:46957 book.translate.xml:46967 book.translate.xml:47025 -#: book.translate.xml:47047 +#: book.translate.xml:6710 book.translate.xml:46432 book.translate.xml:46434 +#: book.translate.xml:46578 book.translate.xml:46588 book.translate.xml:46646 +#: book.translate.xml:46668 msgid "7" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6704 +#: book.translate.xml:6711 msgid "Read, write, execute" msgstr "可讀取, 可寫入, 可執行" #. (itstool) path: row/entry -#: book.translate.xml:6705 +#: book.translate.xml:6712 msgid "<literal>rwx</literal>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6711 +#: book.translate.xml:6718 msgid "" "<primary><citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:6714 +#: book.translate.xml:6721 msgid "<primary>directories</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6718 +#: book.translate.xml:6725 msgid "" "Use the <option>-l</option> argument to <citerefentry><refentrytitle>ls</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to view a long " @@ -9630,7 +9630,7 @@ msgstr "" "一個目錄底下執行 <command>ls -l</command>,會顯示如下的結果:" #. (itstool) path: sect1/screen -#: book.translate.xml:6724 +#: book.translate.xml:6731 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ls -l</userinput>\n" @@ -9641,7 +9641,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:6730 +#: book.translate.xml:6737 msgid "" "The first (leftmost) character in the first column indicates whether this " "file is a regular file, a directory, a special character device, a socket, " @@ -9668,7 +9668,7 @@ msgstr "" "案的三種權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6747 +#: book.translate.xml:6754 msgid "" "How does the system control permissions on devices? FreeBSD treats most " "hardware devices as a file that programs can open, read, and write data to. " @@ -9679,7 +9679,7 @@ msgstr "" "</filename> 目錄中。" #. (itstool) path: sect1/para -#: book.translate.xml:6752 +#: book.translate.xml:6759 msgid "" "Directories are also treated as files. They have read, write, and execute " "permissions. The executable bit for a directory has a slightly different " @@ -9695,7 +9695,7 @@ msgstr "" "代表能夠存取在此目錄之中的已知檔名的檔案,但仍會受限於檔案本身所設定的權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6761 +#: book.translate.xml:6768 msgid "" "In order to perform a directory listing, the read permission must be set on " "the directory. In order to delete a file that one knows the name of, it is " @@ -9706,7 +9706,7 @@ msgstr "" "案所在目錄的寫入 <emphasis>以及</emphasis> 執行的權限。" #. (itstool) path: sect1/para -#: book.translate.xml:6767 +#: book.translate.xml:6774 msgid "" "There are more permission bits, but they are primarily used in special " "circumstances such as setuid binaries and sticky directories. For more " @@ -9720,27 +9720,27 @@ msgstr "" "citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:6774 +#: book.translate.xml:6781 msgid "Symbolic Permissions" msgstr "權限符號" #. (itstool) path: authorgroup/author -#: book.translate.xml:6777 book.translate.xml:6912 book.translate.xml:6963 -#: book.translate.xml:19407 book.translate.xml:19514 book.translate.xml:19692 -#: book.translate.xml:20811 book.translate.xml:21337 book.translate.xml:23586 -#: book.translate.xml:34021 book.translate.xml:45628 book.translate.xml:65535 +#: book.translate.xml:6784 book.translate.xml:6919 book.translate.xml:6970 +#: book.translate.xml:19414 book.translate.xml:19521 book.translate.xml:19699 +#: book.translate.xml:20818 book.translate.xml:21344 book.translate.xml:23593 +#: book.translate.xml:34155 book.translate.xml:65535 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:6787 +#: book.translate.xml:6794 msgid "<primary>permissions</primary> <secondary>symbolic</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6792 +#: book.translate.xml:6799 msgid "" "Symbolic permissions use characters instead of octal values to assign " "permissions to files or directories. Symbolic permissions use the syntax of " @@ -9750,159 +9750,159 @@ msgstr "" "符號表示的格式依序為 (某人)(動作)(權限),可使用的符號如下:" #. (itstool) path: row/entry -#: book.translate.xml:6802 book.translate.xml:23312 +#: book.translate.xml:6809 book.translate.xml:23319 msgid "Option" msgstr "項目" #. (itstool) path: row/entry -#: book.translate.xml:6803 +#: book.translate.xml:6810 msgid "Letter" msgstr "字母" #. (itstool) path: row/entry -#: book.translate.xml:6804 +#: book.translate.xml:6811 msgid "Represents" msgstr "代表意義" #. (itstool) path: row/entry -#: book.translate.xml:6810 book.translate.xml:6816 book.translate.xml:6822 -#: book.translate.xml:6828 +#: book.translate.xml:6817 book.translate.xml:6823 book.translate.xml:6829 +#: book.translate.xml:6835 msgid "(who)" msgstr "(某人)" #. (itstool) path: row/entry -#: book.translate.xml:6811 +#: book.translate.xml:6818 msgid "u" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6812 +#: book.translate.xml:6819 msgid "User" msgstr "使用者" #. (itstool) path: row/entry -#: book.translate.xml:6817 +#: book.translate.xml:6824 msgid "g" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6818 +#: book.translate.xml:6825 msgid "Group owner" msgstr "群組所有者" #. (itstool) path: row/entry -#: book.translate.xml:6823 +#: book.translate.xml:6830 msgid "o" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6824 +#: book.translate.xml:6831 msgid "Other" msgstr "其他" #. (itstool) path: row/entry -#: book.translate.xml:6829 +#: book.translate.xml:6836 msgid "a" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6830 +#: book.translate.xml:6837 msgid "All (<quote>world</quote>)" msgstr "全部 (<quote>world</quote>)" #. (itstool) path: row/entry -#: book.translate.xml:6834 book.translate.xml:6840 book.translate.xml:6846 +#: book.translate.xml:6841 book.translate.xml:6847 book.translate.xml:6853 msgid "(action)" msgstr "(動作)" #. (itstool) path: row/entry -#: book.translate.xml:6835 book.translate.xml:31582 book.translate.xml:39314 +#: book.translate.xml:6842 book.translate.xml:31589 book.translate.xml:39448 msgid "+" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6836 +#: book.translate.xml:6843 msgid "Adding permissions" msgstr "\t增加權限" #. (itstool) path: row/entry -#: book.translate.xml:6841 book.translate.xml:31587 book.translate.xml:39319 +#: book.translate.xml:6848 book.translate.xml:31594 book.translate.xml:39453 msgid "-" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6842 +#: book.translate.xml:6849 msgid "Removing permissions" msgstr "移除權限" #. (itstool) path: row/entry -#: book.translate.xml:6847 +#: book.translate.xml:6854 msgid "=" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6848 +#: book.translate.xml:6855 msgid "Explicitly set permissions" msgstr "指定權限" #. (itstool) path: row/entry -#: book.translate.xml:6852 book.translate.xml:6858 book.translate.xml:6864 -#: book.translate.xml:6870 book.translate.xml:6876 +#: book.translate.xml:6859 book.translate.xml:6865 book.translate.xml:6871 +#: book.translate.xml:6877 book.translate.xml:6883 msgid "(permissions)" msgstr "(權限)" #. (itstool) path: row/entry -#: book.translate.xml:6853 +#: book.translate.xml:6860 msgid "r" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6854 +#: book.translate.xml:6861 msgid "Read" msgstr "讀取" #. (itstool) path: row/entry -#: book.translate.xml:6859 +#: book.translate.xml:6866 msgid "w" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6860 +#: book.translate.xml:6867 msgid "Write" msgstr "寫入" #. (itstool) path: row/entry -#: book.translate.xml:6865 +#: book.translate.xml:6872 msgid "x" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6866 +#: book.translate.xml:6873 msgid "Execute" msgstr "執行" #. (itstool) path: row/entry -#: book.translate.xml:6871 +#: book.translate.xml:6878 msgid "t" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6872 +#: book.translate.xml:6879 msgid "Sticky bit" msgstr "Sticky 位元" #. (itstool) path: row/entry -#: book.translate.xml:6877 +#: book.translate.xml:6884 msgid "s" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:6878 +#: book.translate.xml:6885 msgid "Set UID or GID" msgstr "設定 UID 或 GID" #. (itstool) path: sect2/para -#: book.translate.xml:6884 +#: book.translate.xml:6891 msgid "" "These values are used with <citerefentry><refentrytitle>chmod</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, but with letters " @@ -9915,13 +9915,13 @@ msgstr "" "<replaceable>FILE</replaceable>:" #. (itstool) path: sect2/screen -#: book.translate.xml:6889 +#: book.translate.xml:6896 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod go= FILE</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6891 +#: book.translate.xml:6898 msgid "" "A comma separated list can be provided when more than one set of changes to " "a file must be made. For example, the following command removes the group " @@ -9933,18 +9933,18 @@ msgstr "" "(<quote>world</quote>) 對該檔有執行權限。" #. (itstool) path: sect2/screen -#: book.translate.xml:6898 +#: book.translate.xml:6905 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod go-w,a+x <replaceable>FILE</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:6909 +#: book.translate.xml:6916 msgid "FreeBSD File Flags" msgstr "FreeBSD 檔案旗標" #. (itstool) path: sect2/para -#: book.translate.xml:6922 +#: book.translate.xml:6929 msgid "" "In addition to file permissions, FreeBSD supports the use of <quote>file " "flags</quote>. These flags add an additional level of security and control " @@ -9957,7 +9957,7 @@ msgstr "" "<systemitem class=\"username\">root</systemitem> 不會意外將檔案修改或移除。" #. (itstool) path: sect2/para -#: book.translate.xml:6929 +#: book.translate.xml:6936 msgid "" "File flags are modified using <citerefentry><refentrytitle>chflags</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>. For example, to " @@ -9970,13 +9970,13 @@ msgstr "" "<filename>file1</filename>,使用下列指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:6934 +#: book.translate.xml:6941 #, no-wrap msgid "<prompt>#</prompt> <userinput>chflags sunlink file1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6936 +#: book.translate.xml:6943 msgid "" "To disable the system undeletable flag, put a <quote>no</quote> in front of " "the <option>sunlink</option>:" @@ -9985,13 +9985,13 @@ msgstr "" "<quote>no</quote>,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:6940 +#: book.translate.xml:6947 #, no-wrap msgid "<prompt>#</prompt> <userinput>chflags nosunlink file1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6942 +#: book.translate.xml:6949 msgid "" "To view the flags of a file, use <option>-lo</option> with " "<citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></" @@ -10001,19 +10001,19 @@ msgstr "" "manvolnum></citerefentry> 及參數 <option>-lo</option> 可檢視檔案目前的旗標:" #. (itstool) path: sect2/screen -#: book.translate.xml:6945 +#: book.translate.xml:6952 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -lo file1</userinput>" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:6947 +#: book.translate.xml:6954 #, no-wrap msgid "-rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:6949 +#: book.translate.xml:6956 msgid "" "Several file flags may only be added or removed by the <systemitem class=" "\"username\">root</systemitem> user. In other cases, the file owner may set " @@ -10029,7 +10029,7 @@ msgstr "" "refentrytitle><manvolnum>2</manvolnum></citerefentry> 說明以瞭解相關細節。" #. (itstool) path: info/title -#: book.translate.xml:6958 +#: book.translate.xml:6965 msgid "" "The <literal>setuid</literal>, <literal>setgid</literal>, and " "<literal>sticky</literal> Permissions" @@ -10038,7 +10038,7 @@ msgstr "" "literal> 權限" #. (itstool) path: sect2/para -#: book.translate.xml:6973 +#: book.translate.xml:6980 msgid "" "Other than the permissions already discussed, there are three other specific " "settings that all administrators should know about. They are the " @@ -10050,7 +10050,7 @@ msgstr "" "<literal>sticky</literal> 權限。" #. (itstool) path: sect2/para -#: book.translate.xml:6979 +#: book.translate.xml:6986 msgid "" "These settings are important for some <trademark class=\"registered\">UNIX</" "trademark> operations as they provide functionality not normally granted to " @@ -10062,7 +10062,7 @@ msgstr "" "說明真實使用者 ID (Real user ID) 與有效使用者 ID (Effective user ID) 的差異。" #. (itstool) path: sect2/para -#: book.translate.xml:6984 +#: book.translate.xml:6991 msgid "" "The real user ID is the <acronym>UID</acronym> who owns or starts the " "process. The effective <acronym>UID</acronym> is the user ID the process " @@ -10082,20 +10082,20 @@ msgstr "" "(<errorname>Permission Denied</errorname>) 的錯誤。" #. (itstool) path: sect2/para -#: book.translate.xml:6994 +#: book.translate.xml:7001 msgid "" "The setuid permission may be set by prefixing a permission set with the " "number four (4) as shown in the following example:" msgstr "setuid 權限可以透過在權限集前加上數字 (4) 來設定,如下範例所示:" #. (itstool) path: sect2/screen -#: book.translate.xml:6998 +#: book.translate.xml:7005 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 4755 suidexample.sh</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7000 +#: book.translate.xml:7007 msgid "" "The permissions on <filename><replaceable>suidexample.sh</replaceable></" "filename> now look like the following:" @@ -10104,13 +10104,13 @@ msgstr "" "如下所示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:7004 +#: book.translate.xml:7011 #, no-wrap msgid "-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidexample.sh" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7006 +#: book.translate.xml:7013 msgid "" "Note that a <literal>s</literal> is now part of the permission set " "designated for the file owner, replacing the executable bit. This allows " @@ -10123,7 +10123,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 可正常使用。" #. (itstool) path: note/para -#: book.translate.xml:7012 +#: book.translate.xml:7019 msgid "" "The <literal>nosuid</literal> <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> option will cause such " @@ -10137,7 +10137,7 @@ msgstr "" "該選項並非完全可靠。" #. (itstool) path: sect2/para -#: book.translate.xml:7019 +#: book.translate.xml:7026 msgid "" "To view this in real time, open two terminals. On one, type <command>passwd</" "command> as a normal user. While it waits for a new password, check the " @@ -10151,12 +10151,12 @@ msgstr "" "citerefentry> 程序的使用者資訊:" #. (itstool) path: sect2/para -#: book.translate.xml:7025 +#: book.translate.xml:7032 msgid "In terminal A:" msgstr "於終端機 A:" #. (itstool) path: sect2/screen -#: book.translate.xml:7027 +#: book.translate.xml:7034 #, no-wrap msgid "" "Changing local password for trhodes\n" @@ -10164,18 +10164,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7030 +#: book.translate.xml:7037 msgid "In terminal B:" msgstr "於終端機 B:" #. (itstool) path: sect2/screen -#: book.translate.xml:7032 +#: book.translate.xml:7039 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps aux | grep passwd</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:7034 +#: book.translate.xml:7041 #, no-wrap msgid "" "trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd\n" @@ -10183,7 +10183,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7037 +#: book.translate.xml:7044 msgid "" "Although <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> is run as a normal user, it is using the effective " @@ -10195,7 +10195,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:7041 +#: book.translate.xml:7048 msgid "" "The <literal>setgid</literal> permission performs the same function as the " "<literal>setuid</literal> permission; except that it alters the group " @@ -10208,7 +10208,7 @@ msgstr "" "使用者。" #. (itstool) path: sect2/para -#: book.translate.xml:7048 +#: book.translate.xml:7055 msgid "" "To set the <literal>setgid</literal> permission on a file, provide " "<citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></" @@ -10219,26 +10219,26 @@ msgstr "" "citerefentry> 的參數前加上 (2):" #. (itstool) path: sect2/screen -#: book.translate.xml:7051 +#: book.translate.xml:7058 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 2755 sgidexample.sh</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7053 +#: book.translate.xml:7060 msgid "" "In the following listing, notice that the <literal>s</literal> is now in the " "field designated for the group permission settings:" msgstr "注意以下清單中,<literal>s</literal> 現在位於指定群組權限設定的欄位:" #. (itstool) path: sect2/screen -#: book.translate.xml:7057 +#: book.translate.xml:7064 #, no-wrap msgid "-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 sgidexample.sh" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:7060 +#: book.translate.xml:7067 msgid "" "In these examples, even though the shell script in question is an executable " "file, it will not run with a different <acronym>EUID</acronym> or effective " @@ -10252,7 +10252,7 @@ msgstr "" "manvolnum></citerefentry> 系統呼叫 (System call)。" #. (itstool) path: sect2/para -#: book.translate.xml:7067 +#: book.translate.xml:7074 msgid "" "The <literal>setuid</literal> and <literal>setgid</literal> permission bits " "may lower system security, by allowing for elevated permissions. The third " @@ -10264,7 +10264,7 @@ msgstr "" "literal>,可以加強系統的安全性。" #. (itstool) path: sect2/para -#: book.translate.xml:7073 +#: book.translate.xml:7080 msgid "" "When the <literal>sticky bit</literal> is set on a directory, it allows file " "deletion only by the file owner. This is useful to prevent file deletion in " @@ -10277,13 +10277,13 @@ msgstr "" "非常有用。要使用這個權限,可在權限集前加上 (1):" #. (itstool) path: sect2/screen -#: book.translate.xml:7080 +#: book.translate.xml:7087 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 1777 /tmp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7082 +#: book.translate.xml:7089 msgid "" "The <literal>sticky bit</literal> permission will display as a <literal>t</" "literal> at the very end of the permission set:" @@ -10292,29 +10292,29 @@ msgstr "" "後:" #. (itstool) path: sect2/screen -#: book.translate.xml:7086 +#: book.translate.xml:7093 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -al / | grep tmp</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:7088 +#: book.translate.xml:7095 #, no-wrap msgid "drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:7094 +#: book.translate.xml:7101 msgid "Directory Structure" msgstr "目錄結構" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7096 +#: book.translate.xml:7103 msgid "<primary>directory hierarchy</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7100 +#: book.translate.xml:7107 msgid "" "The FreeBSD directory hierarchy is fundamental to obtaining an overall " "understanding of the system. The most important directory is root or, " @@ -10329,7 +10329,7 @@ msgstr "" "會有開機所會用到必備檔案。 此外,根目錄還有紀錄其他檔案系統的掛載點相關設定。" #. (itstool) path: sect1/para -#: book.translate.xml:7109 +#: book.translate.xml:7116 msgid "" "A mount point is a directory where additional file systems can be grafted " "onto a parent file system (usually the root file system). This is further " @@ -10356,7 +10356,7 @@ msgstr "" "option> 選項。 其中細節說明可參閱 <xref linkend=\"disks-fstab\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7124 +#: book.translate.xml:7131 msgid "" "A complete description of the file system hierarchy is available in " "<citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></" @@ -10369,45 +10369,45 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: sect3/title -#: book.translate.xml:7133 book.translate.xml:10995 +#: book.translate.xml:7140 book.translate.xml:11002 msgid "Directory" msgstr "目錄" #. (itstool) path: row/entry -#: book.translate.xml:7140 +#: book.translate.xml:7147 msgid "Root directory of the file system." msgstr "檔案系統的根目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7144 +#: book.translate.xml:7151 msgid "<filename>/bin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7145 +#: book.translate.xml:7152 msgid "" "User utilities fundamental to both single-user and multi-user environments." msgstr "" "單使用者 (Single-user)、多使用者 (Multi-user) 兩種模式皆可使用的基本工具 。" #. (itstool) path: row/entry -#: book.translate.xml:7150 +#: book.translate.xml:7157 msgid "<filename>/boot/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7151 +#: book.translate.xml:7158 msgid "" "Programs and configuration files used during operating system bootstrap." msgstr "作業系統開機過程會用到的程式、設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7156 +#: book.translate.xml:7163 msgid "<filename>/boot/defaults/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7157 +#: book.translate.xml:7164 msgid "" "Default boot configuration files. Refer to " "<citerefentry><refentrytitle>loader.conf</refentrytitle><manvolnum>5</" @@ -10417,12 +10417,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7162 +#: book.translate.xml:7169 msgid "<filename>/dev/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7163 +#: book.translate.xml:7170 msgid "" "Device nodes. Refer to <citerefentry><refentrytitle>intro</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> for details." @@ -10431,22 +10431,22 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7168 +#: book.translate.xml:7175 msgid "<filename>/etc/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7169 +#: book.translate.xml:7176 msgid "System configuration files and scripts." msgstr "系統設定檔及一些 Script 檔。" #. (itstool) path: row/entry -#: book.translate.xml:7173 +#: book.translate.xml:7180 msgid "<filename>/etc/defaults/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7174 +#: book.translate.xml:7181 msgid "" "Default system configuration files. Refer to " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -10456,12 +10456,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7179 +#: book.translate.xml:7186 msgid "<filename>/etc/mail/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7180 +#: book.translate.xml:7187 msgid "" "Configuration files for mail transport agents such as " "<citerefentry><refentrytitle>sendmail</refentrytitle><manvolnum>8</" @@ -10471,12 +10471,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 的相關設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7185 +#: book.translate.xml:7192 msgid "<filename>/etc/namedb/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7186 +#: book.translate.xml:7193 msgid "" "<citerefentry><refentrytitle>named</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> configuration files." @@ -10485,12 +10485,12 @@ msgstr "" "citerefentry> 設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7190 +#: book.translate.xml:7197 msgid "<filename>/etc/periodic/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7191 +#: book.translate.xml:7198 msgid "" "Scripts that run daily, weekly, and monthly, via " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -10503,12 +10503,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7197 +#: book.translate.xml:7204 msgid "<filename>/etc/ppp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7198 +#: book.translate.xml:7205 msgid "" "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> configuration files." @@ -10517,24 +10517,24 @@ msgstr "" "citerefentry> 設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:7202 +#: book.translate.xml:7209 msgid "<filename>/mnt/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7203 +#: book.translate.xml:7210 msgid "" "Empty directory commonly used by system administrators as a temporary mount " "point." msgstr "系統管理者慣用充當臨時掛載點的空目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7208 +#: book.translate.xml:7215 msgid "<filename>/proc/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7209 +#: book.translate.xml:7216 msgid "" "Process file system. Refer to <citerefentry><refentrytitle>procfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, " @@ -10547,12 +10547,12 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7214 +#: book.translate.xml:7221 msgid "<filename>/rescue/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7215 +#: book.translate.xml:7222 msgid "" "Statically linked programs for emergency recovery as described in " "<citerefentry><refentrytitle>rescue</refentrytitle><manvolnum>8</manvolnum></" @@ -10563,24 +10563,24 @@ msgstr "" "citerefentry>。" #. (itstool) path: row/entry -#: book.translate.xml:7220 +#: book.translate.xml:7227 msgid "<filename>/root/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7221 +#: book.translate.xml:7228 msgid "" "Home directory for the <systemitem class=\"username\">root</systemitem> " "account." msgstr "<systemitem class=\"username\">root</systemitem> 帳號的家目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7227 +#: book.translate.xml:7234 msgid "<filename>/sbin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7228 +#: book.translate.xml:7235 msgid "" "System programs and administration utilities fundamental to both single-user " "and multi-user environments." @@ -10589,12 +10589,12 @@ msgstr "" "具 。" #. (itstool) path: row/entry -#: book.translate.xml:7234 +#: book.translate.xml:7241 msgid "<filename>/tmp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7235 +#: book.translate.xml:7242 msgid "" "Temporary files which are usually <emphasis>not</emphasis> preserved across " "a system reboot. A memory-based file system is often mounted at <filename>/" @@ -10613,72 +10613,72 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>)。" #. (itstool) path: row/entry -#: book.translate.xml:7245 +#: book.translate.xml:7252 msgid "<filename>/usr/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7246 +#: book.translate.xml:7253 msgid "The majority of user utilities and applications." msgstr "主要是使用者所安裝的工具程式、應用程式存放處。" #. (itstool) path: row/entry -#: book.translate.xml:7251 +#: book.translate.xml:7258 msgid "<filename>/usr/bin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7252 +#: book.translate.xml:7259 msgid "Common utilities, programming tools, and applications." msgstr "常用工具、開發工具、應用軟體。" #. (itstool) path: row/entry -#: book.translate.xml:7257 +#: book.translate.xml:7264 msgid "<filename>/usr/include/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7258 +#: book.translate.xml:7265 msgid "Standard C include files." msgstr "標準 C include 檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7262 +#: book.translate.xml:7269 msgid "<filename>/usr/lib/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7263 +#: book.translate.xml:7270 msgid "Archive libraries." msgstr "程式庫存放處。" #. (itstool) path: row/entry -#: book.translate.xml:7268 +#: book.translate.xml:7275 msgid "<filename>/usr/libdata/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7269 +#: book.translate.xml:7276 msgid "Miscellaneous utility data files." msgstr "其他各式工具的資料檔。" #. (itstool) path: row/entry -#: book.translate.xml:7273 +#: book.translate.xml:7280 msgid "<filename>/usr/libexec/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7274 +#: book.translate.xml:7281 msgid "System daemons and system utilities executed by other programs." msgstr "系統 Daemon 及系統工具程式 (透過其他程式來執行)。" #. (itstool) path: row/entry -#: book.translate.xml:7279 +#: book.translate.xml:7286 msgid "<filename>/usr/local/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7280 +#: book.translate.xml:7287 msgid "" "Local executables and libraries. Also used as the default destination for " "the FreeBSD ports framework. Within <filename>/usr/local</filename>, the " @@ -10698,64 +10698,64 @@ msgstr "" "<replaceable>port</replaceable></filename>。" #. (itstool) path: row/entry -#: book.translate.xml:7293 +#: book.translate.xml:7300 msgid "<filename>/usr/obj/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7294 +#: book.translate.xml:7301 msgid "" "Architecture-specific target tree produced by building the <filename>/usr/" "src</filename> tree." msgstr "在編譯 <filename>/usr/src</filename> 目錄時所產生的相關架構目地檔。" #. (itstool) path: row/entry -#: book.translate.xml:7300 +#: book.translate.xml:7307 msgid "<filename>/usr/ports/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7301 +#: book.translate.xml:7308 msgid "The FreeBSD Ports Collection (optional)." msgstr "FreeBSD Port 套件集 (選用)。" #. (itstool) path: row/entry -#: book.translate.xml:7305 +#: book.translate.xml:7312 msgid "<filename>/usr/sbin/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7306 +#: book.translate.xml:7313 msgid "System daemons and system utilities executed by users." msgstr "由使用者執行的系統 Daemon 及系統工具。" #. (itstool) path: row/entry -#: book.translate.xml:7311 +#: book.translate.xml:7318 msgid "<filename>/usr/share/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7312 +#: book.translate.xml:7319 msgid "Architecture-independent files." msgstr "各架構皆共通的檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7316 +#: book.translate.xml:7323 msgid "<filename>/usr/src/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7317 +#: book.translate.xml:7324 msgid "BSD and/or local source files." msgstr "BSD 原始碼 (或自行新增的)。" #. (itstool) path: row/entry -#: book.translate.xml:7321 +#: book.translate.xml:7328 msgid "<filename>/var/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7322 +#: book.translate.xml:7329 msgid "" "Multi-purpose log, temporary, transient, and spool files. A memory-based " "file system is sometimes mounted at <filename>/var</filename>. This can be " @@ -10774,42 +10774,42 @@ msgstr "" "citerefentry>)。" #. (itstool) path: row/entry -#: book.translate.xml:7333 +#: book.translate.xml:7340 msgid "<filename>/var/log/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7334 +#: book.translate.xml:7341 msgid "Miscellaneous system log files." msgstr "各項系統記錄的日誌 (Log) 檔。" #. (itstool) path: row/entry -#: book.translate.xml:7338 +#: book.translate.xml:7345 msgid "<filename>/var/mail/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7339 +#: book.translate.xml:7346 msgid "User mailbox files." msgstr "各使用者的郵件 (Mailbox) 檔案。" #. (itstool) path: row/entry -#: book.translate.xml:7343 +#: book.translate.xml:7350 msgid "<filename>/var/spool/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7344 +#: book.translate.xml:7351 msgid "Miscellaneous printer and mail system spooling directories." msgstr "各種印表機、郵件系統的緩衝 (Spool) 目錄。" #. (itstool) path: row/entry -#: book.translate.xml:7349 +#: book.translate.xml:7356 msgid "<filename>/var/tmp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7350 +#: book.translate.xml:7357 msgid "" "Temporary files which are usually preserved across a system reboot, unless " "<filename>/var</filename> is a memory-based file system." @@ -10818,22 +10818,22 @@ msgstr "" "屬於以記憶體為基礎 (Memory-based) 的檔案系統。" #. (itstool) path: row/entry -#: book.translate.xml:7357 +#: book.translate.xml:7364 msgid "<filename>/var/yp/</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7358 +#: book.translate.xml:7365 msgid "NIS maps." msgstr "NIS 對應表。" #. (itstool) path: sect1/title -#: book.translate.xml:7366 +#: book.translate.xml:7373 msgid "Disk Organization" msgstr "磁碟組織" #. (itstool) path: sect1/para -#: book.translate.xml:7368 +#: book.translate.xml:7375 msgid "" "The smallest unit of organization that FreeBSD uses to find files is the " "filename. Filenames are case-sensitive, which means that <filename>readme." @@ -10847,7 +10847,7 @@ msgstr "" "他類型的檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:7375 +#: book.translate.xml:7382 msgid "" "Files are stored in directories. A directory may contain no files, or it may " "contain many hundreds of files. A directory can also contain other " @@ -10858,7 +10858,7 @@ msgstr "" "中也可以包含其他的目錄; 您可以建立階層式的目錄以便資料的管理。" #. (itstool) path: sect1/para -#: book.translate.xml:7381 +#: book.translate.xml:7388 msgid "" "Files and directories are referenced by giving the file or directory name, " "followed by a forward slash, <literal>/</literal>, followed by any other " @@ -10883,7 +10883,7 @@ msgstr "" "<filename>c:\\foo\\bar\\readme.txt</filename> 這種路徑。" #. (itstool) path: sect1/para -#: book.translate.xml:7396 +#: book.translate.xml:7403 msgid "" "Directories and files are stored in a file system. Each file system contains " "exactly one directory at the very top level, called the <firstterm>root " @@ -10902,7 +10902,7 @@ msgstr "" "個磁碟,所有目錄都會成為該磁碟的一部份。" #. (itstool) path: sect1/para -#: book.translate.xml:7407 +#: book.translate.xml:7414 msgid "" "Consider three file systems, called <literal>A</literal>, <literal>B</" "literal>, and <literal>C</literal>. Each file system has one root directory, " @@ -10916,7 +10916,7 @@ msgstr "" "<literal>B2</literal> 及 <literal>C1</literal>, <literal>C2</literal>)。" #. (itstool) path: sect1/para -#: book.translate.xml:7414 +#: book.translate.xml:7421 msgid "" "Call <literal>A</literal> the root file system. If " "<citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></" @@ -10934,13 +10934,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7422 +#: book.translate.xml:7429 msgctxt "_" msgid "external ref='basics/example-dir1' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7426 +#: book.translate.xml:7433 #, no-wrap msgid "" " /\n" @@ -10951,7 +10951,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7434 +#: book.translate.xml:7441 msgid "" "A file system must be mounted on to a directory in another file system. When " "mounting file system <literal>B</literal> on to the directory <literal>A1</" @@ -10968,13 +10968,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7443 +#: book.translate.xml:7450 msgctxt "_" msgid "external ref='basics/example-dir2' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7447 +#: book.translate.xml:7454 #, no-wrap msgid "" " /\n" @@ -10989,7 +10989,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7459 +#: book.translate.xml:7466 msgid "" "Any files that are in the <literal>B1</literal> or <literal>B2</literal> " "directories can be reached with the path <filename>/A1/B1</filename> or " @@ -11004,7 +11004,7 @@ msgstr "" "literal> 被<firstterm>卸載 (Unmount)</firstterm> 後才會再顯現出來。" #. (itstool) path: sect1/para -#: book.translate.xml:7468 +#: book.translate.xml:7475 msgid "" "If <literal>B</literal> had been mounted on <literal>A2</literal> then the " "diagram would look like this:" @@ -11016,13 +11016,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7474 +#: book.translate.xml:7481 msgctxt "_" msgid "external ref='basics/example-dir3' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7478 +#: book.translate.xml:7485 #, no-wrap msgid "" " /\n" @@ -11037,7 +11037,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7490 +#: book.translate.xml:7497 msgid "" "and the paths would be <filename>/A2/B1</filename> and <filename>/A2/B2</" "filename> respectively." @@ -11045,7 +11045,7 @@ msgstr "" "上面的路徑分別為 <filename>/A2/B1</filename> 及 <filename>/A2/B2</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:7495 +#: book.translate.xml:7502 msgid "" "File systems can be mounted on top of one another. Continuing the last " "example, the <literal>C</literal> file system could be mounted on top of the " @@ -11061,13 +11061,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7503 +#: book.translate.xml:7510 msgctxt "_" msgid "external ref='basics/example-dir4' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7507 +#: book.translate.xml:7514 #, no-wrap msgid "" " /\n" @@ -11086,7 +11086,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7523 +#: book.translate.xml:7530 msgid "" "Or <literal>C</literal> could be mounted directly on to the <literal>A</" "literal> file system, under the <literal>A1</literal> directory:" @@ -11099,13 +11099,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7529 +#: book.translate.xml:7536 msgctxt "_" msgid "external ref='basics/example-dir5' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:7533 +#: book.translate.xml:7540 #, no-wrap msgid "" " /\n" @@ -11124,7 +11124,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7549 +#: book.translate.xml:7556 msgid "" "It is entirely possible to have one large root file system, and not need to " "create any others. There are some drawbacks to this approach, and one " @@ -11134,12 +11134,12 @@ msgstr "" "處。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:7554 +#: book.translate.xml:7561 msgid "Benefits of Multiple File Systems" msgstr "使用多個檔案系統的好處" #. (itstool) path: listitem/para -#: book.translate.xml:7557 +#: book.translate.xml:7564 msgid "" "Different file systems can have different <firstterm>mount options</" "firstterm>. For example, the root file system can be mounted read-only, " @@ -11158,7 +11158,7 @@ msgstr "" "<firstterm>guid</firstterm> 位元失效,可讓系統更安全。" #. (itstool) path: listitem/para -#: book.translate.xml:7571 +#: book.translate.xml:7578 msgid "" "FreeBSD automatically optimizes the layout of files on a file system, " "depending on how the file system is being used. So a file system that " @@ -11171,7 +11171,7 @@ msgstr "" "如果您只有單一個大的檔案系統,這部分就沒用了。" #. (itstool) path: listitem/para -#: book.translate.xml:7580 +#: book.translate.xml:7587 msgid "" "FreeBSD's file systems are robust if power is lost. However, a power loss at " "a critical point could still damage the structure of the file system. By " @@ -11183,12 +11183,12 @@ msgstr "" "以便您在需要的時候將備份資料回存回來。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:7590 +#: book.translate.xml:7597 msgid "Benefit of a Single File System" msgstr "使用單一檔案系統的好處" #. (itstool) path: listitem/para -#: book.translate.xml:7593 +#: book.translate.xml:7600 msgid "" "File systems are a fixed size. If you create a file system when you install " "FreeBSD and give it a specific size, you may later discover that you need to " @@ -11201,7 +11201,7 @@ msgstr "" "的大小,然後將備份回存回來。" #. (itstool) path: important/para -#: book.translate.xml:7601 +#: book.translate.xml:7608 msgid "" "FreeBSD features the <citerefentry><refentrytitle>growfs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> command, which makes " @@ -11212,7 +11212,7 @@ msgstr "" "manvolnum></citerefentry> 指令可以突破此限制直接變更檔案系統的大小。" #. (itstool) path: sect1/para -#: book.translate.xml:7608 +#: book.translate.xml:7615 msgid "" "File systems are contained in partitions. This does not have the same " "meaning as the common usage of the term partition (for example, <trademark " @@ -11231,7 +11231,7 @@ msgstr "" "點表示外,也可以使用該檔案系統所在的分區來表示。" #. (itstool) path: sect1/para -#: book.translate.xml:7618 +#: book.translate.xml:7625 msgid "" "FreeBSD also uses disk space for <firstterm>swap space</firstterm> to " "provide <firstterm>virtual memory</firstterm>. This allows your computer to " @@ -11246,47 +11246,47 @@ msgstr "" "移到交換空間,然後在用到的時候移回去 (同時移出部份沒用到的)。" #. (itstool) path: sect1/para -#: book.translate.xml:7627 +#: book.translate.xml:7634 msgid "Some partitions have certain conventions associated with them." msgstr "部份分區有使用的慣例如下:" #. (itstool) path: row/entry -#: book.translate.xml:7637 +#: book.translate.xml:7644 msgid "Partition" msgstr "分區" #. (itstool) path: row/entry -#: book.translate.xml:7638 +#: book.translate.xml:7645 msgid "Convention" msgstr "慣例" #. (itstool) path: row/entry -#: book.translate.xml:7644 +#: book.translate.xml:7651 msgid "<literal>a</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7645 +#: book.translate.xml:7652 msgid "Normally contains the root file system." msgstr "通常內含根檔案系統" #. (itstool) path: row/entry -#: book.translate.xml:7649 +#: book.translate.xml:7656 msgid "<literal>b</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7650 +#: book.translate.xml:7657 msgid "Normally contains swap space." msgstr "通常內含交換空間" #. (itstool) path: row/entry -#: book.translate.xml:7654 +#: book.translate.xml:7661 msgid "<literal>c</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7655 +#: book.translate.xml:7662 msgid "" "Normally the same size as the enclosing slice. This allows utilities that " "need to work on the entire slice, such as a bad block scanner, to work on " @@ -11298,12 +11298,12 @@ msgstr "" "執行。一般來說不會把檔案系統建立在這個分區。" #. (itstool) path: row/entry -#: book.translate.xml:7663 +#: book.translate.xml:7670 msgid "<literal>d</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7664 +#: book.translate.xml:7671 msgid "" "Partition <literal>d</literal> used to have a special meaning associated " "with it, although that is now gone and <literal>d</literal> may work as any " @@ -11313,7 +11313,7 @@ msgstr "" "<literal>d</literal> 和一般的分區相同。" #. (itstool) path: sect1/para -#: book.translate.xml:7673 +#: book.translate.xml:7680 msgid "" "Disks in FreeBSD are divided into slices, referred to in <trademark class=" "\"registered\">Windows</trademark> as partitions, which are numbered from 1 " @@ -11325,22 +11325,22 @@ msgstr "" "再分成數個分區,每個分區內含檔案系統,且會使用字母來標示。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7678 +#: book.translate.xml:7685 msgid "<primary>slices</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7681 book.translate.xml:32052 book.translate.xml:32148 +#: book.translate.xml:7688 book.translate.xml:32059 book.translate.xml:32155 msgid "<primary>partitions</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7684 +#: book.translate.xml:7691 msgid "<primary>dangerously dedicated</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7688 +#: book.translate.xml:7695 msgid "" "Slice numbers follow the device name, prefixed with an <literal>s</literal>, " "starting at 1. So <quote>da0<emphasis>s1</emphasis></quote> is the first " @@ -11359,7 +11359,7 @@ msgstr "" "檔案系統使用的裝置 (Device) 上均會各別佔據一個切割區。" #. (itstool) path: sect1/para -#: book.translate.xml:7698 +#: book.translate.xml:7705 msgid "" "Slices, <quote>dangerously dedicated</quote> physical drives, and other " "drives contain <firstterm>partitions</firstterm>, which are represented as " @@ -11379,7 +11379,7 @@ msgstr "" "三個切割區的第五個分區。" #. (itstool) path: sect1/para -#: book.translate.xml:7711 +#: book.translate.xml:7718 msgid "" "Finally, each disk on the system is identified. A disk name starts with a " "code that indicates the type of disk, and then a number, indicating which " @@ -11391,7 +11391,7 @@ msgstr "" "始。常見的代碼可以參考 <xref linkend=\"disks-naming\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7717 +#: book.translate.xml:7724 msgid "" "When referring to a partition, include the disk name, <literal>s</literal>, " "the slice number, and then the partition letter. Examples are shown in <xref " @@ -11401,7 +11401,7 @@ msgstr "" "及分區字母。範例可以參考 <xref linkend=\"basics-disk-slice-part\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:7722 +#: book.translate.xml:7729 msgid "" "<xref linkend=\"basics-concept-disk-model\"/> shows a conceptual model of a " "disk layout." @@ -11410,7 +11410,7 @@ msgstr "" "對您有些幫助。" #. (itstool) path: sect1/para -#: book.translate.xml:7725 +#: book.translate.xml:7732 msgid "" "When installing FreeBSD, configure the disk slices, create partitions within " "the slice to be used for FreeBSD, create a file system or swap space in each " @@ -11421,44 +11421,44 @@ msgstr "" "哪裡。" #. (itstool) path: table/title -#: book.translate.xml:7731 +#: book.translate.xml:7738 msgid "Disk Device Names" msgstr "磁碟裝置名稱" #. (itstool) path: row/entry -#: book.translate.xml:7739 +#: book.translate.xml:7746 msgid "Drive Type" msgstr "磁碟機類型" #. (itstool) path: row/entry -#: book.translate.xml:7740 +#: book.translate.xml:7747 msgid "Drive Device Name" msgstr "磁碟機裝置稱" #. (itstool) path: row/entry -#: book.translate.xml:7746 +#: book.translate.xml:7753 msgid "<acronym>SATA</acronym> and <acronym>IDE</acronym> hard drives" msgstr "<acronym>SATA</acronym> 及 <acronym>IDE</acronym> 硬碟" #. (itstool) path: row/entry -#: book.translate.xml:7748 +#: book.translate.xml:7755 msgid "<literal>ada</literal> or <literal>ad</literal>" msgstr "<literal>ada</literal> 或 <literal>ad</literal>" #. (itstool) path: row/entry -#: book.translate.xml:7753 +#: book.translate.xml:7760 msgid "" "<acronym>SCSI</acronym> hard drives and <acronym>USB</acronym> storage " "devices" msgstr "<acronym>SCSI</acronym> 硬碟與 <acronym>USB</acronym> 儲存裝置" #. (itstool) path: row/entry -#: book.translate.xml:7755 +#: book.translate.xml:7762 msgid "<literal>da</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7759 +#: book.translate.xml:7766 msgid "" "<acronym>SATA</acronym> and <acronym>IDE</acronym> <acronym>CD-ROM</acronym> " "drives" @@ -11467,37 +11467,37 @@ msgstr "" "光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7761 +#: book.translate.xml:7768 msgid "<literal>cd</literal> or <literal>acd</literal>" msgstr "<literal>cd</literal> 或 <literal>acd</literal>" #. (itstool) path: row/entry -#: book.translate.xml:7766 +#: book.translate.xml:7773 msgid "<acronym>SCSI</acronym> <acronym>CD-ROM</acronym> drives" msgstr "<acronym>SCSI</acronym> <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7768 +#: book.translate.xml:7775 msgid "<literal>cd</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7772 +#: book.translate.xml:7779 msgid "Floppy drives" msgstr "軟碟機" #. (itstool) path: row/entry -#: book.translate.xml:7773 +#: book.translate.xml:7780 msgid "<literal>fd</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7777 +#: book.translate.xml:7784 msgid "Assorted non-standard <acronym>CD-ROM</acronym> drives" msgstr "各種非標準 <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7779 +#: book.translate.xml:7786 msgid "" "<literal>mcd</literal> for Mitsumi <acronym>CD-ROM</acronym> and " "<literal>scd</literal> for Sony <acronym>CD-ROM</acronym> devices" @@ -11506,32 +11506,32 @@ msgstr "" "<literal>scd</literal> 代表 Sony <acronym>CD-ROM</acronym> 光碟機" #. (itstool) path: row/entry -#: book.translate.xml:7785 +#: book.translate.xml:7792 msgid "<acronym>SCSI</acronym> tape drives" msgstr "<acronym>SCSI</acronym> 磁帶機" #. (itstool) path: row/entry -#: book.translate.xml:7786 +#: book.translate.xml:7793 msgid "<literal>sa</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7790 +#: book.translate.xml:7797 msgid "<acronym>IDE</acronym> tape drives" msgstr "<acronym>IDE</acronym> 磁帶機" #. (itstool) path: row/entry -#: book.translate.xml:7791 +#: book.translate.xml:7798 msgid "<literal>ast</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7795 +#: book.translate.xml:7802 msgid "RAID drives" msgstr "RAID 磁碟機" #. (itstool) path: row/entry -#: book.translate.xml:7796 +#: book.translate.xml:7803 msgid "" "Examples include <literal>aacd</literal> for <trademark class=\"registered" "\">Adaptec</trademark> AdvancedRAID, <literal>mlxd</literal> and " @@ -11550,27 +11550,27 @@ msgstr "" "trademark> RAID." #. (itstool) path: example/title -#: book.translate.xml:7808 +#: book.translate.xml:7815 msgid "Sample Disk, Slice, and Partition Names" msgstr "磁碟、切割區及分區命名範例" #. (itstool) path: row/entry -#: book.translate.xml:7817 +#: book.translate.xml:7824 msgid "Name" msgstr "名稱" #. (itstool) path: row/entry -#: book.translate.xml:7818 book.translate.xml:62712 +#: book.translate.xml:7825 book.translate.xml:62339 msgid "Meaning" msgstr "意義" #. (itstool) path: row/entry -#: book.translate.xml:7824 +#: book.translate.xml:7831 msgid "<literal>ada0s1a</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7825 +#: book.translate.xml:7832 msgid "" "The first partition (<literal>a</literal>) on the first slice (<literal>s1</" "literal>) on the first <acronym>SATA</acronym> disk (<literal>ada0</" @@ -11580,12 +11580,12 @@ msgstr "" "literal>)的第一個分區(<literal>a</literal>) 。" #. (itstool) path: row/entry -#: book.translate.xml:7832 +#: book.translate.xml:7839 msgid "<literal>da1s2e</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:7833 +#: book.translate.xml:7840 msgid "" "The fifth partition (<literal>e</literal>) on the second slice (<literal>s2</" "literal>) on the second SCSI disk (<literal>da1</literal>)." @@ -11594,12 +11594,12 @@ msgstr "" "literal>) 的第五個分區 (<literal>e</literal>) 。" #. (itstool) path: example/title -#: book.translate.xml:7843 +#: book.translate.xml:7850 msgid "Conceptual Model of a Disk" msgstr "磁碟的概念模型" #. (itstool) path: example/para -#: book.translate.xml:7845 +#: book.translate.xml:7852 msgid "" "This diagram shows FreeBSD's view of the first <acronym>SATA</acronym> disk " "attached to the system. Assume that the disk is 250 GB in size, and contains " @@ -11618,7 +11618,7 @@ msgstr "" "裝了 FreeBSD。 本範例中安裝的 FreeBSD 有四個資料分區及一個交換分區。" #. (itstool) path: example/para -#: book.translate.xml:7855 +#: book.translate.xml:7862 msgid "" "The four partitions each hold a file system. Partition <literal>a</literal> " "is used for the root file system, <literal>d</literal> for <filename>/var/</" @@ -11638,18 +11638,18 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:7865 +#: book.translate.xml:7872 msgctxt "_" msgid "external ref='basics/disk-layout' md5='__failed__'" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:7872 +#: book.translate.xml:7879 msgid "Mounting and Unmounting File Systems" msgstr "掛載與卸載檔案系統" #. (itstool) path: sect1/para -#: book.translate.xml:7874 +#: book.translate.xml:7881 msgid "" "The file system is best visualized as a tree, rooted, as it were, at " "<filename>/</filename>. <filename>/dev</filename>, <filename>/usr</" @@ -11662,12 +11662,12 @@ msgstr "" "些樹枝上面又還有分支,像是 <filename>/usr/local</filename> 等。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:7883 +#: book.translate.xml:7890 msgid "<primary>root file system</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:7887 +#: book.translate.xml:7894 msgid "" "There are various reasons to house some of these directories on separate " "file systems. <filename>/var</filename> contains the directories " @@ -11683,7 +11683,7 @@ msgstr "" "filename> 中拉出來。" #. (itstool) path: sect1/para -#: book.translate.xml:7898 +#: book.translate.xml:7905 msgid "" "Another common reason to contain certain directory trees on other file " "systems is if they are to be housed on separate physical disks, or are " @@ -11695,18 +11695,18 @@ msgstr "" "\"network-nfs\"/> 或是光碟機。" #. (itstool) path: sect2/title -#: book.translate.xml:7905 +#: book.translate.xml:7912 msgid "The <filename>fstab</filename> File" msgstr "<filename>fstab</filename> 檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:7907 +#: book.translate.xml:7914 msgid "" "<primary>file systems</primary> <secondary>mounted with fstab</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:7912 +#: book.translate.xml:7919 msgid "" "During the boot process (<xref linkend=\"boot\"/>), file systems listed in " "<filename>/etc/fstab</filename> are automatically mounted except for the " @@ -11718,39 +11718,39 @@ msgstr "" "<option>noauto</option> 參數)。檔案內容的格式如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:7918 +#: book.translate.xml:7925 #, no-wrap msgid "<replaceable>device</replaceable> <replaceable>/mount-point</replaceable> <replaceable>fstype</replaceable> <replaceable>options</replaceable> <replaceable>dumpfreq</replaceable> <replaceable>passno</replaceable>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:7922 +#: book.translate.xml:7929 msgid "<literal>device</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7924 +#: book.translate.xml:7931 msgid "" "An existing device name as explained in <xref linkend=\"disks-naming\"/>." msgstr "已存在的裝置名稱,詳情請參閱 <xref linkend=\"disks-naming\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7930 +#: book.translate.xml:7937 msgid "<literal>mount-point</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7933 +#: book.translate.xml:7940 msgid "An existing directory on which to mount the file system." msgstr "檔案系統要掛載到的目錄 (該目錄必須存在)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7939 +#: book.translate.xml:7946 msgid "<literal>fstype</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7942 +#: book.translate.xml:7949 msgid "" "The file system type to pass to <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. The default FreeBSD " @@ -11761,12 +11761,12 @@ msgstr "" "檔案系統是 <literal>ufs</literal>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7949 +#: book.translate.xml:7956 msgid "<literal>options</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7952 +#: book.translate.xml:7959 msgid "" "Either <option>rw</option> for read-write file systems, or <option>ro</" "option> for read-only file systems, followed by any other options that may " @@ -11782,12 +11782,12 @@ msgstr "" "manvolnum></citerefentry> 說明。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7963 +#: book.translate.xml:7970 msgid "<literal>dumpfreq</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7966 +#: book.translate.xml:7973 msgid "" "Used by <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to determine which file systems require dumping. " @@ -11797,12 +11797,12 @@ msgstr "" "citerefentry> 由此項目決定那些檔案系統需要傾印。 如果這格空白則以零為預設值。" #. (itstool) path: varlistentry/term -#: book.translate.xml:7973 +#: book.translate.xml:7980 msgid "<literal>passno</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:7976 +#: book.translate.xml:7983 msgid "" "Determines the order in which file systems should be checked. File systems " "that should be skipped should have their <literal>passno</literal> set to " @@ -11822,7 +11822,7 @@ msgstr "" "的話) 檢查這些檔案系統。" #. (itstool) path: sect2/para -#: book.translate.xml:7990 +#: book.translate.xml:7997 msgid "" "Refer to <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information on the format of <filename>/" @@ -11833,7 +11833,7 @@ msgstr "" "citerefentry> 說明文件。" #. (itstool) path: sect2/title -#: book.translate.xml:7995 +#: book.translate.xml:8002 msgid "" "Using <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -11842,12 +11842,12 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:7997 +#: book.translate.xml:8004 msgid "<primary>file systems</primary> <secondary>mounting</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8002 +#: book.translate.xml:8009 msgid "" "File systems are mounted using <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. The most basic syntax " @@ -11857,13 +11857,13 @@ msgstr "" "citerefentry> 指令是拿來掛載檔案系統用的。基本的操作指令格式如下:" #. (itstool) path: informalexample/screen -#: book.translate.xml:8006 +#: book.translate.xml:8013 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount <replaceable>device</replaceable> <replaceable>mountpoint</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8009 +#: book.translate.xml:8016 msgid "" "This command provides many options which are described in " "<citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></" @@ -11873,18 +11873,18 @@ msgstr "" "manvolnum></citerefentry> 裡面有提到一大堆的選項,不過最常用的就是這些:" #. (itstool) path: variablelist/title -#: book.translate.xml:8013 +#: book.translate.xml:8020 msgid "Mount Options" msgstr "掛載選項" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:8016 book.translate.xml:23319 +#: book.translate.xml:8023 book.translate.xml:23326 msgid "<option>-a</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8019 +#: book.translate.xml:8026 msgid "" "Mount all the file systems listed in <filename>/etc/fstab</filename>, except " "those marked as <quote>noauto</quote>, excluded by the <option>-t</option> " @@ -11894,12 +11894,12 @@ msgstr "" "filename> 而且沒有用 <option>-t</option> 排除的檔案系統掛載起來。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8028 +#: book.translate.xml:8035 msgid "<option>-d</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8032 +#: book.translate.xml:8039 msgid "" "Do everything except for the actual mount system call. This option is useful " "in conjunction with the <option>-v</option> flag to determine what " @@ -11912,12 +11912,12 @@ msgstr "" "用。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8040 book.translate.xml:26440 +#: book.translate.xml:8047 book.translate.xml:26447 msgid "<option>-f</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8043 +#: book.translate.xml:8050 msgid "" "Force the mount of an unclean file system (dangerous), or the revocation of " "write access when downgrading a file system's mount status from read-write " @@ -11927,12 +11927,12 @@ msgstr "" "態從可存取變成唯讀)。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8051 +#: book.translate.xml:8058 msgid "<option>-r</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8054 +#: book.translate.xml:8061 msgid "" "Mount the file system read-only. This is identical to using <option>-o ro</" "option>." @@ -11940,12 +11940,12 @@ msgstr "" "用唯讀的方式掛載檔案系統。 這個選項和在 -o 選項中指定 ro 參數是一樣的。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8060 +#: book.translate.xml:8067 msgid "<option>-t</option> <replaceable>fstype</replaceable>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8064 +#: book.translate.xml:8071 msgid "" "Mount the specified file system type or mount only file systems of the given " "type, if <option>-a</option> is included. <quote>ufs</quote> is the default " @@ -11955,50 +11955,50 @@ msgstr "" "只掛載指定型態的檔案系統。預設的檔案系統類型為 <quote>ufs</quote>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8072 +#: book.translate.xml:8079 msgid "<option>-u</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8075 +#: book.translate.xml:8082 msgid "Update mount options on the file system." msgstr "更新檔案系統的掛載選項。" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:8080 book.translate.xml:23336 +#: book.translate.xml:8087 book.translate.xml:23343 msgid "<option>-v</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8083 +#: book.translate.xml:8090 msgid "Be verbose." msgstr "顯示詳細資訊。" #. (itstool) path: varlistentry/term -#: book.translate.xml:8088 +#: book.translate.xml:8095 msgid "<option>-w</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8091 +#: book.translate.xml:8098 msgid "Mount the file system read-write." msgstr "以可讀寫的模式掛載檔案系統。" #. (itstool) path: sect2/para -#: book.translate.xml:8096 +#: book.translate.xml:8103 msgid "" "The following options can be passed to <option>-o</option> as a comma-" "separated list:" msgstr "<option>-o</option> 選項後面會接著以逗號分隔的參數:" #. (itstool) path: varlistentry/term -#: book.translate.xml:8101 +#: book.translate.xml:8108 msgid "nosuid" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:8104 +#: book.translate.xml:8111 msgid "" "Do not interpret setuid or setgid flags on the file system. This is also a " "useful security option." @@ -12006,7 +12006,7 @@ msgstr "" "不解析檔案系統上的 setuid 或 setgid 旗標, 這也是一個蠻有用的安全選項。" #. (itstool) path: sect2/title -#: book.translate.xml:8113 +#: book.translate.xml:8120 msgid "" "Using <citerefentry><refentrytitle>umount</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -12015,12 +12015,12 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:8115 +#: book.translate.xml:8122 msgid "<primary>file systems</primary> <secondary>unmounting</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8120 +#: book.translate.xml:8127 msgid "" "To unmount a file system use <citerefentry><refentrytitle>umount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This command takes " @@ -12031,7 +12031,7 @@ msgstr "" "(mountpoint),裝置名稱,以及 -a 或是 -A 等選項。 " #. (itstool) path: sect2/para -#: book.translate.xml:8124 +#: book.translate.xml:8131 msgid "" "All forms take <option>-f</option> to force unmounting, and <option>-v</" "option> for verbosity. Be warned that <option>-f</option> is not generally a " @@ -12042,7 +12042,7 @@ msgstr "" "案系統有可能會造成電腦當機, 或者損壞檔案系統內的資料。" #. (itstool) path: sect2/para -#: book.translate.xml:8129 +#: book.translate.xml:8136 msgid "" "To unmount all mounted file systems, or just the file system types listed " "after <option>-t</option>, use <option>-a</option> or <option>-A</option>. " @@ -12054,12 +12054,12 @@ msgstr "" "是 <option>-A</option> 並不會試圖卸載根檔案系統。" #. (itstool) path: sect1/title -#: book.translate.xml:8138 +#: book.translate.xml:8145 msgid "Processes and Daemons" msgstr "程序與 Daemon" #. (itstool) path: sect1/para -#: book.translate.xml:8140 +#: book.translate.xml:8147 msgid "" "FreeBSD is a multi-tasking operating system. Each program running at any one " "time is called a <firstterm>process</firstterm>. Every running command " @@ -12071,7 +12071,7 @@ msgstr "" "令都至少會開啟一個新的程序, 而有些系統程序是一直在跑以維持系統正常運作的。" #. (itstool) path: sect1/para -#: book.translate.xml:8146 +#: book.translate.xml:8153 msgid "" "Each process is uniquely identified by a number called a <firstterm>process " "ID</firstterm> (<acronym>PID</acronym>). Similar to files, each process has " @@ -12096,7 +12096,7 @@ msgstr "" "literal>。" #. (itstool) path: sect1/para -#: book.translate.xml:8158 +#: book.translate.xml:8165 msgid "" "Some programs are not designed to be run with continuous user input and " "disconnect from the terminal at the first opportunity. For example, a web " @@ -12115,7 +12115,7 @@ msgstr "" "情。這也就是為何 BSD 的吉祥物,是一隻穿著帆布鞋拿著三叉耙的快樂小惡魔的原因。" #. (itstool) path: sect1/para -#: book.translate.xml:8169 +#: book.translate.xml:8176 msgid "" "There is a convention to name programs that normally run as daemons with a " "trailing <quote>d</quote>. For example, <application>BIND</application> is " @@ -12136,12 +12136,12 @@ msgstr "" "literal>。" #. (itstool) path: sect2/title -#: book.translate.xml:8183 +#: book.translate.xml:8190 msgid "Viewing Processes" msgstr "檢視程序" #. (itstool) path: sect2/para -#: book.translate.xml:8185 +#: book.translate.xml:8192 msgid "" "To see the processes running on the system, use " "<citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></" @@ -12167,7 +12167,7 @@ msgstr "" "互動式的觀看您的電腦正在做什麼。" #. (itstool) path: sect2/para -#: book.translate.xml:8193 +#: book.translate.xml:8200 msgid "" "By default, <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> only shows the commands that are running and owned " @@ -12177,7 +12177,7 @@ msgstr "" "manvolnum></citerefentry> 指令只會顯示使用者所擁有的的程序。 例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:8196 +#: book.translate.xml:8203 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ps</userinput>\n" @@ -12187,7 +12187,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8201 +#: book.translate.xml:8208 msgid "" "The output from <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> is organized into a number of columns. The " @@ -12214,7 +12214,7 @@ msgstr "" "<literal>COMMAND</literal> 是執行這個程式的指令。" #. (itstool) path: sect2/para -#: book.translate.xml:8216 +#: book.translate.xml:8223 msgid "" "A number of different options are available to change the information that " "is displayed. One of the most useful sets is <literal>auxww</literal>, where " @@ -12235,7 +12235,7 @@ msgstr "" "了。" #. (itstool) path: sect2/para -#: book.translate.xml:8227 +#: book.translate.xml:8234 msgid "" "The output from <citerefentry><refentrytitle>top</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is similar:" @@ -12244,7 +12244,7 @@ msgstr "" "citerefentry> 也有類似的輸出。 一般的情況看像是這樣:" #. (itstool) path: sect2/screen -#: book.translate.xml:8229 +#: book.translate.xml:8236 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>top</userinput>\n" @@ -12270,7 +12270,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8250 +#: book.translate.xml:8257 msgid "" "The output is split into two sections. The header (the first five or six " "lines) shows the <acronym>PID</acronym> of the last process to run, the " @@ -12290,7 +12290,7 @@ msgstr "" "<literal>ARC</literal> 標示有多少資料從磁碟改由記憶體快取中取得。" #. (itstool) path: sect2/para -#: book.translate.xml:8262 +#: book.translate.xml:8269 msgid "" "Below the header is a series of columns containing similar information to " "the output from <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</" @@ -12312,7 +12312,7 @@ msgstr "" "式的記憶體使用量。" #. (itstool) path: sect2/para -#: book.translate.xml:8272 +#: book.translate.xml:8279 msgid "" "<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> automatically updates the display every two seconds. A " @@ -12322,12 +12322,12 @@ msgstr "" "的時間。" #. (itstool) path: sect2/title -#: book.translate.xml:8278 +#: book.translate.xml:8285 msgid "Killing Processes" msgstr "終止程序" #. (itstool) path: sect2/para -#: book.translate.xml:8280 +#: book.translate.xml:8287 msgid "" "One way to communicate with any running process or daemon is to send a " "<firstterm>signal</firstterm> using <citerefentry><refentrytitle>kill</" @@ -12348,7 +12348,7 @@ msgstr "" "systemitem>使用者,他可以送信號給任何人的程序。" #. (itstool) path: sect2/para -#: book.translate.xml:8290 +#: book.translate.xml:8297 msgid "" "The operating system can also send a signal to a process. If an application " "is badly written and tries to access memory that it is not supposed to, " @@ -12368,7 +12368,7 @@ msgstr "" "該程式。" #. (itstool) path: sect2/para -#: book.translate.xml:8300 +#: book.translate.xml:8307 msgid "" "Two signals can be used to stop a process: <literal>SIGTERM</literal> and " "<literal>SIGKILL</literal>. <literal>SIGTERM</literal> is the polite way to " @@ -12384,7 +12384,7 @@ msgstr "" "literal>,如它正在做一些不能中斷的工作的話。" #. (itstool) path: footnote/para -#: book.translate.xml:8312 +#: book.translate.xml:8319 msgid "" "There are a few tasks that cannot be interrupted. For example, if the " "process is trying to read from a file that is on another computer on the " @@ -12399,7 +12399,7 @@ msgstr "" "結束掉了。" #. (itstool) path: sect2/para -#: book.translate.xml:8309 +#: book.translate.xml:8316 msgid "" "<literal>SIGKILL</literal> cannot be ignored by a process. Sending a " "<literal>SIGKILL</literal> to a process will usually stop that process there " @@ -12409,7 +12409,7 @@ msgstr "" "literal> 信號給程序通常會將程序直接中止<_:footnote-1/>。" #. (itstool) path: sect2/para -#: book.translate.xml:8321 +#: book.translate.xml:8328 msgid "" "Other commonly used signals are <literal>SIGHUP</literal>, <literal>SIGUSR1</" "literal>, and <literal>SIGUSR2</literal>. Since these are general purpose " @@ -12420,7 +12420,7 @@ msgstr "" "應。" #. (itstool) path: sect2/para -#: book.translate.xml:8326 +#: book.translate.xml:8333 msgid "" "For example, after changing a web server's configuration file, the web " "server needs to be told to re-read its configuration. Restarting " @@ -12436,12 +12436,12 @@ msgstr "" "為,所以使用前請先參考 Deamon 的說明文件查看是否可以達到想要的結果。" #. (itstool) path: procedure/title -#: book.translate.xml:8337 +#: book.translate.xml:8344 msgid "Sending a Signal to a Process" msgstr "送信號給程序" #. (itstool) path: procedure/para -#: book.translate.xml:8339 +#: book.translate.xml:8346 msgid "" "This example shows how to send a signal to " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -12460,7 +12460,7 @@ msgstr "" "citerefentry> 會在收到 <literal>SIGHUP</literal> 的時候重新讀取這個設定檔。" #. (itstool) path: step/para -#: book.translate.xml:8346 +#: book.translate.xml:8353 msgid "" "Find the <acronym>PID</acronym> of the process to send the signal to using " "<citerefentry><refentrytitle>pgrep</refentrytitle><manvolnum>1</manvolnum></" @@ -12474,7 +12474,7 @@ msgstr "" "citerefentry> 的 <acronym>PID</acronym> 為 198:" #. (itstool) path: step/screen -#: book.translate.xml:8350 +#: book.translate.xml:8357 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>pgrep -l inetd</userinput>\n" @@ -12482,7 +12482,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:8356 +#: book.translate.xml:8363 msgid "" "Use <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to send the signal. Because " @@ -12501,7 +12501,7 @@ msgstr "" "systemitem> 先。" #. (itstool) path: step/screen -#: book.translate.xml:8363 +#: book.translate.xml:8370 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>su</userinput>\n" @@ -12510,7 +12510,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:8367 +#: book.translate.xml:8374 msgid "" "Like most <trademark class=\"registered\">UNIX</trademark> commands, " "<citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></" @@ -12533,12 +12533,12 @@ msgstr "" "<replaceable>PID</replaceable>: No such process</errorname>。" #. (itstool) path: note/title -#: book.translate.xml:8380 +#: book.translate.xml:8387 msgid "Why Use <command>/bin/kill</command>?" msgstr "為何要使用 <command>/bin/kill</command>? " #. (itstool) path: note/para -#: book.translate.xml:8382 +#: book.translate.xml:8389 msgid "" "Many shells provide <command>kill</command> as a built in command, meaning " "that the shell will send the signal directly, rather than running <filename>/" @@ -12552,7 +12552,7 @@ msgstr "" "的直接用 <command>/bin/kill</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:8394 +#: book.translate.xml:8401 msgid "" "When sending other signals, substitute <literal>TERM</literal> or " "<literal>KILL</literal> with the name of the signal." @@ -12561,7 +12561,7 @@ msgstr "" "或 <literal>KILL</literal> 替換成其他信號的名稱即可。" #. (itstool) path: important/para -#: book.translate.xml:8399 +#: book.translate.xml:8406 msgid "" "Killing a random process on the system is a bad idea. In particular, " "<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></" @@ -12580,22 +12580,22 @@ msgstr "" "要</emphasis>記得再次確認您下的參數。" #. (itstool) path: sect1/title -#: book.translate.xml:8411 +#: book.translate.xml:8418 msgid "Shells" msgstr "Shell" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8413 +#: book.translate.xml:8420 msgid "<primary>shells</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8416 +#: book.translate.xml:8423 msgid "<primary>command line</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8420 +#: book.translate.xml:8427 msgid "" "A <firstterm>shell</firstterm> provides a command line interface for " "interacting with the operating system. A shell receives commands from the " @@ -12618,7 +12618,7 @@ msgstr "" "<command>zsh</command> 以及 <command>bash</command> 等。" #. (itstool) path: sect1/para -#: book.translate.xml:8431 +#: book.translate.xml:8438 msgid "" "The shell that is used is really a matter of taste. A C programmer might " "feel more comfortable with a C-like shell such as " @@ -12636,7 +12636,7 @@ msgstr "" "合使用者的喜好,就是您選擇 shell 的重點了。" #. (itstool) path: sect1/para -#: book.translate.xml:8438 +#: book.translate.xml:8445 msgid "" "One common shell feature is filename completion. After a user types the " "first few letters of a command or filename and presses <keycap>Tab</keycap>, " @@ -12652,7 +12652,7 @@ msgstr "" "輸入 <command>rm foo</command> 然後按下 <keycap>Tab</keycap> 來補齊檔名。" #. (itstool) path: sect1/para -#: book.translate.xml:8447 +#: book.translate.xml:8454 msgid "" "But the shell only shows <command>rm foo</command>. It was unable to " "complete the filename because both <filename>foobar</filename> and " @@ -12670,12 +12670,12 @@ msgstr "" "次,那 Shell 就能夠替您把剩下的檔名填滿了。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8457 +#: book.translate.xml:8464 msgid "<primary>environment variables</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8461 +#: book.translate.xml:8468 msgid "" "Another feature of the shell is the use of environment variables. " "Environment variables are a variable/key pair stored in the shell's " @@ -12691,42 +12691,42 @@ msgstr "" "供了常見的環境變數與其涵義的清單。 請注意環境變數的名稱永遠以大寫表示。" #. (itstool) path: table/title -#: book.translate.xml:8471 +#: book.translate.xml:8478 msgid "Common Environment Variables" msgstr "常用環境變數" #. (itstool) path: row/entry -#: book.translate.xml:8476 book.translate.xml:23133 +#: book.translate.xml:8483 book.translate.xml:23140 msgid "Variable" msgstr "變數" #. (itstool) path: row/entry -#: book.translate.xml:8483 +#: book.translate.xml:8490 msgid "<envar>USER</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8484 +#: book.translate.xml:8491 msgid "Current logged in user's name." msgstr "目前登入的使用者名稱。" #. (itstool) path: row/entry -#: book.translate.xml:8488 +#: book.translate.xml:8495 msgid "<envar>PATH</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8489 +#: book.translate.xml:8496 msgid "Colon-separated list of directories to search for binaries." msgstr "以冒號 (:) 隔開的目錄列表,用以搜尋執行檔的路徑。" #. (itstool) path: row/entry -#: book.translate.xml:8494 +#: book.translate.xml:8501 msgid "<envar>DISPLAY</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8495 +#: book.translate.xml:8502 msgid "" "Network name of the <application>Xorg</application> display to connect to, " "if available." @@ -12734,34 +12734,34 @@ msgstr "" "若存在這個環境變數,則代表 <application>Xorg</application> 顯示器的網路名稱。" #. (itstool) path: row/entry -#: book.translate.xml:8501 +#: book.translate.xml:8508 msgid "<envar>SHELL</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8502 +#: book.translate.xml:8509 msgid "The current shell." msgstr "目前使用的 Shell。" #. (itstool) path: row/entry -#: book.translate.xml:8506 +#: book.translate.xml:8513 msgid "<envar>TERM</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8508 +#: book.translate.xml:8515 msgid "" "The name of the user's type of terminal. Used to determine the capabilities " "of the terminal." msgstr "使用者終端機類型的名稱,用來判斷終端機有那些功能。" #. (itstool) path: row/entry -#: book.translate.xml:8513 +#: book.translate.xml:8520 msgid "<envar>TERMCAP</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8515 +#: book.translate.xml:8522 msgid "" "Database entry of the terminal escape codes to perform various terminal " "functions." @@ -12769,62 +12769,62 @@ msgstr "" "用來執行各種終端機功能的終端機跳脫碼 (Terminal escape code) 的資料庫項目。" #. (itstool) path: row/entry -#: book.translate.xml:8520 +#: book.translate.xml:8527 msgid "<envar>OSTYPE</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8521 +#: book.translate.xml:8528 msgid "Type of operating system." msgstr "作業系統的類型。" #. (itstool) path: row/entry -#: book.translate.xml:8525 +#: book.translate.xml:8532 msgid "<envar>MACHTYPE</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8526 +#: book.translate.xml:8533 msgid "The system's CPU architecture." msgstr "系統的 CPU 架構。" #. (itstool) path: row/entry -#: book.translate.xml:8530 +#: book.translate.xml:8537 msgid "<envar>EDITOR</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8531 +#: book.translate.xml:8538 msgid "The user's preferred text editor." msgstr "使用者偏好的文字編輯器。" #. (itstool) path: row/entry -#: book.translate.xml:8535 +#: book.translate.xml:8542 msgid "<envar>PAGER</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8536 +#: book.translate.xml:8543 msgid "The user's preferred utility for viewing text one page at a time." msgstr "使用者偏好的文字分頁檢視工具。" #. (itstool) path: row/entry -#: book.translate.xml:8541 +#: book.translate.xml:8548 msgid "<envar>MANPATH</envar>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:8542 +#: book.translate.xml:8549 msgid "Colon-separated list of directories to search for manual pages." msgstr "以冒號 (:) 隔開的目錄列表,用以搜尋使用手冊的路徑。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8549 +#: book.translate.xml:8556 msgid "<primary>Bourne shells</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8553 +#: book.translate.xml:8560 msgid "" "How to set an environment variable differs between shells. In " "<citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></" @@ -12849,24 +12849,24 @@ msgstr "" "<filename>/usr/local/bin/emacs</filename>:" #. (itstool) path: sect1/screen -#: book.translate.xml:8562 +#: book.translate.xml:8569 #, no-wrap msgid "<prompt>%</prompt> <userinput>setenv EDITOR /usr/local/bin/emacs</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8564 +#: book.translate.xml:8571 msgid "The equivalent command for <command>bash</command> would be:" msgstr "相同功能的指令在 <command>bash</command> 下則是:" #. (itstool) path: sect1/screen -#: book.translate.xml:8567 +#: book.translate.xml:8574 #, no-wrap msgid "<prompt>%</prompt> <userinput>export EDITOR=\"/usr/local/bin/emacs\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8569 +#: book.translate.xml:8576 msgid "" "To expand an environment variable in order to see its current setting, type " "a <literal>$</literal> character in front of its name on the command line. " @@ -12878,7 +12878,7 @@ msgstr "" "$TERM</envar> 的設定值。" #. (itstool) path: sect1/para -#: book.translate.xml:8575 +#: book.translate.xml:8582 msgid "" "Shells treat special characters, known as meta-characters, as special " "representations of data. The most common meta-character is <literal>*</" @@ -12895,7 +12895,7 @@ msgstr "" "<literal>*</literal> 字元的檔案由 <command>echo</command> 顯示出來。" #. (itstool) path: sect1/para -#: book.translate.xml:8585 +#: book.translate.xml:8592 msgid "" "To prevent the shell from interpreting a special character, escape it from " "the shell by starting it with a backslash (<literal>\\</literal>). For " @@ -12909,12 +12909,12 @@ msgstr "" "$TERM</command> 則會直接印出 <literal>$TERM</literal> 這幾個字。" #. (itstool) path: sect2/title -#: book.translate.xml:8593 +#: book.translate.xml:8600 msgid "Changing the Shell" msgstr "變更 Shell" #. (itstool) path: sect2/para -#: book.translate.xml:8595 +#: book.translate.xml:8602 msgid "" "The easiest way to permanently change the default shell is to use " "<command>chsh</command>. Running this command will open the editor that is " @@ -12930,7 +12930,7 @@ msgstr "" "<literal>Shell:</literal> 為新的 Shell 的完整路徑。" #. (itstool) path: sect2/para -#: book.translate.xml:8602 +#: book.translate.xml:8609 msgid "" "Alternately, use <command>chsh -s</command> which will set the specified " "shell without opening an editor. For example, to change the shell to " @@ -12940,13 +12940,13 @@ msgstr "" "器。 例如, 假設想把 Shell 更改為 <command>bash</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:8606 +#: book.translate.xml:8613 #, no-wrap msgid "<prompt>%</prompt> <userinput>chsh -s /usr/local/bin/bash</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:8609 +#: book.translate.xml:8616 msgid "" "The new shell <emphasis>must</emphasis> be present in <filename>/etc/shells</" "filename>. If the shell was installed from the FreeBSD Ports Collection as " @@ -12960,13 +12960,13 @@ msgstr "" "Shell 的路徑):" #. (itstool) path: note/screen -#: book.translate.xml:8616 +#: book.translate.xml:8623 #, no-wrap msgid "<prompt>#</prompt> <userinput>echo <replaceable>/usr/local/bin/bash</replaceable> >> /etc/shells</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:8618 +#: book.translate.xml:8625 msgid "" "Then, rerun <citerefentry><refentrytitle>chsh</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>." @@ -12975,21 +12975,21 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:8624 +#: book.translate.xml:8631 msgid "Advanced Shell Techniques" msgstr "進階 Shell 技巧" #. (itstool) path: authorgroup/author -#: book.translate.xml:8627 book.translate.xml:31197 book.translate.xml:35591 -#: book.translate.xml:35671 book.translate.xml:37280 book.translate.xml:44132 -#: book.translate.xml:54584 book.translate.xml:57019 +#: book.translate.xml:8634 book.translate.xml:31204 book.translate.xml:35725 +#: book.translate.xml:35805 book.translate.xml:37414 book.translate.xml:44341 +#: book.translate.xml:54205 book.translate.xml:56640 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8637 +#: book.translate.xml:8644 msgid "" "The <trademark class=\"registered\">UNIX</trademark> shell is not just a " "command interpreter, it acts as a powerful tool which allows users to " @@ -13004,7 +13004,7 @@ msgstr "" "可提供一個可以最佳化效率的環境給使用者。" #. (itstool) path: sect2/para -#: book.translate.xml:8645 +#: book.translate.xml:8652 msgid "" "Shell redirection is the action of sending the output or the input of a " "command into another command or into a file. To capture the output of the " @@ -13016,13 +13016,13 @@ msgstr "" "citerefentry> 指令的輸出到一個檔案,可以重新導向輸出:" #. (itstool) path: sect2/screen -#: book.translate.xml:8650 +#: book.translate.xml:8657 #, no-wrap msgid "<prompt>%</prompt> <userinput>ls > directory_listing.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8652 +#: book.translate.xml:8659 msgid "" "The directory contents will now be listed in <filename>directory_listing." "txt</filename>. Some commands can be used to read input, such as " @@ -13035,13 +13035,13 @@ msgstr "" "導向輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:8657 +#: book.translate.xml:8664 #, no-wrap msgid "<prompt>%</prompt> <userinput>sort < directory_listing.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8659 +#: book.translate.xml:8666 msgid "" "The input will be sorted and placed on the screen. To redirect that input " "into another file, one could redirect the output of " @@ -13053,13 +13053,13 @@ msgstr "" "citerefentry> 的出輸:" #. (itstool) path: sect2/screen -#: book.translate.xml:8663 +#: book.translate.xml:8670 #, no-wrap msgid "<prompt>%</prompt> <userinput>sort < directory_listing.txt > sorted.txt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8665 +#: book.translate.xml:8672 msgid "" "In all of the previous examples, the commands are performing redirection " "using file descriptors. Every <trademark class=\"registered\">UNIX</" @@ -13079,7 +13079,7 @@ msgstr "" "皆被認為是以 I/O 為基礎的檔案描述符,有些也會被當做串流。" #. (itstool) path: sect2/para -#: book.translate.xml:8676 +#: book.translate.xml:8683 msgid "" "Through the use of these descriptors, the shell allows output and input to " "be passed around through various commands and redirected to or from a file. " @@ -13089,7 +13089,7 @@ msgstr "" "自檔案。另一種重新導向的方式是使用管線運算子 (Pipe operator)。" #. (itstool) path: sect2/para -#: book.translate.xml:8681 +#: book.translate.xml:8688 msgid "" "The <trademark class=\"registered\">UNIX</trademark> pipe operator, <quote>|" "</quote> allows the output of one command to be directly passed or directed " @@ -13101,13 +13101,13 @@ msgstr "" "指令的標準輸出以標準輸入傳遞給另一個指令,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:8687 +#: book.translate.xml:8694 #, no-wrap msgid "<prompt>%</prompt> <userinput>cat directory_listing.txt | sort | less</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8689 +#: book.translate.xml:8696 msgid "" "In that example, the contents of <filename>directory_listing.txt</filename> " "will be sorted and the output passed to <citerefentry><refentrytitle>less</" @@ -13121,22 +13121,22 @@ msgstr "" "果直接捲動出畫面。" #. (itstool) path: sect1/title -#: book.translate.xml:8698 +#: book.translate.xml:8705 msgid "Text Editors" msgstr "文字編輯器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8700 +#: book.translate.xml:8707 msgid "<primary>text editors</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8703 book.translate.xml:8739 +#: book.translate.xml:8710 book.translate.xml:8746 msgid "<primary>editors</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8707 +#: book.translate.xml:8714 msgid "" "Most FreeBSD configuration is done by editing text files. Because of this, " "it is a good idea to become familiar with a text editor. FreeBSD comes with " @@ -13148,19 +13148,19 @@ msgstr "" "其他的文字編輯器。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8712 +#: book.translate.xml:8719 msgid "<primary><command>ee</command></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8715 +#: book.translate.xml:8722 msgid "" "<primary>editors</primary> <secondary><citerefentry><refentrytitle>ee</" "refentrytitle><manvolnum>1</manvolnum></citerefentry></secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8720 +#: book.translate.xml:8727 msgid "" "A simple editor to learn is <citerefentry><refentrytitle>ee</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>, which stands for easy " @@ -13190,17 +13190,17 @@ msgstr "" "要存檔。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8736 +#: book.translate.xml:8743 msgid "<primary><command>vi</command></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8742 +#: book.translate.xml:8749 msgid "<primary><command>emacs</command></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8746 +#: book.translate.xml:8753 msgid "" "FreeBSD also comes with more powerful text editors, such as " "<citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></" @@ -13219,7 +13219,7 @@ msgstr "" "在日後為您省下更多的時間。" #. (itstool) path: sect1/para -#: book.translate.xml:8756 +#: book.translate.xml:8763 msgid "" "Many applications which modify files or require typed input will " "automatically open a text editor. To change the default editor, set the " @@ -13230,12 +13230,12 @@ msgstr "" "可設定 <envar>EDITOR</envar> 環境變數如 <xref linkend=\"shells\"/> 所說明。" #. (itstool) path: sect1/title -#: book.translate.xml:8763 +#: book.translate.xml:8770 msgid "Devices and Device Nodes" msgstr "裝置及裝置節點" #. (itstool) path: sect1/para -#: book.translate.xml:8765 +#: book.translate.xml:8772 msgid "" "A device is a term used mostly for hardware-related activities in a system, " "including disks, printers, graphics cards, and keyboards. When FreeBSD " @@ -13248,7 +13248,7 @@ msgstr "" "裝置,開機訊息的複本也會存放在 <filename>/var/run/dmesg.boot</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:8772 +#: book.translate.xml:8779 msgid "" "Each device has a device name and number. For example, <filename>ada0</" "filename> is the first SATA hard drive, while <filename>kbd0</filename> " @@ -13258,26 +13258,26 @@ msgstr "" "台 SATA 硬碟,而 <filename>kbd0</filename> 則代表鍵盤。" #. (itstool) path: sect1/para -#: book.translate.xml:8777 +#: book.translate.xml:8784 msgid "" -"Most devices in a FreeBSD must be accessed through special files called " -"device nodes, which are located in <filename>/dev</filename>." +"Most devices in FreeBSD must be accessed through special files called device " +"nodes, which are located in <filename>/dev</filename>." msgstr "" "在 FreeBSD 中大多數的裝置必須透過裝置節點 (Device Node) 的特殊檔案來存取,這" "些檔案會放置在 <filename>/dev</filename>。" #. (itstool) path: sect1/title -#: book.translate.xml:8783 +#: book.translate.xml:8790 msgid "Manual Pages" msgstr "操作手冊" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8785 +#: book.translate.xml:8792 msgid "<primary>manual pages</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8789 +#: book.translate.xml:8796 msgid "" "The most comprehensive documentation on FreeBSD is in the form of manual " "pages. Nearly every program on the system comes with a short reference " @@ -13289,13 +13289,13 @@ msgstr "" "<command>man</command> 指令來檢視:" #. (itstool) path: sect1/screen -#: book.translate.xml:8795 +#: book.translate.xml:8802 #, no-wrap msgid "<prompt>%</prompt> <userinput>man <replaceable>command</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8797 +#: book.translate.xml:8804 msgid "" "where <replaceable>command</replaceable> is the name of the command to learn " "about. For example, to learn more about <citerefentry><refentrytitle>ls</" @@ -13306,13 +13306,13 @@ msgstr "" "citerefentry> 的詳細用法,就可以打:" #. (itstool) path: sect1/screen -#: book.translate.xml:8801 +#: book.translate.xml:8808 #, no-wrap msgid "<prompt>%</prompt> <userinput>man ls</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8803 +#: book.translate.xml:8810 msgid "" "Manual pages are divided into sections which represent the type of topic. In " "FreeBSD, the following sections are available:" @@ -13321,52 +13321,52 @@ msgstr "" "章節:" #. (itstool) path: listitem/para -#: book.translate.xml:8809 +#: book.translate.xml:8816 msgid "User commands." msgstr "使用者指令。" #. (itstool) path: listitem/para -#: book.translate.xml:8813 +#: book.translate.xml:8820 msgid "System calls and error numbers." msgstr "系統呼叫 (System call) 與錯誤編號。" #. (itstool) path: listitem/para -#: book.translate.xml:8817 +#: book.translate.xml:8824 msgid "Functions in the C libraries." msgstr "C 程式庫函數。" #. (itstool) path: listitem/para -#: book.translate.xml:8821 +#: book.translate.xml:8828 msgid "Device drivers." msgstr "裝置驅動程式。" #. (itstool) path: listitem/para -#: book.translate.xml:8825 +#: book.translate.xml:8832 msgid "File formats." msgstr "檔案格式。" #. (itstool) path: listitem/para -#: book.translate.xml:8829 +#: book.translate.xml:8836 msgid "Games and other diversions." msgstr "遊戲及其他程式。" #. (itstool) path: listitem/para -#: book.translate.xml:8833 +#: book.translate.xml:8840 msgid "Miscellaneous information." msgstr "其他資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:8837 +#: book.translate.xml:8844 msgid "System maintenance and operation commands." msgstr "系統維護與操作指令。" #. (itstool) path: listitem/para -#: book.translate.xml:8841 +#: book.translate.xml:8848 msgid "System kernel interfaces." msgstr "系統核心介面。" #. (itstool) path: sect1/para -#: book.translate.xml:8845 +#: book.translate.xml:8852 msgid "" "In some cases, the same topic may appear in more than one section of the " "online manual. For example, there is a <command>chmod</command> user command " @@ -13380,13 +13380,13 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 要查詢的章節編號:" #. (itstool) path: sect1/screen -#: book.translate.xml:8851 +#: book.translate.xml:8858 #, no-wrap msgid "<prompt>%</prompt> <userinput>man 1 chmod</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8853 +#: book.translate.xml:8860 msgid "" "This will display the manual page for the user command " "<citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></" @@ -13405,7 +13405,7 @@ msgstr "" "citerefentry> 則是指系統呼叫。" #. (itstool) path: sect1/para -#: book.translate.xml:8859 +#: book.translate.xml:8866 msgid "" "If the name of the manual page is unknown, use <command>man -k</command> to " "search for keywords in the manual page descriptions:" @@ -13414,13 +13414,13 @@ msgstr "" "操作手冊的描述:" #. (itstool) path: sect1/screen -#: book.translate.xml:8863 +#: book.translate.xml:8870 #, no-wrap msgid "<prompt>%</prompt> <userinput>man -k <replaceable>mail</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:8865 +#: book.translate.xml:8872 msgid "" "This command displays a list of commands that have the keyword <quote>mail</" "quote> in their descriptions. This is equivalent to using " @@ -13432,14 +13432,14 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect1/para -#: book.translate.xml:8869 +#: book.translate.xml:8876 msgid "" "To read the descriptions for all of the commands in <filename>/usr/bin</" "filename>, type:" msgstr "想要閱讀所有在 <filename>/usr/bin</filename> 底下的指令說明則可輸入:" #. (itstool) path: sect1/screen -#: book.translate.xml:8872 +#: book.translate.xml:8879 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>cd /usr/bin</userinput>\n" @@ -13448,12 +13448,12 @@ msgstr "" #. (itstool) path: sect1/para #. (itstool) path: listitem/para -#: book.translate.xml:8875 book.translate.xml:49553 +#: book.translate.xml:8882 book.translate.xml:49174 msgid "or" msgstr "或" #. (itstool) path: sect1/screen -#: book.translate.xml:8877 +#: book.translate.xml:8884 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>cd /usr/bin</userinput>\n" @@ -13461,12 +13461,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:8881 +#: book.translate.xml:8888 msgid "GNU Info Files" msgstr "GNU Info 檔" #. (itstool) path: sect2/para -#: book.translate.xml:8887 +#: book.translate.xml:8894 msgid "" "FreeBSD includes several applications and utilities produced by the Free " "Software Foundation (FSF). In addition to manual pages, these programs may " @@ -13484,7 +13484,7 @@ msgstr "" "過 <application>emacs</application> 的 info 模式閱讀。" #. (itstool) path: sect2/para -#: book.translate.xml:8895 +#: book.translate.xml:8902 msgid "" "To use <citerefentry><refentrytitle>info</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, type:" @@ -13493,13 +13493,13 @@ msgstr "" "manvolnum></citerefentry> 指令,只需輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:8897 +#: book.translate.xml:8904 #, no-wrap msgid "<prompt>%</prompt> <userinput>info</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:8899 +#: book.translate.xml:8906 msgid "" "For a brief introduction, type <literal>h</literal>. For a quick command " "reference, type <literal>?</literal>." @@ -13508,22 +13508,22 @@ msgstr "" "<literal>?</literal> 鍵。" #. (itstool) path: chapter/title -#: book.translate.xml:8913 +#: book.translate.xml:8920 msgid "Installing Applications: Packages and Ports" msgstr "安裝應用程式:套件與 Port" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8918 +#: book.translate.xml:8925 msgid "<primary>ports</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:8919 +#: book.translate.xml:8926 msgid "<primary>packages</primary>" msgstr "<primary>套件</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:8920 +#: book.translate.xml:8927 msgid "" "FreeBSD is bundled with a rich collection of system tools as part of the " "base system. In addition, FreeBSD provides two complementary technologies " @@ -13537,45 +13537,45 @@ msgstr "" "Binary 套件集。兩種方法都可使用本地的媒體或網路來安裝軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:8932 +#: book.translate.xml:8939 msgid "The difference between binary packages and ports." msgstr "Binary 套件集與 Port 的差別。" #. (itstool) path: listitem/para -#: book.translate.xml:8936 +#: book.translate.xml:8943 msgid "How to find third-party software that has been ported to FreeBSD." msgstr "如何找到已移植到 FreeBSD 的第三方軟體。" #. (itstool) path: listitem/para -#: book.translate.xml:8941 +#: book.translate.xml:8948 msgid "How to manage binary packages using <application>pkg</application>." msgstr "如何使用 <application>pkg</application> 管理 Binary 套件。" #. (itstool) path: listitem/para -#: book.translate.xml:8946 +#: book.translate.xml:8953 msgid "" "How to build third-party software from source using the Ports Collection." msgstr "如何編譯來自 Port 套件集的第三方軟體原始碼。" #. (itstool) path: listitem/para -#: book.translate.xml:8951 +#: book.translate.xml:8958 msgid "" "How to find the files installed with the application for post-installation " "configuration." msgstr "如何找到應用程式已安裝的檔案來完成安裝後的設定。" #. (itstool) path: listitem/para -#: book.translate.xml:8956 +#: book.translate.xml:8963 msgid "What to do if a software installation fails." msgstr "若軟體安裝失敗要如何處理。" #. (itstool) path: sect1/title -#: book.translate.xml:8962 +#: book.translate.xml:8969 msgid "Overview of Software Installation" msgstr "安裝軟體的概要" #. (itstool) path: sect1/para -#: book.translate.xml:8964 +#: book.translate.xml:8971 msgid "" "The typical steps for installing third-party software on a <trademark class=" "\"registered\">UNIX</trademark> system include:" @@ -13584,14 +13584,14 @@ msgstr "" "體時,有幾個步驟要作:" #. (itstool) path: step/para -#: book.translate.xml:8969 +#: book.translate.xml:8976 msgid "" "Find and download the software, which might be distributed in source code " "format or as a binary." msgstr "找到並且下載軟體,該軟體有可能以原始碼或 Binary 格式發佈。" #. (itstool) path: step/para -#: book.translate.xml:8974 +#: book.translate.xml:8981 msgid "" "Unpack the software from its distribution format. This is typically a " "tarball compressed with a program such as " @@ -13611,7 +13611,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: step/para -#: book.translate.xml:8980 +#: book.translate.xml:8987 msgid "" "Locate the documentation in <filename>INSTALL</filename>, <filename>README</" "filename> or some file in a <filename>doc/</filename> subdirectory and read " @@ -13621,7 +13621,7 @@ msgstr "" "<filename>doc/</filename> 子目錄底下的檔案閱讀如何安裝該軟體。" #. (itstool) path: step/para -#: book.translate.xml:8987 +#: book.translate.xml:8994 msgid "" "If the software was distributed in source format, compile it. This may " "involve editing a <filename>Makefile</filename> or running a " @@ -13631,12 +13631,12 @@ msgstr "" "<filename>Makefile</filename> 或執行 <command>configure</command> Script。" #. (itstool) path: step/para -#: book.translate.xml:8994 +#: book.translate.xml:9001 msgid "Test and install the software." msgstr "測試並安裝該軟體。" #. (itstool) path: sect1/para -#: book.translate.xml:8998 +#: book.translate.xml:9005 msgid "" "A FreeBSD <emphasis>port</emphasis> is a collection of files designed to " "automate the process of compiling an application from source code. The files " @@ -13648,7 +13648,7 @@ msgstr "" "用程式的必要資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:9005 +#: book.translate.xml:9012 msgid "" "If the software has not already been adapted and tested on FreeBSD, the " "source code might need editing in order for it to install and run properly." @@ -13656,7 +13656,7 @@ msgstr "" "若軟體尚未被 FreeBSD 採用並測試,可能會需要經過一些修正才能正常安裝並執行。" #. (itstool) path: sect1/para -#: book.translate.xml:9009 +#: book.translate.xml:9016 msgid "" "However, over <link xlink:href=\"@@URL_RELPREFIX@@/ports/index.html" "\">24,000</link> third-party applications have already been ported to " @@ -13668,13 +13668,13 @@ msgstr "" "也會做成預先編譯好的 <emphasis>套件 (Package)</emphasis> 供下載。" #. (itstool) path: sect1/para -#: book.translate.xml:9015 +#: book.translate.xml:9022 msgid "" "Packages can be manipulated with the FreeBSD package management commands." msgstr "這些 Binary 套件可使用 FreeBSD 套件管理指令來管理。" #. (itstool) path: sect1/para -#: book.translate.xml:9019 +#: book.translate.xml:9026 msgid "" "Both packages and ports understand dependencies. If a package or port is " "used to install an application and a dependent library is not already " @@ -13684,7 +13684,7 @@ msgstr "" "式,且該應用程式若有相依的程式庫尚未被安裝,則會自動先安裝該程式庫。" #. (itstool) path: sect1/para -#: book.translate.xml:9024 +#: book.translate.xml:9031 msgid "" "A FreeBSD package contains pre-compiled copies of all the commands for an " "application, as well as any configuration files and documentation. A package " @@ -13698,7 +13698,7 @@ msgstr "" "<command>pkg install</command>。" #. (itstool) path: sect1/para -#: book.translate.xml:9030 +#: book.translate.xml:9037 msgid "" "While the two technologies are similar, packages and ports each have their " "own strengths. Select the technology that meets your requirements for " @@ -13708,19 +13708,19 @@ msgstr "" "程式需求來選擇。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:9036 +#: book.translate.xml:9043 msgid "Package Benefits" msgstr "Binary 套件優點" #. (itstool) path: listitem/para -#: book.translate.xml:9039 +#: book.translate.xml:9046 msgid "" "A compressed package tarball is typically smaller than the compressed " "tarball containing the source code for the application." msgstr "應用程式壓縮 Binary 套件的 tarball 會比壓縮原始碼的 tarball 還要小。" #. (itstool) path: listitem/para -#: book.translate.xml:9045 +#: book.translate.xml:9052 msgid "" "Packages do not require compilation time. For large applications, such as " "<application>Mozilla</application>, <application>KDE</application>, or " @@ -13731,19 +13731,19 @@ msgstr "" "<application>GNOME</application> 這點顯的相當重要。" #. (itstool) path: listitem/para -#: book.translate.xml:9053 +#: book.translate.xml:9060 msgid "" "Packages do not require any understanding of the process involved in " "compiling software on FreeBSD." msgstr "Binary 套件不需要了解在 FreeBSD 上編譯軟體的流程。" #. (itstool) path: itemizedlist/title -#: book.translate.xml:9059 +#: book.translate.xml:9066 msgid "Port Benefits" msgstr "Port 套件優點" #. (itstool) path: listitem/para -#: book.translate.xml:9062 +#: book.translate.xml:9069 msgid "" "Packages are normally compiled with conservative options because they have " "to run on the maximum number of systems. By compiling from the port, one can " @@ -13753,7 +13753,7 @@ msgstr "" "譯,由 Port 來編輯可更改編譯選項。" #. (itstool) path: listitem/para -#: book.translate.xml:9069 +#: book.translate.xml:9076 msgid "" "Some applications have compile-time options relating to which features are " "installed. For example, <application>Apache</application> can be configured " @@ -13763,7 +13763,7 @@ msgstr "" "application> 便有大量不同的內建選項可以設定。" #. (itstool) path: listitem/para -#: book.translate.xml:9074 +#: book.translate.xml:9081 msgid "" "In some cases, multiple packages will exist for the same application to " "specify certain settings. For example, <application>Ghostscript</" @@ -13780,7 +13780,7 @@ msgstr "" "這個方式來區別 Binary 套件。" #. (itstool) path: listitem/para -#: book.translate.xml:9086 +#: book.translate.xml:9093 msgid "" "The licensing conditions of some software forbid binary distribution. Such " "software must be distributed as source code which must be compiled by the " @@ -13790,19 +13790,19 @@ msgstr "" "使用者編譯。" #. (itstool) path: listitem/para -#: book.translate.xml:9092 +#: book.translate.xml:9099 msgid "" "Some people do not trust binary distributions or prefer to read through " "source code in order to look for potential problems." msgstr "部份人並不相信 Binary 發佈版本,寧願閱讀原始碼來查看是否潛藏的問題。" #. (itstool) path: listitem/para -#: book.translate.xml:9098 +#: book.translate.xml:9105 msgid "Source code is needed in order to apply custom patches." msgstr "原始碼可套用自訂的修補。" #. (itstool) path: sect1/para -#: book.translate.xml:9103 +#: book.translate.xml:9110 msgid "" "To keep track of updated ports, subscribe to the <link xlink:href=\"http://" "lists.FreeBSD.org/mailman/listinfo/freebsd-ports\">FreeBSD ports mailing " @@ -13815,7 +13815,7 @@ msgstr "" "\">FreeBSD Port 問題郵遞論壇</link>。" #. (itstool) path: warning/para -#: book.translate.xml:9107 +#: book.translate.xml:9114 msgid "" "Before installing any application, check <link xlink:href=\"http://vuxml." "freebsd.org/\"/> for security issues related to the application or type " @@ -13827,7 +13827,7 @@ msgstr "" "command> 來檢查所有已安裝的應用程式是否有已知的漏洞。" #. (itstool) path: sect1/para -#: book.translate.xml:9113 +#: book.translate.xml:9120 msgid "" "The remainder of this chapter explains how to use packages and ports to " "install and manage third-party software on FreeBSD." @@ -13836,12 +13836,12 @@ msgstr "" "三方軟體。" #. (itstool) path: sect1/title -#: book.translate.xml:9119 +#: book.translate.xml:9126 msgid "Finding Software" msgstr "搜尋軟體" #. (itstool) path: sect1/para -#: book.translate.xml:9121 +#: book.translate.xml:9128 msgid "" "FreeBSD's list of available applications is growing all the time. There are " "a number of ways to find software to install:" @@ -13849,7 +13849,7 @@ msgstr "" "FreeBSD 上可安裝的軟體清單不斷在增加, 有幾種方式可以來找你想安裝的軟體:" #. (itstool) path: listitem/para -#: book.translate.xml:9127 +#: book.translate.xml:9134 msgid "" "The FreeBSD web site maintains an up-to-date searchable list of all the " "available applications, at <link xlink:href=\"@@URL_RELPREFIX@@/ports/index." @@ -13861,12 +13861,12 @@ msgstr "" "link>。 可以依應用程式名稱或軟體分類來搜尋 Port。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9134 +#: book.translate.xml:9141 msgid "<primary>FreshPorts</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9136 +#: book.translate.xml:9143 msgid "" "Dan Langille maintains <link xlink:href=\"http://www.FreshPorts.org/" "\">FreshPorts.org</link> which provides a comprehensive search utility and " @@ -13880,12 +13880,12 @@ msgstr "" "新資訊。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9145 +#: book.translate.xml:9152 msgid "<primary>SourceForge</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9147 +#: book.translate.xml:9154 msgid "" "If finding a particular application becomes challenging, try searching a " "site like <link xlink:href=\"http://www.sourceforge.net/\">SourceForge.net</" @@ -13900,18 +13900,18 @@ msgstr "" "已被移植。" #. (itstool) path: listitem/indexterm -#: book.translate.xml:9155 +#: book.translate.xml:9162 msgid "<primary>pkg</primary> <secondary>search</secondary>" msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#pkg-search -#: book.translate.xml:9160 +#: book.translate.xml:9167 msgid "To search the binary package repository for an application:" msgstr "要搜尋 Binary 套件檔案庫中的應用程式可:" #. (itstool) path: listitem/screen -#: book.translate.xml:9163 +#: book.translate.xml:9170 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg search <replaceable>subversion</replaceable></userinput>\n" @@ -13929,28 +13929,28 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9176 +#: book.translate.xml:9183 msgid "" -"Package names include the version number and in case of ports based on " +"Package names include the version number and, in the case of ports based on " "python, the version number of the version of python the package was built " -"with. Some ports also have multiple versions available. In case of " -"<application>subversion</application> there are different versions " +"with. Some ports also have multiple versions available. In the case of " +"<application>Subversion</application>, there are different versions " "available, as well as different compile options. In this case, the " -"statically linked version of <application>subversion</application>. When " +"statically linked version of <application>Subversion</application>. When " "indicating which package to install, it is best to specify the application " "by the port origin, which is the path in the ports tree. Repeat the " "<command>pkg search</command> with <option>-o</option> to list the origin of " "each package:" msgstr "" "套件名稱包含版本編號,且若 Port 使用 Python 為基礎,也會包含用來編譯該套件的 " -"Python 版本。有些 Port 會有多個版本可使用,如 <application>subversion</" +"Python 版本。有些 Port 會有多個版本可使用,如 <application>Subversion</" "application> ,因編譯選項不同,有多個版本可用,這個例子中即指靜態連結版本的 " -"<application>subversion</application>。在指定要安裝的套件時,最好使用 Port 來" +"<application>Subversion</application>。在指定要安裝的套件時,最好使用 Port 來" "源來指定該應用程式,Port 來源是指應用程式在 Port 樹中的路徑。再輸入一次 " "<command>pkg search</command> 並加上 <option>-o</option> 來列出每個套件來源:" #. (itstool) path: listitem/screen -#: book.translate.xml:9190 +#: book.translate.xml:9197 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg search -o <replaceable>subversion</replaceable></userinput>\n" @@ -13968,7 +13968,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9203 +#: book.translate.xml:9210 msgid "" "Searching by shell globs, regular expressions, exact match, by description, " "or any other field in the repository database is also supported by " @@ -13984,7 +13984,7 @@ msgstr "" "manvolnum></citerefentry> 以取得更多詳細資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:9212 +#: book.translate.xml:9219 msgid "" "If the Ports Collection is already installed, there are several methods to " "query the local version of the ports tree. To find out which category a port " @@ -13996,7 +13996,7 @@ msgstr "" "其中 <replaceable>file</replaceable> 是要安裝的程式:" #. (itstool) path: listitem/screen -#: book.translate.xml:9219 +#: book.translate.xml:9226 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>whereis lsof</userinput>\n" @@ -14004,7 +14004,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9222 +#: book.translate.xml:9229 msgid "" "Alternately, an <citerefentry><refentrytitle>echo</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> statement can be used:" @@ -14013,7 +14013,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" #. (itstool) path: listitem/screen -#: book.translate.xml:9225 +#: book.translate.xml:9232 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>echo /usr/ports/*/*lsof*</userinput>\n" @@ -14021,7 +14021,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9228 +#: book.translate.xml:9235 msgid "" "Note that this will also return any matched files downloaded into the " "<filename>/usr/ports/distfiles</filename> directory." @@ -14030,7 +14030,7 @@ msgstr "" "何已符合條件的檔案。" #. (itstool) path: listitem/para -#: book.translate.xml:9234 +#: book.translate.xml:9241 msgid "" "Another way to find software is by using the Ports Collection's built-in " "search mechanism. To use the search feature, <application>cd</application> " @@ -14044,7 +14044,7 @@ msgstr "" "name</replaceable> 代表軟體的名稱。舉例搜尋 <command>lsof</command>:" #. (itstool) path: listitem/screen -#: book.translate.xml:9243 +#: book.translate.xml:9250 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports</userinput>\n" @@ -14059,7 +14059,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:9254 +#: book.translate.xml:9261 msgid "" "The built-in search mechanism uses a file of index information. If a message " "indicates that the <filename>INDEX</filename> is required, run <command>make " @@ -14073,18 +14073,18 @@ msgstr "" "行請求的搜尋動作。" #. (itstool) path: listitem/para -#: book.translate.xml:9263 +#: book.translate.xml:9270 msgid "The <quote>Path:</quote> line indicates where to find the port." msgstr "<quote>Path:</quote> 此行代表 Port 的所在位置。" #. (itstool) path: listitem/para -#: book.translate.xml:9266 +#: book.translate.xml:9273 msgid "" "To receive less information, use the <command>quicksearch</command> feature:" msgstr "若不要接受這麼多資訊,可使用 <command>quicksearch</command> 功能:" #. (itstool) path: listitem/screen -#: book.translate.xml:9269 +#: book.translate.xml:9276 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports</userinput>\n" @@ -14095,7 +14095,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9275 +#: book.translate.xml:9282 msgid "" "For more in-depth searching, use <command>make search " "key=<replaceable>string</replaceable></command> or <command>make quicksearch " @@ -14111,17 +14111,17 @@ msgstr "" "特定主題相關的 Port。" #. (itstool) path: para/buildtarget -#: book.translate.xml:9286 +#: book.translate.xml:9293 msgid "search" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:9287 +#: book.translate.xml:9294 msgid "quicksearch" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:9286 +#: book.translate.xml:9293 msgid "" "When using <_:buildtarget-1/> or <_:buildtarget-2/>, the search string is " "case-insensitive. Searching for <quote>LSOF</quote> will yield the same " @@ -14131,12 +14131,12 @@ msgstr "" "尋 <quote>LSOF</quote> 會與搜尋 <quote>lsof</quote> 產生相同的結果。" #. (itstool) path: sect1/title -#: book.translate.xml:9296 +#: book.translate.xml:9303 msgid "Using <application>pkg</application> for Binary Package Management" msgstr "使用 <application>pkg</application> 管理 Binary 套件" #. (itstool) path: sect1/para -#: book.translate.xml:9299 +#: book.translate.xml:9306 msgid "" "<application>pkg</application> is the next generation replacement for the " "traditional FreeBSD package management tools, offering many features that " @@ -14146,7 +14146,7 @@ msgstr "" "功能讓處理 Binary 套件更快更簡單。" #. (itstool) path: sect1/para -#: book.translate.xml:9304 +#: book.translate.xml:9311 msgid "" "For sites wishing to only use prebuilt binary packages from the FreeBSD " "mirrors, managing packages with <application>pkg</application> can be " @@ -14156,7 +14156,7 @@ msgstr "" "<application>pkg</application> 管理套件便已足夠。" #. (itstool) path: sect1/para -#: book.translate.xml:9308 +#: book.translate.xml:9315 msgid "" "However, for those sites building from source or using their own " "repositories, a separate <link linkend=\"ports-upgrading-tools\">port " @@ -14166,7 +14166,7 @@ msgstr "" "linkend=\"ports-upgrading-tools\">Port 管理工具</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:9313 +#: book.translate.xml:9320 msgid "" "Since <application>pkg</application> only works with binary packages, it is " "not a replacement for such tools. Those tools can be used to install " @@ -14178,12 +14178,12 @@ msgstr "" "<application>pkg</application> 僅能安裝 Binary 套件。" #. (itstool) path: sect2/title -#: book.translate.xml:9322 +#: book.translate.xml:9329 msgid "Getting Started with <application>pkg</application>" msgstr "開始使用 <application>pkg</application>" #. (itstool) path: sect2/para -#: book.translate.xml:9325 +#: book.translate.xml:9332 msgid "" "FreeBSD includes a bootstrap utility which can be used to download and " "install <application>pkg</application> and its manual pages. This utility is " @@ -14195,7 +14195,7 @@ msgstr "" "replaceable> 之後使用。" #. (itstool) path: note/para -#: book.translate.xml:9332 +#: book.translate.xml:9339 msgid "" "Not all FreeBSD versions and architectures support this bootstrap process. " "The current list is at <link xlink:href=\"http://pkg.freebsd.org/\"/>. For " @@ -14207,30 +14207,30 @@ msgstr "" "者 Binary 套件來安裝 <application>pkg</application>。" #. (itstool) path: sect2/para -#: book.translate.xml:9341 +#: book.translate.xml:9348 msgid "To bootstrap the system, run:" msgstr "要啟動 (Bootstrap) 系統請執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9343 +#: book.translate.xml:9350 #, no-wrap msgid "<prompt>#</prompt> <userinput>/usr/sbin/pkg</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9345 +#: book.translate.xml:9352 msgid "" "You must have a working Internet connection for the bootstrap process to " -"suceed." -msgstr "您必須有網際網路連線供啟動程式使用。" +"succeed." +msgstr "您必須有可用的網際網路連線供啟動程式使用方可成功。" #. (itstool) path: sect2/para -#: book.translate.xml:9348 +#: book.translate.xml:9355 msgid "Otherwise, to install the port, run:" msgstr "否則,要安裝 Port 套件,則須執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9350 +#: book.translate.xml:9357 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/pkg</userinput>\n" @@ -14239,7 +14239,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9354 +#: book.translate.xml:9361 msgid "" "When upgrading an existing system that originally used the older pkg_* " "tools, the database must be converted to the new format, so that the new " @@ -14252,20 +14252,20 @@ msgstr "" "須執行以下指令將套件資料庫從舊版格式轉換到新版格式:" #. (itstool) path: sect2/screen -#: book.translate.xml:9362 +#: book.translate.xml:9369 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg2ng</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9364 +#: book.translate.xml:9371 msgid "" "This step is not required for new installations that do not yet have any " "third-party software installed." msgstr "新安裝的版本因尚未安裝任何第三方軟體因此不須做這個步驟。" #. (itstool) path: important/para -#: book.translate.xml:9369 +#: book.translate.xml:9376 msgid "" "This step is not reversible. Once the package database has been converted to " "the <application>pkg</application> format, the traditional <literal>pkg_*</" @@ -14275,7 +14275,7 @@ msgstr "" "式,舊版 <literal>pkg_*</literal> 工具就不該再繼續使用。" #. (itstool) path: note/para -#: book.translate.xml:9376 +#: book.translate.xml:9383 msgid "" "The package database conversion may emit errors as the contents are " "converted to the new version. Generally, these errors can be safely ignored. " @@ -14288,7 +14288,7 @@ msgstr "" "單,這些應用程式則必須手動重新安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:9384 +#: book.translate.xml:9391 msgid "" "To ensure that the Ports Collection registers new software with " "<application>pkg</application> instead of the traditional packages database, " @@ -14300,13 +14300,13 @@ msgstr "" "replaceable> 之前需要在 <filename>/etc/make.conf</filename> 加入此行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:9390 +#: book.translate.xml:9397 #, no-wrap msgid "WITH_PKGNG=\tyes" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9392 +#: book.translate.xml:9399 msgid "" "By default, <application>pkg</application> uses the binary packages from the " "FreeBSD package mirrors (the <emphasis>repository</emphasis>). For " @@ -14318,7 +14318,7 @@ msgstr "" "案庫的資訊,請參考 <xref linkend=\"ports-poudriere\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:9399 +#: book.translate.xml:9406 msgid "" "Additional <application>pkg</application> configuration options are " "described in <citerefentry><refentrytitle>pkg.conf</" @@ -14329,7 +14329,7 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:9402 +#: book.translate.xml:9409 msgid "" "Usage information for <application>pkg</application> is available in the " "<citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></" @@ -14341,7 +14341,7 @@ msgstr "" "citerefentry> 操作手冊或不加任何參數執行 <command>pkg</command> 來取得。" #. (itstool) path: sect2/para -#: book.translate.xml:9406 +#: book.translate.xml:9413 msgid "" "Each <application>pkg</application> command argument is documented in a " "command-specific manual page. To read the manual page for <command>pkg " @@ -14351,19 +14351,19 @@ msgstr "" "<command>pkg install</command> 的操作手冊,可執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:9411 +#: book.translate.xml:9418 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg help install</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:9413 +#: book.translate.xml:9420 #, no-wrap msgid "<prompt>#</prompt> <userinput>man pkg-install</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9415 +#: book.translate.xml:9422 msgid "" "The rest of this section demonstrates common binary package management tasks " "which can be performed using <application>pkg</application>. Each " @@ -14375,12 +14375,12 @@ msgstr "" "操作手冊以取得詳細資訊或更多範例。" #. (itstool) path: sect2/title -#: book.translate.xml:9424 +#: book.translate.xml:9431 msgid "Obtaining Information About Installed Packages" msgstr "取得有關已安裝套件的資訊" #. (itstool) path: sect2/para -#: book.translate.xml:9426 +#: book.translate.xml:9433 msgid "" "Information about the packages installed on a system can be viewed by " "running <command>pkg info</command> which, when run without any switches, " @@ -14391,14 +14391,14 @@ msgstr "" "行時未指定任何參數,將會列出所有已安裝或指定的套件版本。" #. (itstool) path: sect2/para -#: book.translate.xml:9432 +#: book.translate.xml:9439 msgid "" "For example, to see which version of <application>pkg</application> is " "installed, run:" msgstr "例如,要查看已安裝的 <application>pkg</application> 版本可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9435 +#: book.translate.xml:9442 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg info pkg</userinput>\n" @@ -14406,12 +14406,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9440 +#: book.translate.xml:9447 msgid "Installing and Removing Packages" msgstr "安裝與移除套件" #. (itstool) path: sect2/para -#: book.translate.xml:9442 +#: book.translate.xml:9449 msgid "" "To install a binary package use the following command, where " "<replaceable>packagename</replaceable> is the name of the package to install:" @@ -14420,13 +14420,13 @@ msgstr "" "replaceable> 為要安裝的套件名稱:" #. (itstool) path: sect2/screen -#: book.translate.xml:9446 +#: book.translate.xml:9453 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install <replaceable>packagename</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9448 +#: book.translate.xml:9455 msgid "" "This command uses repository data to determine which version of the software " "to install and if it has any uninstalled dependencies. For example, to " @@ -14436,7 +14436,7 @@ msgstr "" "例如,要安裝 <application>curl</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:9453 +#: book.translate.xml:9460 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg install curl</userinput>\n" @@ -14463,14 +14463,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9475 +#: book.translate.xml:9482 msgid "" "The new package and any additional packages that were installed as " "dependencies can be seen in the installed packages list:" msgstr "新的套件以及任何做為相依安裝的額外套件可在已安裝的套件清單中看到:" #. (itstool) path: sect2/screen -#: book.translate.xml:9479 +#: book.translate.xml:9486 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg info</userinput>\n" @@ -14480,14 +14480,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9484 +#: book.translate.xml:9491 msgid "" "Packages that are no longer needed can be removed with <command>pkg delete</" "command>. For example:" msgstr "不再需要的套件可以使用 <command>pkg delete</command> 來移除,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:9487 +#: book.translate.xml:9494 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg delete curl</userinput>\n" @@ -14502,23 +14502,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9499 +#: book.translate.xml:9506 msgid "Upgrading Installed Packages" msgstr "升級已安裝套件" #. (itstool) path: sect2/para -#: book.translate.xml:9501 +#: book.translate.xml:9508 msgid "Installed packages can be upgraded to their latest versions by running:" msgstr "執行以下指令,可將已安裝的套件升級到最新版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:9504 +#: book.translate.xml:9511 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg upgrade</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9506 +#: book.translate.xml:9513 msgid "" "This command will compare the installed versions with those available in the " "repository catalogue and upgrade them from the repository." @@ -14526,12 +14526,12 @@ msgstr "" "這個指令將會比對已安裝的版本與在檔案庫分類中的版本,並從檔案庫升級這些套件。" #. (itstool) path: sect2/title -#: book.translate.xml:9512 +#: book.translate.xml:9519 msgid "Auditing Installed Packages" msgstr "稽查已安裝套件" #. (itstool) path: sect2/para -#: book.translate.xml:9514 +#: book.translate.xml:9521 msgid "" "Software vulnerabilities are regularly discovered in third-party " "applications. To address this, <application>pkg</application> includes a " @@ -14544,18 +14544,18 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: sect1/screen -#: book.translate.xml:9521 book.translate.xml:26870 +#: book.translate.xml:9528 book.translate.xml:26877 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg audit -F</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9525 +#: book.translate.xml:9532 msgid "Automatically Removing Leaf Dependencies" msgstr "自動移除不使用的相依" #. (itstool) path: sect2/para -#: book.translate.xml:9527 +#: book.translate.xml:9534 msgid "" "Removing a package may leave behind dependencies which are no longer " "required. Unneeded packages that were installed as dependencies can be " @@ -14565,7 +14565,7 @@ msgstr "" "指令自動偵測並移除:" #. (itstool) path: sect2/screen -#: book.translate.xml:9532 +#: book.translate.xml:9539 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pkg autoremove</userinput>\n" @@ -14579,12 +14579,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9543 +#: book.translate.xml:9550 msgid "Restoring the Package Database" msgstr "還原套件資料庫" #. (itstool) path: sect2/para -#: book.translate.xml:9545 +#: book.translate.xml:9552 msgid "" "Unlike the traditional package management system, <application>pkg</" "application> includes its own package database backup mechanism. This " @@ -14594,7 +14594,7 @@ msgstr "" "機制,此功能預設是開啟的。" #. (itstool) path: tip/para -#: book.translate.xml:9551 +#: book.translate.xml:9558 msgid "" "To disable the periodic script from backing up the package database, set " "<literal>daily_backup_pkgdb_enable=\"NO\"</literal> in " @@ -14606,7 +14606,7 @@ msgstr "" "<literal>daily_backup_pkgdb_enable=\"NO\"</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:9557 +#: book.translate.xml:9564 msgid "" "To restore the contents of a previous package database backup, run the " "following command replacing <replaceable>/path/to/pkg.sql</replaceable> with " @@ -14616,20 +14616,20 @@ msgstr "" "sql</replaceable> 替換為備份的位置:" #. (itstool) path: sect2/screen -#: book.translate.xml:9562 +#: book.translate.xml:9569 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg backup -r <replaceable>/path/to/pkg.sql</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9565 +#: book.translate.xml:9572 msgid "" "If restoring a backup taken by the periodic script, it must be decompressed " "prior to being restored." msgstr "若要還原有週期 Script 所產生的備份必須在還原前先解壓縮。" #. (itstool) path: sect2/para -#: book.translate.xml:9569 +#: book.translate.xml:9576 msgid "" "To run a manual backup of the <application>pkg</application> database, run " "the following command, replacing <replaceable>/path/to/pkg.sql</replaceable> " @@ -14639,18 +14639,18 @@ msgstr "" "<replaceable>/path/to/pkg.sql</replaceable> 為適當的檔案名稱與位置:" #. (itstool) path: sect2/screen -#: book.translate.xml:9574 +#: book.translate.xml:9581 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg backup -d <replaceable>/path/to/pkg.sql</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9578 +#: book.translate.xml:9585 msgid "Removing Stale Packages" msgstr "移除過時的套件" #. (itstool) path: sect2/para -#: book.translate.xml:9580 +#: book.translate.xml:9587 msgid "" "By default, <application>pkg</application> stores binary packages in a cache " "directory defined by <envar>PKG_CACHEDIR</envar> in " @@ -14666,29 +14666,29 @@ msgstr "" "要移除這些過時的 Binary 套件,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9587 +#: book.translate.xml:9594 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg clean</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9589 +#: book.translate.xml:9596 msgid "The entire cache may be cleared by running:" msgstr "使用以下指令可清空全部的快取:" #. (itstool) path: sect2/screen -#: book.translate.xml:9591 +#: book.translate.xml:9598 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg clean -a</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:9595 +#: book.translate.xml:9602 msgid "Modifying Package Metadata" msgstr "修改套件 Metadata" #. (itstool) path: sect2/para -#: book.translate.xml:9597 +#: book.translate.xml:9604 msgid "" "Software within the FreeBSD Ports Collection can undergo major version " "number changes. To address this, <application>pkg</application> has a built-" @@ -14703,18 +14703,18 @@ msgstr "" "<package>lang/php5</package> 從此之後代表版本 <literal>5.4</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:9606 +#: book.translate.xml:9613 msgid "To change the package origin for the above example, run:" msgstr "要更改上述例子中的套件來源,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9609 +#: book.translate.xml:9616 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o lang/php5:lang/php53</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9611 +#: book.translate.xml:9618 msgid "" "As another example, to update <package>lang/ruby18</package> to " "<package>lang/ruby19</package>, run:" @@ -14723,13 +14723,13 @@ msgstr "" "package>,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9615 +#: book.translate.xml:9622 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9617 +#: book.translate.xml:9624 msgid "" "As a final example, to change the origin of the <filename>libglut</filename> " "shared libraries from <package>graphics/libglut</package> to " @@ -14740,13 +14740,13 @@ msgstr "" "package> 可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:9622 +#: book.translate.xml:9629 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9625 +#: book.translate.xml:9632 msgid "" "When changing package origins, it is important to reinstall packages that " "are dependent on the package with the modified origin. To force a " @@ -14756,18 +14756,18 @@ msgstr "" "修改後的來源。要強制重新安裝相依套件,可執行:" #. (itstool) path: note/screen -#: book.translate.xml:9630 +#: book.translate.xml:9637 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:9636 +#: book.translate.xml:9643 msgid "Using the Ports Collection" msgstr "使用 Port 套件集" #. (itstool) path: sect1/para -#: book.translate.xml:9638 +#: book.translate.xml:9645 msgid "" "The Ports Collection is a set of <filename>Makefiles</filename>, patches, " "and description files. Each set of these files is used to compile and " @@ -14779,14 +14779,14 @@ msgstr "" "<emphasis>Port</emphasis>。" #. (itstool) path: sect1/para -#: book.translate.xml:9643 +#: book.translate.xml:9650 msgid "" "By default, the Ports Collection itself is stored as a subdirectory of " "<filename>/usr/ports</filename>." msgstr "預設,Port 套件集儲存在 <filename>/usr/ports</filename> 的子目錄下。" #. (itstool) path: sect1/para -#: book.translate.xml:9646 +#: book.translate.xml:9653 msgid "" "Before an application can be compiled using a port, the Ports Collection " "must first be installed. If it was not installed during the installation of " @@ -14796,12 +14796,12 @@ msgstr "" "沒有安裝,可以使用以下其中一種方式安裝:" #. (itstool) path: procedure/title -#: book.translate.xml:9653 +#: book.translate.xml:9660 msgid "Portsnap Method" msgstr "Portsnap 方法" #. (itstool) path: procedure/para -#: book.translate.xml:9655 +#: book.translate.xml:9662 msgid "" "The base system of FreeBSD includes <application>Portsnap</application>. " "This is a fast and user-friendly tool for retrieving the Ports Collection " @@ -14815,7 +14815,7 @@ msgstr "" "有已下載檔案的完整性。" #. (itstool) path: step/para -#: book.translate.xml:9664 +#: book.translate.xml:9671 msgid "" "To download a compressed snapshot of the Ports Collection into <filename>/" "var/db/portsnap</filename>:" @@ -14824,13 +14824,13 @@ msgstr "" "filename>:" #. (itstool) path: step/screen -#: book.translate.xml:9668 +#: book.translate.xml:9675 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap fetch</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9672 +#: book.translate.xml:9679 msgid "" "When running <application>Portsnap</application> for the first time, extract " "the snapshot into <filename>/usr/ports</filename>:" @@ -14839,13 +14839,13 @@ msgstr "" "<filename>/usr/ports</filename>:" #. (itstool) path: step/screen -#: book.translate.xml:9676 +#: book.translate.xml:9683 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap extract</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9680 +#: book.translate.xml:9687 msgid "" "After the first use of <application>Portsnap</application> has been " "completed as shown above, <filename>/usr/ports</filename> can be updated as " @@ -14855,7 +14855,7 @@ msgstr "" "需要執行以下指令來更新 <filename>/usr/ports</filename> :" #. (itstool) path: step/screen -#: book.translate.xml:9685 +#: book.translate.xml:9692 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>portsnap fetch</userinput>\n" @@ -14863,7 +14863,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9688 +#: book.translate.xml:9695 msgid "" "When using <literal>fetch</literal>, the <literal>extract</literal> or the " "<literal>update</literal> operation may be run consecutively, like so:" @@ -14872,18 +14872,18 @@ msgstr "" "<literal>update</literal> 如:" #. (itstool) path: step/screen -#: book.translate.xml:9692 +#: book.translate.xml:9699 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsnap fetch update</userinput>" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:9697 +#: book.translate.xml:9704 msgid "Subversion Method" msgstr "Subversion 方法" #. (itstool) path: procedure/para -#: book.translate.xml:9699 +#: book.translate.xml:9706 msgid "" "If more control over the ports tree is needed or if local changes need to be " "maintained, <application>Subversion</application> can be used to obtain the " @@ -14899,7 +14899,7 @@ msgstr "" "<application>Subversion</application> 的詳細說明。" #. (itstool) path: step/para -#: book.translate.xml:9707 +#: book.translate.xml:9714 msgid "" "<application>Subversion</application> must be installed before it can be " "used to check out the ports tree. If a copy of the ports tree is already " @@ -14911,7 +14911,7 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9712 book.translate.xml:65535 +#: book.translate.xml:9719 book.translate.xml:65535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/devel/subversion</userinput>\n" @@ -14919,7 +14919,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9715 +#: book.translate.xml:9722 msgid "" "If the ports tree is not available, or <application>pkg</application> is " "being used to manage packages, <application>Subversion</application> can be " @@ -14930,25 +14930,25 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9720 book.translate.xml:65535 +#: book.translate.xml:9727 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install subversion</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9725 +#: book.translate.xml:9732 msgid "Check out a copy of the ports tree:" msgstr "取出 Port 樹的複本:" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9727 book.translate.xml:65535 +#: book.translate.xml:9734 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>svn checkout https://svn.FreeBSD.org/ports/head /usr/ports</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:9731 +#: book.translate.xml:9738 msgid "" "As needed, update <filename>/usr/ports</filename> after the initial " "<application>Subversion</application> checkout:" @@ -14958,13 +14958,13 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:9735 book.translate.xml:65535 +#: book.translate.xml:9742 book.translate.xml:65535 #, no-wrap msgid "<prompt>#</prompt> <userinput>svn update /usr/ports</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:9739 +#: book.translate.xml:9746 msgid "" "The Ports Collection contains directories for software categories. Inside " "each category are subdirectories for individual applications. Each " @@ -14978,7 +14978,7 @@ msgstr "" "錄:" #. (itstool) path: listitem/para -#: book.translate.xml:9749 +#: book.translate.xml:9756 msgid "" "<filename>Makefile</filename>: contains statements that specify how the " "application should be compiled and where its components should be installed." @@ -14987,7 +14987,7 @@ msgstr "" "那的敘述句。" #. (itstool) path: listitem/para -#: book.translate.xml:9755 +#: book.translate.xml:9762 msgid "" "<filename>distinfo</filename>: contains the names and checksums of the files " "that must be downloaded to build the port." @@ -14996,7 +14996,7 @@ msgstr "" "(Checksum)。" #. (itstool) path: listitem/para -#: book.translate.xml:9761 +#: book.translate.xml:9768 msgid "" "<filename>files/</filename>: this directory contains any patches needed for " "the program to compile and install on FreeBSD. This directory may also " @@ -15006,14 +15006,14 @@ msgstr "" "檔。此目錄也可能含有其他用來編譯 Port 的檔案。" #. (itstool) path: listitem/para -#: book.translate.xml:9768 +#: book.translate.xml:9775 msgid "" "<filename>pkg-descr</filename>: provides a more detailed description of the " "program." msgstr "<filename>pkg-descr</filename>:提供程式更詳細的說明。" #. (itstool) path: listitem/para -#: book.translate.xml:9773 +#: book.translate.xml:9780 msgid "" "<filename>pkg-plist</filename>: a list of all the files that will be " "installed by the port. It also tells the ports system which files to remove " @@ -15023,7 +15023,7 @@ msgstr "" "統解除安裝時要移除那一些檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:9780 +#: book.translate.xml:9787 msgid "" "Some ports include <filename>pkg-message</filename> or other files to handle " "special situations. For more details on these files, and on ports in " @@ -15037,7 +15037,7 @@ msgstr "" "\">FreeBSD Porter's Handbook</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:9785 +#: book.translate.xml:9792 msgid "" "The port does not include the actual source code, also known as a " "<filename>distfile</filename>. The extract portion of building a port will " @@ -15048,17 +15048,17 @@ msgstr "" "壓縮時會自動下載的原始碼到 <filename>/usr/ports/distfiles</filename>。" #. (itstool) path: sect2/title -#: book.translate.xml:9791 +#: book.translate.xml:9798 msgid "Installing Ports" msgstr "安裝 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:9793 +#: book.translate.xml:9800 msgid "<primary>ports</primary> <secondary>installing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9798 +#: book.translate.xml:9805 msgid "" "This section provides basic instructions on using the Ports Collection to " "install or remove software. The detailed description of available " @@ -15072,7 +15072,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: warning/para -#: book.translate.xml:9804 +#: book.translate.xml:9811 msgid "" "Before compiling any port, be sure to update the Ports Collection as " "described in the previous section. Since the installation of any third-party " @@ -15096,7 +15096,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:9818 +#: book.translate.xml:9825 msgid "" "Using the Ports Collection assumes a working Internet connection. It also " "requires superuser privilege." @@ -15104,7 +15104,7 @@ msgstr "" "使用 Port 套件集會假設您擁有可正常連線的網路,同時也會需要超級使用者的權限。" #. (itstool) path: sect2/para -#: book.translate.xml:9821 +#: book.translate.xml:9828 msgid "" "To compile and install the port, change to the directory of the port to be " "installed, then type <command>make install</command> at the prompt. Messages " @@ -15114,7 +15114,7 @@ msgstr "" "install</command>,訊息中會顯示安裝的進度:" #. (itstool) path: sect2/screen -#: book.translate.xml:9826 +#: book.translate.xml:9833 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>\n" @@ -15152,7 +15152,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9859 +#: book.translate.xml:9866 msgid "" "Since <command>lsof</command> is a program that runs with increased " "privileges, a security warning is displayed as it is installed. Once the " @@ -15162,7 +15162,7 @@ msgstr "" "成時會顯示安全性警告。一旦安裝完成便會顯示指令提示。" #. (itstool) path: sect2/para -#: book.translate.xml:9864 +#: book.translate.xml:9871 msgid "" "Some shells keep a cache of the commands that are available in the " "directories listed in the <envar>PATH</envar> environment variable, to speed " @@ -15179,7 +15179,7 @@ msgstr "" "的說明文件以取得更多資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:9875 +#: book.translate.xml:9882 msgid "" "During installation, a working subdirectory is created which contains all " "the temporary files used during compilation. Removing this directory saves " @@ -15190,7 +15190,7 @@ msgstr "" "碟空間並漸少往後升級新版 Port 時造成問題:" #. (itstool) path: sect2/screen -#: book.translate.xml:9881 +#: book.translate.xml:9888 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>make clean</userinput>\n" @@ -15199,7 +15199,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:9886 +#: book.translate.xml:9893 msgid "" "To save this extra step, instead use <command>make install clean</command> " "when compiling the port." @@ -15208,12 +15208,12 @@ msgstr "" "command>。" #. (itstool) path: sect3/title -#: book.translate.xml:9891 +#: book.translate.xml:9898 msgid "Customizing Ports Installation" msgstr "自訂 Port 安裝" #. (itstool) path: sect3/para -#: book.translate.xml:9893 +#: book.translate.xml:9900 msgid "" "Some ports provide build options which can be used to enable or disable " "application components, provide security options, or allow for other " @@ -15221,32 +15221,32 @@ msgid "" "<package>security/gpgme</package>, and <package>mail/sylpheed-claws</" "package>. If the port depends upon other ports which have configurable " "options, it may pause several times for user interaction as the default " -"behavior is to prompt the user to select options from a menu. To avoid this, " -"run <command>make config-recursive</command> within the port skeleton to do " -"this configuration in one batch. Then, run <command>make install [clean]</" -"command> to compile and install the port." +"behavior is to prompt the user to select options from a menu. To avoid this " +"and do all of the configuration in one batch, run <command>make config-" +"recursive</command> within the port skeleton. Then, run <command>make " +"install [clean]</command> to compile and install the port." msgstr "" "部份 Port 提供編譯選項,可用來開啟或關閉應用程式中的元件、安全選項、或其他允" "許自訂的項目。這類的應用程式例子包括 <package>www/firefox</package>, " "<package>security/gpgme</package> 以及 <package>mail/sylpheed-claws</" "package>。若 Port 相依的其他 Port 有可設定的選項時,預設的模式會提示使用者選" "擇選單中的選項,這可能會讓安裝的過程暫停讓使用者操作數次。要避免這個情況,可" -"在 Port skeleton 中執行 <command>make config-recursive</command> 來一次設定所" -"有選項。然後再執行 <command>make install [clean]</command> 編譯與安裝該 " -"Port。" +"一次設定所有選項,只要在 Port skeleton 中執行 <command>make config-" +"recursive</command>,然後再執行 <command>make install [clean]</command> 編譯" +"與安裝該 Port。" #. (itstool) path: para/buildtarget -#: book.translate.xml:9910 +#: book.translate.xml:9917 msgid "config-recursive" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:9912 +#: book.translate.xml:9919 msgid "all-depends-list" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:9909 +#: book.translate.xml:9916 msgid "" "When using <_:buildtarget-1/>, the list of ports to configure are gathered " "by the <_:buildtarget-2/> target. It is recommended to run <command>make " @@ -15260,7 +15260,7 @@ msgstr "" "已經設定。" #. (itstool) path: sect3/para -#: book.translate.xml:9920 +#: book.translate.xml:9927 msgid "" "There are several ways to revisit a port's build options menu in order to " "add, remove, or change these options after a port has been built. One method " @@ -15281,7 +15281,7 @@ msgstr "" "citerefentry> 中都有詳細的說明。" #. (itstool) path: sect3/para -#: book.translate.xml:9932 +#: book.translate.xml:9939 msgid "" "The ports system uses <citerefentry><refentrytitle>fetch</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to download the source " @@ -15301,7 +15301,7 @@ msgstr "" "單。" #. (itstool) path: sect3/para -#: book.translate.xml:9940 +#: book.translate.xml:9947 msgid "" "For users who cannot be connected to the Internet all the time, " "<command>make fetch</command> can be run within <filename>/usr/ports</" @@ -15320,7 +15320,7 @@ msgstr "" "<command>make fetch-recursive</command> 來下載所有相依 Port 的 distfiles。" #. (itstool) path: sect3/para -#: book.translate.xml:9952 +#: book.translate.xml:9959 msgid "" "In rare cases, such as when an organization has a local distfiles " "repository, the <varname>MASTER_SITES</varname> variable can be used to " @@ -15332,7 +15332,7 @@ msgstr "" "指定的下載位址。當要指定替代的位址時可:" #. (itstool) path: sect3/screen -#: book.translate.xml:9958 +#: book.translate.xml:9965 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput>\n" @@ -15341,7 +15341,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9962 +#: book.translate.xml:9969 msgid "" "The <varname>WRKDIRPREFIX</varname> and <varname>PREFIX</varname> variables " "can override the default working and target directories. For example:" @@ -15350,13 +15350,13 @@ msgstr "" "覆蓋預設的工作及目標目錄。例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:9966 +#: book.translate.xml:9973 #, no-wrap msgid "<prompt>#</prompt> <userinput>make WRKDIRPREFIX=/usr/home/example/ports install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9968 +#: book.translate.xml:9975 msgid "" "will compile the port in <filename>/usr/home/example/ports</filename> and " "install everything under <filename>/usr/local</filename>." @@ -15365,13 +15365,13 @@ msgstr "" "到 <filename>/usr/local</filename> 下。" #. (itstool) path: sect3/screen -#: book.translate.xml:9972 +#: book.translate.xml:9979 #, no-wrap msgid "<prompt>#</prompt> <userinput>make PREFIX=/usr/home/example/local install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9974 +#: book.translate.xml:9981 msgid "" "will compile the port in <filename>/usr/ports</filename> and install it in " "<filename>/usr/home/example/local</filename>. And:" @@ -15380,18 +15380,18 @@ msgstr "" "example/local</filename>。然後:" #. (itstool) path: sect3/screen -#: book.translate.xml:9978 +#: book.translate.xml:9985 #, no-wrap msgid "<prompt>#</prompt> <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:9980 +#: book.translate.xml:9987 msgid "will combine the two." msgstr "來同時設定工作及目標目錄。" #. (itstool) path: sect3/para -#: book.translate.xml:9982 +#: book.translate.xml:9989 msgid "" "These can also be set as environmental variables. Refer to the manual page " "for your shell for instructions on how to set an environmental variable." @@ -15400,17 +15400,17 @@ msgstr "" "變數的說明。" #. (itstool) path: sect2/title -#: book.translate.xml:9989 +#: book.translate.xml:9996 msgid "Removing Installed Ports" msgstr "移除已安裝的 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:9991 +#: book.translate.xml:9998 msgid "<primary>ports</primary> <secondary>removing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:9996 +#: book.translate.xml:10003 msgid "" "Installed ports can be uninstalled using <command>pkg delete</command>. " "Examples for using this command can be found in the " @@ -15422,14 +15422,14 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 操作手冊找到。" #. (itstool) path: sect2/para -#: book.translate.xml:10000 +#: book.translate.xml:10007 msgid "" "Alternately, <command>make deinstall</command> can be run in the port's " "directory:" msgstr "或者,可在 Port 的目錄下執行 <command>make deinstall</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:10003 +#: book.translate.xml:10010 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>\n" @@ -15445,7 +15445,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10014 +#: book.translate.xml:10021 msgid "" "It is recommended to read the messages as the port is uninstalled. If the " "port has any applications that depend upon it, this information will be " @@ -15457,17 +15457,17 @@ msgstr "" "壞相依性。" #. (itstool) path: sect2/title -#: book.translate.xml:10023 +#: book.translate.xml:10030 msgid "Upgrading Ports" msgstr "升級 Port" #. (itstool) path: sect2/indexterm -#: book.translate.xml:10025 +#: book.translate.xml:10032 msgid "<primary>ports</primary> <secondary>upgrading</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10030 +#: book.translate.xml:10037 msgid "" "Over time, newer versions of software become available in the Ports " "Collection. This section describes how to determine which software can be " @@ -15477,7 +15477,7 @@ msgstr "" "級的軟體及如何升級。" #. (itstool) path: sect2/para -#: book.translate.xml:10035 +#: book.translate.xml:10042 msgid "" "To determine if newer versions of installed ports are available, ensure that " "the latest version of the ports tree is installed, using the updating " @@ -15494,13 +15494,13 @@ msgstr "" "安裝的 Port 中有那些已過時:" #. (itstool) path: sect2/screen -#: book.translate.xml:10044 +#: book.translate.xml:10051 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg version -l \"<\"</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10046 +#: book.translate.xml:10053 msgid "" "For FreeBSD 9.<replaceable>X</replaceable> and lower, the following command " "will list the installed ports that are out of date:" @@ -15509,13 +15509,13 @@ msgstr "" "已經安裝的 Port 中有那些已過時:" #. (itstool) path: sect2/screen -#: book.translate.xml:10050 +#: book.translate.xml:10057 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg_version -l \"<\"</userinput>" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:10053 +#: book.translate.xml:10060 msgid "" "Before attempting an upgrade, read <filename>/usr/ports/UPDATING</filename> " "from the top of the file to the date closest to the last time ports were " @@ -15533,24 +15533,24 @@ msgstr "" "升級。" #. (itstool) path: sect3/title -#: book.translate.xml:10068 +#: book.translate.xml:10075 msgid "Tools To Upgrade And Manage Ports" msgstr "升級與管理 Port 的工具" #. (itstool) path: sect3/indexterm -#: book.translate.xml:10070 +#: book.translate.xml:10077 msgid "<primary>ports</primary> <secondary>upgrading-tools</secondary>" msgstr "<primary>ports</primary> <secondary>upgrading-tools</secondary>" #. (itstool) path: sect3/para -#: book.translate.xml:10075 +#: book.translate.xml:10082 msgid "" "The Ports Collection contains several utilities to perform the actual " "upgrade. Each has its strengths and weaknesses." msgstr "Port 套件集含有數個工具可以進行升級,每一種工具都有其優點及缺點。" #. (itstool) path: sect3/para -#: book.translate.xml:10078 +#: book.translate.xml:10085 msgid "" "Historically, most installations used either <application>Portmaster</" "application> or <application>Portupgrade</application>. <application>Synth</" @@ -15561,7 +15561,7 @@ msgstr "" "application> 可使用。" #. (itstool) path: note/para -#: book.translate.xml:10085 +#: book.translate.xml:10092 msgid "" "The choice of which tool is best for a particular system is up to the system " "administrator. It is recommended practice to back up your data before using " @@ -15571,17 +15571,17 @@ msgstr "" "先備份資料。" #. (itstool) path: sect3/title -#: book.translate.xml:10093 +#: book.translate.xml:10100 msgid "Upgrading Ports Using <application>Portmaster</application>" msgstr "使用 <application>Portmaster</application> 升級 Port" #. (itstool) path: sect3/indexterm -#: book.translate.xml:10096 +#: book.translate.xml:10103 msgid "<primary>portmaster</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10100 +#: book.translate.xml:10107 msgid "" "<package>ports-mgmt/portmaster</package> is a very small utility for " "upgrading installed ports. It is designed to use the tools installed with " @@ -15593,7 +15593,7 @@ msgstr "" "FreeBSD 使用,要使用 Port 安裝此工具可:" #. (itstool) path: sect3/screen -#: book.translate.xml:10108 +#: book.translate.xml:10115 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portmaster</userinput>\n" @@ -15601,38 +15601,38 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10111 +#: book.translate.xml:10118 msgid "<application>Portmaster</application> defines four categories of ports:" msgstr "<application>Portmaster</application> 將 Port 定義成四種類型:" #. (itstool) path: listitem/para -#: book.translate.xml:10116 +#: book.translate.xml:10123 msgid "" "Root port: has no dependencies and is not a dependency of any other ports." msgstr "根 Port:沒有相依且也不被任何其他 Port 相依。" #. (itstool) path: listitem/para -#: book.translate.xml:10121 +#: book.translate.xml:10128 msgid "Trunk port: has no dependencies, but other ports depend upon it." msgstr "主幹 Port:沒有相依,但被其他 Port 相依。" #. (itstool) path: listitem/para -#: book.translate.xml:10126 +#: book.translate.xml:10133 msgid "Branch port: has dependencies and other ports depend upon it." msgstr "分支 Port:有相依,且其被其他 Port 相依。" #. (itstool) path: listitem/para -#: book.translate.xml:10131 +#: book.translate.xml:10138 msgid "Leaf port: has dependencies but no other ports depend upon it." msgstr "枝 Port:有相依,但沒有被其他 Port 相依。" #. (itstool) path: sect3/para -#: book.translate.xml:10136 +#: book.translate.xml:10143 msgid "To list these categories and search for updates:" msgstr "要列出這幾個分類並搜尋是否有新版:" #. (itstool) path: sect3/screen -#: book.translate.xml:10138 +#: book.translate.xml:10145 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>portmaster -L</userinput>\n" @@ -15659,18 +15659,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10160 +#: book.translate.xml:10167 msgid "This command is used to upgrade all outdated ports:" msgstr "此指令用來升級所有過時的 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10163 +#: book.translate.xml:10170 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -a</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:10166 +#: book.translate.xml:10173 msgid "" "By default, <application>Portmaster</application> makes a backup package " "before deleting the existing port. If the installation of the new version is " @@ -15693,7 +15693,7 @@ msgstr "" "用法。" #. (itstool) path: sect3/para -#: book.translate.xml:10180 +#: book.translate.xml:10187 msgid "" "If errors are encountered during the upgrade process, add <option>-f</" "option> to upgrade and rebuild all ports:" @@ -15701,13 +15701,13 @@ msgstr "" "若升級的過程發生錯誤,可加入 <option>-f</option> 來升級並重新編譯所有 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10184 book.translate.xml:44573 +#: book.translate.xml:10191 book.translate.xml:44782 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -af</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10186 +#: book.translate.xml:10193 msgid "" "<application>Portmaster</application> can also be used to install new ports " "on the system, upgrading all dependencies before building and installing the " @@ -15719,13 +15719,13 @@ msgstr "" "中的位置:" #. (itstool) path: sect3/screen -#: book.translate.xml:10192 +#: book.translate.xml:10199 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster <replaceable>shells/bash</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10194 +#: book.translate.xml:10201 msgid "" "More information about <package>ports-mgmt/portmaster</package> may be found " "in its <filename>pkg-descr</filename>." @@ -15734,17 +15734,17 @@ msgstr "" "descr</filename> 取得。" #. (itstool) path: sect3/title -#: book.translate.xml:10199 +#: book.translate.xml:10206 msgid "Upgrading Ports Using Portupgrade" msgstr "使用 Portupgrade 升級 Port" #. (itstool) path: sect3/indexterm -#: book.translate.xml:10201 +#: book.translate.xml:10208 msgid "<primary>portupgrade</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10205 +#: book.translate.xml:10212 msgid "" "<package>ports-mgmt/portupgrade</package> is another utility that can be " "used to upgrade ports. It installs a suite of applications which can be used " @@ -15755,7 +15755,7 @@ msgstr "" "Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10211 +#: book.translate.xml:10218 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput>\n" @@ -15763,7 +15763,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10214 +#: book.translate.xml:10221 msgid "" "Before performing an upgrade using this utility, it is recommended to scan " "the list of installed ports using <command>pkgdb -F</command> and to fix all " @@ -15773,7 +15773,7 @@ msgstr "" "Port 並修正該指令回報的所有資訊不一致的套件。" #. (itstool) path: sect3/para -#: book.translate.xml:10219 +#: book.translate.xml:10226 msgid "" "To upgrade all the outdated ports installed on the system, use " "<command>portupgrade -a</command>. Alternately, include <option>-i</option> " @@ -15783,13 +15783,13 @@ msgstr "" "或者加上 <option>-i</option> 會在每個套件升級時詢問確認:" #. (itstool) path: sect3/screen -#: book.translate.xml:10224 +#: book.translate.xml:10231 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -ai</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10226 +#: book.translate.xml:10233 msgid "" "To upgrade only a specified application instead of all available ports, use " "<command>portupgrade <replaceable>pkgname</replaceable></command>. It is " @@ -15801,13 +15801,13 @@ msgstr "" "R</option> 來先升級指定應用程式所有相依的 Port:" #. (itstool) path: sect3/screen -#: book.translate.xml:10232 +#: book.translate.xml:10239 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -R firefox</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10234 +#: book.translate.xml:10241 msgid "" "If <option>-P</option> is included, <application>Portupgrade</application> " "searches for available packages in the local directories listed in " @@ -15826,13 +15826,13 @@ msgstr "" "可用時放棄安裝:" #. (itstool) path: sect3/screen -#: book.translate.xml:10247 +#: book.translate.xml:10254 #, no-wrap msgid "<prompt>#</prompt> <userinput>portupgrade -PP gnome3</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:10249 +#: book.translate.xml:10256 msgid "" "To just fetch the port distfiles, or packages, if <option>-P</option> is " "specified, without building or installing anything, use <option>-F</option>. " @@ -15844,7 +15844,7 @@ msgstr "" "command> 的操作手冊來取得所有可用選項的更多資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:10255 +#: book.translate.xml:10262 msgid "" "More information about <package>ports-mgmt/portupgrade</package> may be " "found in its <filename>pkg-descr</filename>." @@ -15853,17 +15853,17 @@ msgstr "" "<filename>pkg-descr</filename> 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:10262 +#: book.translate.xml:10269 msgid "Ports and Disk Space" msgstr "Port 與磁碟空間" #. (itstool) path: sect2/indexterm -#: book.translate.xml:10264 +#: book.translate.xml:10271 msgid "<primary>ports</primary> <secondary>disk-space</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10269 +#: book.translate.xml:10276 msgid "" "Using the Ports Collection will use up disk space over time. After building " "and installing a port, running <command>make clean</command> within the " @@ -15882,13 +15882,13 @@ msgstr "" "地複本中找到的 <filename>work</filename> 目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:10280 +#: book.translate.xml:10287 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -C</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10282 +#: book.translate.xml:10289 msgid "" "In addition, outdated source distribution files accumulate in <filename>/usr/" "ports/distfiles</filename> over time. To use <application>Portupgrade</" @@ -15900,13 +15900,13 @@ msgstr "" "Port 所引用的 distfiles:" #. (itstool) path: sect2/screen -#: book.translate.xml:10288 +#: book.translate.xml:10295 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -D</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10290 +#: book.translate.xml:10297 msgid "" "<application>Portupgrade</application> can remove all distfiles not " "referenced by any port currently installed on the system:" @@ -15915,31 +15915,31 @@ msgstr "" "Port 所引用的 distfiles:" #. (itstool) path: sect2/screen -#: book.translate.xml:10294 +#: book.translate.xml:10301 #, no-wrap msgid "<prompt>#</prompt> <userinput>portsclean -DD</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10296 +#: book.translate.xml:10303 msgid "If <application>Portmaster</application> is installed, use:" msgstr "若有安裝 <application>Portmaster</application>,則可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:10299 +#: book.translate.xml:10306 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster --clean-distfiles</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10301 +#: book.translate.xml:10308 msgid "" "By default, this command is interactive and prompts the user to confirm if a " "distfile should be deleted." msgstr "預設,若 distfile 應要被刪除,這個指令會以互動的方式向使用者確認。" #. (itstool) path: sect2/para -#: book.translate.xml:10304 +#: book.translate.xml:10311 msgid "" "In addition to these commands, <package>ports-mgmt/pkg_cutleaves</package> " "automates the task of removing installed ports that are no longer needed." @@ -15948,12 +15948,12 @@ msgstr "" "要使用的 Port。" #. (itstool) path: sect1/title -#: book.translate.xml:10312 +#: book.translate.xml:10319 msgid "Building Packages with <application>Poudriere</application>" msgstr "使用 <application>Poudriere</application> 編譯套件" #. (itstool) path: sect1/para -#: book.translate.xml:10315 +#: book.translate.xml:10322 msgid "" "<application>Poudriere</application> is a <acronym>BSD</acronym>-licensed " "utility for creating and testing FreeBSD packages. It uses FreeBSD jails to " @@ -15974,7 +15974,7 @@ msgstr "" "用。" #. (itstool) path: sect1/para -#: book.translate.xml:10326 +#: book.translate.xml:10333 msgid "" "<application>Poudriere</application> is installed using the <package role=" "\"port\">ports-mgmt/poudriere</package> package or port. The installation " @@ -15989,7 +15989,7 @@ msgstr "" "的設定。" #. (itstool) path: sect1/para -#: book.translate.xml:10334 +#: book.translate.xml:10341 msgid "" "While <acronym>ZFS</acronym> is not required on the system running " "<application>poudriere</application>, it is beneficial. When <acronym>ZFS</" @@ -16013,7 +16013,7 @@ msgstr "" "採用預設值便足夠。" #. (itstool) path: sect1/para -#: book.translate.xml:10348 +#: book.translate.xml:10355 msgid "" "The number of processor cores detected is used to define how many builds " "will run in parallel. Supply enough virtual memory, either with " @@ -16026,12 +16026,12 @@ msgstr "" "會停止並被清除,會造成奇怪的錯誤訊息。" #. (itstool) path: sect2/title -#: book.translate.xml:10355 +#: book.translate.xml:10362 msgid "Initialize Jails and Port Trees" msgstr "初始化 Jail 與 Port 樹" #. (itstool) path: sect2/para -#: book.translate.xml:10357 +#: book.translate.xml:10364 msgid "" "After configuration, initialize <application>poudriere</application> so that " "it installs a jail with the required FreeBSD tree and a ports tree. Specify " @@ -16049,7 +16049,7 @@ msgstr "" "構。" #. (itstool) path: sect2/screen -#: book.translate.xml:10367 +#: book.translate.xml:10374 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>poudriere jail -c -j <replaceable>10amd64</replaceable> -v <replaceable>10.0-RELEASE</replaceable></userinput>\n" @@ -16071,7 +16071,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:10384 +#: book.translate.xml:10391 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>poudriere ports -c -p <replaceable>local</replaceable></userinput>\n" @@ -16106,7 +16106,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10414 +#: book.translate.xml:10421 msgid "" "On a single computer, <application>poudriere</application> can build ports " "with multiple configurations, in multiple jails, and from different port " @@ -16124,7 +16124,7 @@ msgstr "" "citerefentry> 中的 CUSTOMIZATION 章節來取得詳細的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:10423 +#: book.translate.xml:10430 msgid "" "The basic configuration shown here puts a single jail-, port-, and set-" "specific <filename>make.conf</filename> in <filename>/usr/local/etc/" @@ -16142,7 +16142,7 @@ msgstr "" "併為編譯 Jail 要使用的 <filename>make.conf</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:10433 +#: book.translate.xml:10440 msgid "" "Packages to be built are entered in <filename><replaceable>10amd64-local-" "workstation</replaceable>-pkglist</filename>:" @@ -16151,7 +16151,7 @@ msgstr "" "replaceable>-pkglist</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10436 +#: book.translate.xml:10443 #, no-wrap msgid "" "editors/emacs\n" @@ -16161,29 +16161,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10441 +#: book.translate.xml:10448 msgid "Options and dependencies for the specified ports are configured:" msgstr "可使用以下方式設定選項及相依:" #. (itstool) path: sect2/screen -#: book.translate.xml:10444 +#: book.translate.xml:10451 #, no-wrap msgid "<prompt>#</prompt> <userinput>poudriere options -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10446 +#: book.translate.xml:10453 msgid "Finally, packages are built and a package repository is created:" msgstr "最後,編譯套件並建立套件檔案庫:" #. (itstool) path: sect2/screen -#: book.translate.xml:10449 +#: book.translate.xml:10456 #, no-wrap msgid "<prompt>#</prompt> <userinput>poudriere bulk -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10451 +#: book.translate.xml:10458 msgid "" "While running, pressing <keycombo action=\"simul\"><keycap>Ctrl</" "keycap><keycap>t</keycap></keycombo> displays the current state of the " @@ -16198,7 +16198,7 @@ msgstr "" "示編譯資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:10458 +#: book.translate.xml:10465 msgid "" "After completion, the new packages are now available for installation from " "the <application>poudriere</application> repository." @@ -16207,7 +16207,7 @@ msgstr "" "裝。" #. (itstool) path: sect2/para -#: book.translate.xml:10462 +#: book.translate.xml:10469 msgid "" "For more information on using <application>poudriere</application>, see " "<citerefentry vendor=\"ports\"><refentrytitle>poudriere</" @@ -16220,12 +16220,12 @@ msgstr "" "href=\"https://github.com/freebsd/poudriere/wiki\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:10467 +#: book.translate.xml:10474 msgid "Configuring pkg Clients to Use a Poudriere Repository" msgstr "設定 pkg 客戶端使用 Poudriere 檔案庫" #. (itstool) path: sect2/para -#: book.translate.xml:10470 +#: book.translate.xml:10477 msgid "" "While it is possible to use both a custom repository along side of the " "official repository, sometimes it is useful to disable the official " @@ -16238,7 +16238,7 @@ msgstr "" "etc/pkg/repos/FreeBSD.conf</filename> 包含以下內容:" #. (itstool) path: sect2/screen -#: book.translate.xml:10478 +#: book.translate.xml:10485 #, no-wrap msgid "" "FreeBSD: {\n" @@ -16247,7 +16247,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:10482 +#: book.translate.xml:10489 msgid "" "Usually it is easiest to serve a poudriere repository to the client machines " "via HTTP. Set up a webserver to serve up the package directory, for " @@ -16261,7 +16261,7 @@ msgstr "" "filename> 是編譯的名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:10489 +#: book.translate.xml:10496 msgid "" "If the URL to the package repository is: <literal>http://pkg.example." "com/10amd64</literal>, then the repository configuration file in <filename>/" @@ -16272,7 +16272,7 @@ msgstr "" "案庫設定檔為:" #. (itstool) path: sect2/screen -#: book.translate.xml:10495 +#: book.translate.xml:10502 #, no-wrap msgid "" "custom: {\n" @@ -16282,12 +16282,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:10503 +#: book.translate.xml:10510 msgid "Post-Installation Considerations" msgstr "安裝後的注意事項" #. (itstool) path: sect1/para -#: book.translate.xml:10505 +#: book.translate.xml:10512 msgid "" "Regardless of whether the software was installed from a binary package or " "port, most third-party applications require some level of configuration " @@ -16298,7 +16298,7 @@ msgstr "" "設定,下列指令與位置可以用來協助找到應用程式安裝了什麼。" #. (itstool) path: listitem/para -#: book.translate.xml:10513 +#: book.translate.xml:10520 msgid "" "Most applications install at least one default configuration file in " "<filename>/usr/local/etc</filename>. In cases where an application has a " @@ -16315,7 +16315,7 @@ msgstr "" "除 <filename>.sample</filename> 副檔名。" #. (itstool) path: listitem/para -#: book.translate.xml:10526 +#: book.translate.xml:10533 msgid "" "Applications which provide documentation will install it into <filename>/usr/" "local/share/doc</filename> and many applications also install manual pages. " @@ -16325,7 +16325,7 @@ msgstr "" "應用程式也同時會安裝操作手冊,在繼續使用應用程式前應先查看這些文件。" #. (itstool) path: listitem/para -#: book.translate.xml:10533 +#: book.translate.xml:10540 msgid "" "Some applications run services which must be added to <filename>/etc/rc." "conf</filename> before starting the application. These applications usually " @@ -16339,7 +16339,7 @@ msgstr "" "services\">啟動服務</link> 來取得更多資訊。" #. (itstool) path: note/para -#: book.translate.xml:10541 +#: book.translate.xml:10548 msgid "" "By design, applications do not run their startup script upon installation, " "nor do they run their stop script upon deinstallation or upgrade. This " @@ -16349,7 +16349,7 @@ msgstr "" "中止 Script,這留給各系統的管理者去做決定。" #. (itstool) path: listitem/para -#: book.translate.xml:10550 +#: book.translate.xml:10557 msgid "" "Users of <citerefentry><refentrytitle>csh</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> should run <command>rehash</command> to rebuild " @@ -16360,7 +16360,7 @@ msgstr "" "單到 Shell 的 <envar>PATH</envar>。" #. (itstool) path: listitem/para -#: book.translate.xml:10556 +#: book.translate.xml:10563 msgid "" "Use <command>pkg info</command> to determine which files, man pages, and " "binaries were installed with the application." @@ -16369,17 +16369,17 @@ msgstr "" "Binary。" #. (itstool) path: sect1/title -#: book.translate.xml:10564 +#: book.translate.xml:10571 msgid "Dealing with Broken Ports" msgstr "處理損壞的 Port" #. (itstool) path: sect1/para -#: book.translate.xml:10566 +#: book.translate.xml:10573 msgid "When a port does not build or install, try the following:" msgstr "當發現某個 Port 無法順利編譯或安裝,可以嘗試以下幾種方法解決:" #. (itstool) path: listitem/para -#: book.translate.xml:10571 +#: book.translate.xml:10578 msgid "" "Search to see if there is a fix pending for the port in the <link xlink:href=" "\"@@URL_RELPREFIX@@/support.html\">Problem Report database</link>. If so, " @@ -16389,7 +16389,7 @@ msgstr "" "link> 看該 Port 有沒有待審核的修正,若有的話可以使用該修正來修正問題。" #. (itstool) path: listitem/para -#: book.translate.xml:10578 +#: book.translate.xml:10585 msgid "" "Ask the maintainer of the port for help. Type <command>make maintainer</" "command> in the ports skeleton or read the port's <filename>Makefile</" @@ -16404,7 +16404,7 @@ msgstr "" "filename> 中的 <literal>$FreeBSD:</literal> 一整行及輸出的錯誤訊息。" #. (itstool) path: note/para -#: book.translate.xml:10588 +#: book.translate.xml:10595 msgid "" "Some ports are not maintained by an individual but instead by a group " "maintainer represented by a <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US." @@ -16419,7 +16419,7 @@ msgstr "" "listname@FreeBSD.org</email> 都是,寄信時記得代入實際的論壇名稱。" #. (itstool) path: note/para -#: book.translate.xml:10594 +#: book.translate.xml:10601 msgid "" "In particular, ports maintained by <email role=\"nolink\">ports@FreeBSD.org</" "email> are not maintained by a specific individual. Instead, any fixes and " @@ -16431,7 +16431,7 @@ msgstr "" "提供,我們隨時歡迎志工參與!" #. (itstool) path: listitem/para -#: book.translate.xml:10602 +#: book.translate.xml:10609 msgid "" "If there is no response to the email, use Bugzilla to submit a bug report " "using the instructions in <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US." @@ -16443,7 +16443,7 @@ msgstr "" "</link> 的說明使用 Bugzilla 提出問題回報。" #. (itstool) path: listitem/para -#: book.translate.xml:10609 +#: book.translate.xml:10616 msgid "" "Fix it! The <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/" "porters-handbook/index.html\">Porter's Handbook</link> includes detailed " @@ -16455,7 +16455,7 @@ msgstr "" "詳細資訊,可提供資訊讓您可修正偶然損壞的 Port 或甚至您可以提交之自己的 Port。" #. (itstool) path: listitem/para -#: book.translate.xml:10616 +#: book.translate.xml:10623 msgid "" "Install the package instead of the port using the instructions in <xref " "linkend=\"pkgng-intro\"/>." @@ -16464,12 +16464,12 @@ msgstr "" "安裝。" #. (itstool) path: chapter/title -#: book.translate.xml:10646 +#: book.translate.xml:10653 msgid "The X Window System" msgstr "X Window 系統" #. (itstool) path: sect1/para -#: book.translate.xml:10651 +#: book.translate.xml:10658 msgid "" "An installation of FreeBSD using <application>bsdinstall</application> does " "not automatically install a graphical user interface. This chapter describes " @@ -16484,7 +16484,7 @@ msgstr "" "面環境或視窗管理程式。" #. (itstool) path: note/para -#: book.translate.xml:10660 +#: book.translate.xml:10667 msgid "" "Users who prefer an installation method that automatically configures the " "<application>Xorg</application> and offers a choice of window managers " @@ -16495,7 +16495,7 @@ msgstr "" "理程式選項的使用者請參考 <link xlink:href=\"http://www.trueos.org/\"/> 網站。" #. (itstool) path: sect1/para -#: book.translate.xml:10667 +#: book.translate.xml:10674 msgid "" "For more information on the video hardware that <application>Xorg</" "application> supports, refer to the <link xlink:href=\"http://www.x.org/\">x." @@ -16505,25 +16505,25 @@ msgstr "" "xlink:href=\"http://www.x.org/\">x.org</link> 網站。" #. (itstool) path: listitem/para -#: book.translate.xml:10674 +#: book.translate.xml:10681 msgid "" "The various components of the X Window System, and how they interoperate." msgstr "組成 X Window 系統的各種元件以及它們是如何相互運作。" #. (itstool) path: listitem/para -#: book.translate.xml:10679 +#: book.translate.xml:10686 msgid "How to install and configure <application>Xorg</application>." msgstr "如何安裝並設定 <application>Xorg</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:10684 +#: book.translate.xml:10691 msgid "" "How to install and configure several window managers and desktop " "environments." msgstr "如何安裝並設定各種視窗管理程式與桌面環境。" #. (itstool) path: listitem/para -#: book.translate.xml:10689 +#: book.translate.xml:10696 msgid "" "How to use <trademark class=\"registered\">TrueType</trademark> fonts in " "<application>Xorg</application>." @@ -16532,26 +16532,26 @@ msgstr "" "\">TrueType</trademark> 字型。" #. (itstool) path: listitem/para -#: book.translate.xml:10694 +#: book.translate.xml:10701 msgid "" "How to set up your system for graphical logins (<application>XDM</" "application>)." msgstr "如何設定系統以使用圖形化登入 (<application>XDM</application>)。" #. (itstool) path: listitem/para -#: book.translate.xml:10703 +#: book.translate.xml:10710 msgid "" "Know how to install additional third-party software as described in <xref " "linkend=\"ports\"/>." msgstr "了解如何依照 <xref linkend=\"ports\"/> 說明安裝其他第三方軟體。" #. (itstool) path: sect1/title -#: book.translate.xml:10710 +#: book.translate.xml:10717 msgid "Terminology" msgstr "術語" #. (itstool) path: sect1/para -#: book.translate.xml:10712 +#: book.translate.xml:10719 msgid "" "While it is not necessary to understand all of the details of the various " "components in the X Window System and how they interact, some basic " @@ -16561,12 +16561,12 @@ msgstr "" "會更容易上手。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10719 +#: book.translate.xml:10726 msgid "X server" msgstr "X 伺服器 (X Server)" #. (itstool) path: listitem/para -#: book.translate.xml:10722 +#: book.translate.xml:10729 msgid "" "X was designed from the beginning to be network-centric, and adopts a " "<quote>client-server</quote> model. In this model, the <quote>X server</" @@ -16587,12 +16587,12 @@ msgstr "" "<quote>X 客戶端</quote> 才是在桌機上面執行,實際上卻是相反。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10739 +#: book.translate.xml:10746 msgid "X client" msgstr "X 客戶端 (X Client)" #. (itstool) path: listitem/para -#: book.translate.xml:10742 +#: book.translate.xml:10749 msgid "" "Each X application, such as <application>XTerm</application> or " "<application>Firefox</application>, is a <quote>client</quote>. A client " @@ -16606,7 +16606,7 @@ msgstr "" "者剛點選了確定按鈕</quote>。" #. (itstool) path: listitem/para -#: book.translate.xml:10751 +#: book.translate.xml:10758 msgid "" "In a home or small office environment, the X server and the X clients " "commonly run on the same computer. It is also possible to run the X server " @@ -16619,19 +16619,19 @@ msgstr "" "式。 在這種情景,X 客戶端與伺服器之間的溝通就需透過網路來進行。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10761 +#: book.translate.xml:10768 msgid "window manager" msgstr "視窗管理程式 (Window Manager)" #. (itstool) path: listitem/para -#: book.translate.xml:10764 +#: book.translate.xml:10771 msgid "" "X does not dictate what windows should look like on-screen, how to move them " "around with the mouse, which keystrokes should be used to move between " "windows, what the title bars on each window should look like, whether or not " "they have close buttons on them, and so on. Instead, X delegates this " "responsibility to a separate window manager application. There are <link " -"xlink:href=\"http://xwinman.org/\">dozens of window managers</link> " +"xlink:href=\"http://www.xwinman.org/\">dozens of window managers</link> " "available. Each window manager provides a different look and feel: some " "support virtual desktops, some allow customized keystrokes to manage the " "desktop, some have a <quote>Start</quote> button, and some are themeable, " @@ -16641,14 +16641,14 @@ msgid "" msgstr "" "X 並不規定螢幕上的視窗該長什麼樣、要如何移動滑鼠指標、 要用什麼鍵來在視窗切" "換、每個視窗的標題列長相,及是否該有關閉按鈕,等等。事實上,X 把這部分交給所" -"謂的視窗管理程式來管理。可用的<link xlink:href=\"http://xwinman.org/\">視窗管" -"理程式有很多種</link>,每一種視窗管理程式都提供不同的使用介面風格:有些支援虛" -"擬桌面,有些允許自訂組合鍵來管理桌面,有些有 <quote>開始</quote> 鈕,有些則是" -"可更換佈景主題,可自行安裝新的佈景主題以更換外觀。 視窗管理程式可在 Port 套件" -"集的 <filename>x11-wm</filename> 分類找到。" +"謂的視窗管理程式來管理。可用的<link xlink:href=\"http://www.xwinman.org/\">視" +"窗管理程式有很多種</link>,每一種視窗管理程式都提供不同的使用介面風格:有些支" +"援虛擬桌面,有些允許自訂組合鍵來管理桌面,有些有 <quote>開始</quote> 鈕,有些" +"則是可更換佈景主題,可自行安裝新的佈景主題以更換外觀。 視窗管理程式可在 Port " +"套件集的 <filename>x11-wm</filename> 分類找到。" #. (itstool) path: listitem/para -#: book.translate.xml:10780 +#: book.translate.xml:10787 msgid "" "Each window manager uses a different configuration mechanism. Some expect " "configuration file written by hand while others provide graphical tools for " @@ -16658,12 +16658,12 @@ msgstr "" "過圖型化工具來完成大部分的設定工作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10788 +#: book.translate.xml:10795 msgid "desktop environment" msgstr "桌面環境 (Desktop Environment)" #. (itstool) path: listitem/para -#: book.translate.xml:10791 +#: book.translate.xml:10798 msgid "" "<application>KDE</application> and <application>GNOME</application> are " "considered to be desktop environments as they include an entire suite of " @@ -16675,12 +16675,12 @@ msgstr "" "網頁瀏覽器及遊戲。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10800 +#: book.translate.xml:10807 msgid "focus policy" msgstr "聚焦政策 (Focus Policy)" #. (itstool) path: listitem/para -#: book.translate.xml:10803 +#: book.translate.xml:10810 msgid "" "The window manager is responsible for the mouse focus policy. This policy " "provides some means for choosing which window is actively receiving " @@ -16691,7 +16691,7 @@ msgstr "" "入的視窗。" #. (itstool) path: listitem/para -#: book.translate.xml:10809 +#: book.translate.xml:10816 msgid "" "One focus policy is called <quote>click-to-focus</quote>. In this model, a " "window becomes active upon receiving a mouse click. In the <quote>focus-" @@ -16717,7 +16717,7 @@ msgstr "" "收。" #. (itstool) path: listitem/para -#: book.translate.xml:10827 +#: book.translate.xml:10834 msgid "" "Different window managers support different focus models. All of them " "support click-to-focus, and the majority of them also support other " @@ -16728,12 +16728,12 @@ msgstr "" "支援其他模式,請查看視窗管理程式的說明文件來了解可用的聚焦模式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:10836 +#: book.translate.xml:10843 msgid "widgets" msgstr "視窗元件 (Widget)" #. (itstool) path: listitem/para -#: book.translate.xml:10839 +#: book.translate.xml:10846 msgid "" "Widget is a term for all of the items in the user interface that can be " "clicked or manipulated in some way. This includes buttons, check boxes, " @@ -16752,37 +16752,37 @@ msgstr "" "觀。" #. (itstool) path: sect1/title -#: book.translate.xml:10856 +#: book.translate.xml:10863 msgid "Installing <application>Xorg</application>" msgstr "安裝 <application>Xorg</application>" #. (itstool) path: sect1/para -#: book.translate.xml:10858 +#: book.translate.xml:10865 msgid "" "On FreeBSD, <application>Xorg</application> can be installed as a package or " "port." msgstr "在 FreeBSD,<application>Xorg</application> 可透過套件或 Port 來安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:10861 +#: book.translate.xml:10868 msgid "" "The binary package can be installed quickly but with fewer options for " "customization:" msgstr "使用 Binary 套件的安裝速度較快,但可用的自訂選項較少:" #. (itstool) path: sect1/screen -#: book.translate.xml:10864 +#: book.translate.xml:10871 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xorg</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:10866 +#: book.translate.xml:10873 msgid "To build and install from the Ports Collection:" msgstr "要從 Port 套件集編譯與安裝:" #. (itstool) path: sect1/screen -#: book.translate.xml:10868 +#: book.translate.xml:10875 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11/xorg</userinput>\n" @@ -16790,7 +16790,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:10871 +#: book.translate.xml:10878 msgid "" "Either of these installations results in the complete <application>Xorg</" "application> system being installed. Binary packages are the best option for " @@ -16800,7 +16800,7 @@ msgstr "" "較建議使用 Binary 套件安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:10875 +#: book.translate.xml:10882 msgid "" "A smaller version of the X system suitable for experienced users is " "available in <package>x11/xorg-minimal</package>. Most of the documents, " @@ -16812,35 +16812,36 @@ msgstr "" "程式會需要這些額外的元件才能運作。" #. (itstool) path: sect1/title -#: book.translate.xml:10883 +#: book.translate.xml:10890 msgid "<application>Xorg</application> Configuration" msgstr "<application>Xorg</application> 設定" #. (itstool) path: info/author -#: book.translate.xml:10886 +#: book.translate.xml:10893 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Originally contributed by</contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:10895 +#: book.translate.xml:10902 msgid "<primary>Xorg</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:10896 +#: book.translate.xml:10903 msgid "<primary><application>Xorg</application></primary>" msgstr "" #. (itstool) path: sect2/title #. (itstool) path: sect1/title -#: book.translate.xml:10899 book.translate.xml:16926 book.translate.xml:62497 +#: book.translate.xml:10906 book.translate.xml:16933 book.translate.xml:45286 +#: book.translate.xml:62119 msgid "Quick Start" msgstr "快速開始" #. (itstool) path: sect2/para -#: book.translate.xml:10901 +#: book.translate.xml:10908 msgid "" "<application>Xorg</application> supports most common video cards, keyboards, " "and pointing devices." @@ -16848,7 +16849,7 @@ msgstr "" "<application>Xorg</application> 支援大多數常見的顯示卡、鍵盤以及指標裝置。" #. (itstool) path: tip/para -#: book.translate.xml:10905 +#: book.translate.xml:10912 msgid "" "Video cards, monitors, and input devices are automatically detected and do " "not require any manual configuration. Do not create <filename>xorg.conf</" @@ -16860,7 +16861,7 @@ msgstr "" "步驟。" #. (itstool) path: step/para -#: book.translate.xml:10914 +#: book.translate.xml:10921 msgid "" "If <application>Xorg</application> has been used on this computer before, " "move or remove any existing configuration files:" @@ -16869,7 +16870,7 @@ msgstr "" "名或移除:" #. (itstool) path: step/screen -#: book.translate.xml:10918 +#: book.translate.xml:10925 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mv /etc/X11/xorg.conf ~/xorg.conf.etc</userinput>\n" @@ -16877,7 +16878,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:10923 +#: book.translate.xml:10930 msgid "" "Add the user who will run <application>Xorg</application> to the " "<literal>video</literal> or <literal>wheel</literal> group to enable 3D " @@ -16889,13 +16890,13 @@ msgstr "" "使用者 <replaceable>jru</replaceable> 到任一個可用的群組:" #. (itstool) path: step/screen -#: book.translate.xml:10931 +#: book.translate.xml:10938 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod video -m <replaceable>jru</replaceable> || pw groupmod wheel -m <replaceable>jru</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:10935 +#: book.translate.xml:10942 msgid "" "The <acronym>TWM</acronym> window manager is included by default. It is " "started when <application>Xorg</application> starts:" @@ -16904,13 +16905,13 @@ msgstr "" "application> 時便會啟動該視窗管理程式:" #. (itstool) path: step/screen -#: book.translate.xml:10939 +#: book.translate.xml:10946 #, no-wrap msgid "<prompt>%</prompt> <userinput>startx</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:10943 +#: book.translate.xml:10950 msgid "" "On some older versions of FreeBSD, the system console must be set to " "<citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></" @@ -16922,12 +16923,12 @@ msgstr "" "citerefentry> 才可正常運作,請參考 <xref linkend=\"x-config-kms\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:10952 +#: book.translate.xml:10959 msgid "User Group for Accelerated Video" msgstr "可加速影像處理的使用者群組" #. (itstool) path: sect2/para -#: book.translate.xml:10954 +#: book.translate.xml:10961 msgid "" "Access to <filename>/dev/dri</filename> is needed to allow 3D acceleration " "on video cards. It is usually simplest to add the user who will be running X " @@ -16945,18 +16946,18 @@ msgstr "" "<literal>video</literal> 則會加入 <literal>wheel</literal> 群組:" #. (itstool) path: sect2/screen -#: book.translate.xml:10964 +#: book.translate.xml:10971 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod video -m <replaceable>slurms</replaceable> || pw groupmod wheel -m <replaceable>slurms</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:10968 +#: book.translate.xml:10975 msgid "Kernel Mode Setting (<acronym>KMS</acronym>)" msgstr "核心模式設定 (Kernel Mode Setting, <acronym>KMS</acronym>)" #. (itstool) path: sect2/para -#: book.translate.xml:10970 +#: book.translate.xml:10977 msgid "" "When the computer switches from displaying the console to a higher screen " "resolution for X, it must set the video output <emphasis>mode</emphasis>. " @@ -16979,7 +16980,7 @@ msgstr "" "citerefentry> Console 可避免這個問題。" #. (itstool) path: sect2/para -#: book.translate.xml:10981 +#: book.translate.xml:10988 msgid "" "Add this line to <filename>/boot/loader.conf</filename> to enable " "<citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></" @@ -16990,7 +16991,7 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:10984 +#: book.translate.xml:10991 #, no-wrap msgid "kern.vty=vt" msgstr "" @@ -16998,20 +16999,20 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: sect1/title #. (itstool) path: sect3/title -#: book.translate.xml:10988 book.translate.xml:21061 book.translate.xml:31622 -#: book.translate.xml:45486 book.translate.xml:55647 +#: book.translate.xml:10995 book.translate.xml:21068 book.translate.xml:31629 +#: book.translate.xml:55268 msgid "Configuration Files" msgstr "設定檔" #. (itstool) path: sect2/para -#: book.translate.xml:10990 +#: book.translate.xml:10997 msgid "" "Manual configuration is usually not necessary. Please do not manually create " "configuration files unless autoconfiguration does not work." msgstr "通常不需要做手動設置,除非自動設置無法運作,否則請不要手動建立設定檔。" #. (itstool) path: sect3/para -#: book.translate.xml:10997 +#: book.translate.xml:11004 msgid "" "<application>Xorg</application> looks in several directories for " "configuration files. <filename>/usr/local/etc/X11/</filename> is the " @@ -17023,7 +17024,7 @@ msgstr "" "可以幫助將應用程式檔案與作業系統檔案分離。" #. (itstool) path: sect3/para -#: book.translate.xml:11004 +#: book.translate.xml:11011 msgid "" "Storing configuration files in the legacy <filename>/etc/X11/</filename> " "still works. However, this mixes application files with the base FreeBSD " @@ -17033,12 +17034,12 @@ msgstr "" "程式檔案與基礎 FreeBSD 檔案混合在一起存放。" #. (itstool) path: sect3/title -#: book.translate.xml:11011 +#: book.translate.xml:11018 msgid "Single or Multiple Files" msgstr "單檔或多檔" #. (itstool) path: sect3/para -#: book.translate.xml:11013 +#: book.translate.xml:11020 msgid "" "It is easier to use multiple files that each configure a specific setting " "than the traditional single <filename>xorg.conf</filename>. These files are " @@ -17052,12 +17053,12 @@ msgstr "" "d/</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:11021 +#: book.translate.xml:11028 msgid "Examples of these files are shown later in this section." msgstr "於本節稍後會有這些檔案的範例。" #. (itstool) path: sect3/para -#: book.translate.xml:11024 +#: book.translate.xml:11031 msgid "" "The traditional single <filename>xorg.conf</filename> still works, but is " "neither as clear nor as flexible as multiple files in the <filename>xorg." @@ -17067,17 +17068,17 @@ msgstr "" "<filename>xorg.conf.d/</filename> 子目錄中的多檔設定方式較不明瞭且沒有彈性。" #. (itstool) path: sect2/title -#: book.translate.xml:11032 +#: book.translate.xml:11039 msgid "Video Cards" msgstr "顯示卡" #. (itstool) path: varlistentry/term -#: book.translate.xml:11036 +#: book.translate.xml:11043 msgid "<trademark class=\"registered\">Intel</trademark>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11039 +#: book.translate.xml:11046 msgid "" "3D acceleration is supported on most <trademark class=\"registered\">Intel</" "trademark> graphics up to Ivy Bridge (HD Graphics 2500, 4000, and P4000), " @@ -17088,12 +17089,12 @@ msgstr "" "(HD Graphics) 與 Sandy Bridge (HD Graphics 2000)。" #. (itstool) path: listitem/para -#: book.translate.xml:11044 +#: book.translate.xml:11051 msgid "Driver name: <literal>intel</literal>" msgstr "驅動程式名稱:<literal>intel</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:11046 +#: book.translate.xml:11053 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_Intel_graphics_processing_units\"/>." @@ -17102,24 +17103,24 @@ msgstr "" "List_of_Intel_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11051 +#: book.translate.xml:11058 msgid "<trademark class=\"registered\">AMD</trademark> Radeon" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11054 +#: book.translate.xml:11061 msgid "" "2D and 3D acceleration is supported on Radeon cards up to and including the " "HD6000 series." msgstr "Radeon 顯示卡支援 2D 及 3D 加速,最新到 HD6000 系列。" #. (itstool) path: listitem/para -#: book.translate.xml:11057 +#: book.translate.xml:11064 msgid "Driver name: <literal>radeon</literal>" msgstr "驅動程式名稱:<literal>radeon</literal>" #. (itstool) path: listitem/para -#: book.translate.xml:11059 +#: book.translate.xml:11066 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_AMD_graphics_processing_units\"/>." @@ -17128,12 +17129,12 @@ msgstr "" "List_of_AMD_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11064 +#: book.translate.xml:11071 msgid "NVIDIA" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11067 +#: book.translate.xml:11074 msgid "" "Several NVIDIA drivers are available in the <filename>x11</filename> " "category of the Ports Collection. Install the driver that matches the video " @@ -17143,7 +17144,7 @@ msgstr "" "得,請安裝其中與顯示卡相符的驅動程式。" #. (itstool) path: listitem/para -#: book.translate.xml:11072 +#: book.translate.xml:11079 msgid "" "For reference, see <link xlink:href=\"https://en.wikipedia.org/wiki/" "List_of_Nvidia_graphics_processing_units\"/>." @@ -17152,12 +17153,12 @@ msgstr "" "List_of_Nvidia_graphics_processing_units\"/>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11077 +#: book.translate.xml:11084 msgid "Hybrid Combination Graphics" msgstr "混合組合繪圖晶片" #. (itstool) path: listitem/para -#: book.translate.xml:11080 +#: book.translate.xml:11087 msgid "" "Some notebook computers add additional graphics processing units to those " "built into the chipset or processor. <emphasis>Optimus</emphasis> combines " @@ -17177,7 +17178,7 @@ msgstr "" "acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:11089 +#: book.translate.xml:11096 msgid "" "Implementations of these hybrid graphics systems vary, and " "<application>Xorg</application> on FreeBSD is not able to drive all versions " @@ -17187,7 +17188,7 @@ msgstr "" "尚無法驅動所有的混合繪圖系統版本。" #. (itstool) path: listitem/para -#: book.translate.xml:11093 +#: book.translate.xml:11100 msgid "" "Some computers provide a <acronym>BIOS</acronym> option to disable one of " "the graphics adapters or select a <emphasis>discrete</emphasis> mode which " @@ -17204,7 +17205,7 @@ msgstr "" "class=\"registered\">Intel</trademark> 驅動程式驅動。" #. (itstool) path: listitem/para -#: book.translate.xml:11102 +#: book.translate.xml:11109 msgid "" "<acronym>BIOS</acronym> settings depend on the model of computer. In some " "situations, both <acronym>GPU</acronym>s can be left enabled, but creating a " @@ -17216,12 +17217,12 @@ msgstr "" "literal> 節只使用主要的 <acronym>GPU</acronym> 便能讓系統運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11113 +#: book.translate.xml:11120 msgid "Other Video Cards" msgstr "其他顯示卡" #. (itstool) path: listitem/para -#: book.translate.xml:11116 +#: book.translate.xml:11123 msgid "" "Drivers for some less-common video cards can be found in the <filename>x11-" "drivers</filename> directory of the Ports Collection." @@ -17230,7 +17231,7 @@ msgstr "" "目錄找到。" #. (itstool) path: listitem/para -#: book.translate.xml:11120 +#: book.translate.xml:11127 msgid "" "Cards that are not supported by a specific driver might still be usable with " "the <package>x11-drivers/xf86-video-vesa</package> driver. This driver is " @@ -17246,7 +17247,7 @@ msgstr "" "式來驅動顯示卡。" #. (itstool) path: listitem/para -#: book.translate.xml:11130 +#: book.translate.xml:11137 msgid "" "<package>x11-drivers/xf86-video-scfb</package> is a similar nonspecialized " "video driver that works on many <acronym>UEFI</acronym> and <trademark class=" @@ -17257,12 +17258,12 @@ msgstr "" "trademark> 的電腦上運作。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11137 +#: book.translate.xml:11144 msgid "Setting the Video Driver in a File" msgstr "在檔案中設定影像驅動程式" #. (itstool) path: listitem/para -#: book.translate.xml:11140 +#: book.translate.xml:11147 msgid "" "To set the <trademark class=\"registered\">Intel</trademark> driver in a " "configuration file:" @@ -17271,7 +17272,7 @@ msgstr "" "式:" #. (itstool) path: example/title -#: book.translate.xml:11144 +#: book.translate.xml:11151 msgid "" "Select <trademark class=\"registered\">Intel</trademark> Video Driver in a " "File" @@ -17279,12 +17280,12 @@ msgstr "" "在單檔中選擇 <trademark class=\"registered\">Intel</trademark> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11146 +#: book.translate.xml:11153 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-intel.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11148 +#: book.translate.xml:11155 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17295,7 +17296,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:11154 +#: book.translate.xml:11161 msgid "" "If more than one video card is present, the <literal>BusID</literal> " "identifier can be uncommented and set to select the desired card. A list of " @@ -17307,22 +17308,22 @@ msgstr "" "lv | grep -B3 display</command> 取得。" #. (itstool) path: listitem/para -#: book.translate.xml:11162 +#: book.translate.xml:11169 msgid "To set the Radeon driver in a configuration file:" msgstr "要在設定檔設定使用 Radeon 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11166 +#: book.translate.xml:11173 msgid "Select Radeon Video Driver in a File" msgstr "在單檔中選擇 Radeon 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11168 +#: book.translate.xml:11175 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-radeon.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11170 +#: book.translate.xml:11177 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17332,22 +17333,22 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11176 +#: book.translate.xml:11183 msgid "To set the <acronym>VESA</acronym> driver in a configuration file:" msgstr "要在設定檔設定使用 <acronym>VESA</acronym> 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11180 +#: book.translate.xml:11187 msgid "Select <acronym>VESA</acronym> Video Driver in a File" msgstr "在單檔中選擇 <acronym>VESA</acronym> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11183 +#: book.translate.xml:11190 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-vesa.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11185 +#: book.translate.xml:11192 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17357,7 +17358,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11191 +#: book.translate.xml:11198 msgid "" "To set the <literal>scfb</literal> driver for use with a <acronym>UEFI</" "acronym> or <trademark class=\"registered\">ARM</trademark> computer:" @@ -17366,17 +17367,17 @@ msgstr "" "trademark> 電腦使用 <literal>scfb</literal> 驅動程式:" #. (itstool) path: example/title -#: book.translate.xml:11195 +#: book.translate.xml:11202 msgid "Select <literal>scfb</literal> Video Driver in a File" msgstr "在單檔中選擇 <literal>scfb</literal> 影像驅動程式" #. (itstool) path: example/para -#: book.translate.xml:11198 +#: book.translate.xml:11205 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/driver-scfb.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11200 +#: book.translate.xml:11207 #, no-wrap msgid "" "Section \"Device\"\n" @@ -17386,12 +17387,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:11211 +#: book.translate.xml:11218 msgid "Monitors" msgstr "顯示器" #. (itstool) path: sect2/para -#: book.translate.xml:11213 +#: book.translate.xml:11220 msgid "" "Almost all monitors support the Extended Display Identification Data " "standard (<acronym>EDID</acronym>). <application>Xorg</application> uses " @@ -17405,7 +17406,7 @@ msgstr "" "適合的設定組合使用該顯示器。" #. (itstool) path: sect2/para -#: book.translate.xml:11221 +#: book.translate.xml:11228 msgid "" "Other resolutions supported by the monitor can be chosen by setting the " "desired resolution in configuration files, or after the X server has been " @@ -17417,7 +17418,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11228 +#: book.translate.xml:11235 msgid "" "Using <citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>" @@ -17426,7 +17427,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry>" #. (itstool) path: listitem/para -#: book.translate.xml:11231 +#: book.translate.xml:11238 msgid "" "Run <citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> without any parameters " @@ -17437,7 +17438,7 @@ msgstr "" "輸出及已偵測到的顯示器模式清單:" #. (itstool) path: listitem/screen -#: book.translate.xml:11234 +#: book.translate.xml:11241 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xrandr</userinput>\n" @@ -17458,7 +17459,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11250 +#: book.translate.xml:11257 msgid "" "This shows that the <literal>DVI-0</literal> output is being used to display " "a screen resolution of 1920x1200 pixels at a refresh rate of about 60 Hz. " @@ -17470,7 +17471,7 @@ msgstr "" "與 <literal>HDMI-0</literal> 接頭。" #. (itstool) path: listitem/para -#: book.translate.xml:11257 +#: book.translate.xml:11264 msgid "" "Any of the other display modes can be selected with <citerefentry vendor=" "\"xfree86\"><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></" @@ -17481,20 +17482,20 @@ msgstr "" "式。例如要切換為 1280x1024 於 60 Hz:" #. (itstool) path: listitem/screen -#: book.translate.xml:11261 +#: book.translate.xml:11268 #, no-wrap msgid "<prompt>%</prompt> <userinput>xrandr --mode 1280x1024 --rate 60</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11263 +#: book.translate.xml:11270 msgid "" "A common task is using the external video output on a notebook computer for " "a video projector." msgstr "在筆記型電腦使用外部顯示輸出到投影機是常見的作業。" #. (itstool) path: listitem/para -#: book.translate.xml:11266 +#: book.translate.xml:11273 msgid "" "The type and quantity of output connectors varies between devices, and the " "name given to each output varies from driver to driver. What one driver " @@ -17510,7 +17511,7 @@ msgstr "" "citerefentry> 列出所有可用的輸出:" #. (itstool) path: listitem/screen -#: book.translate.xml:11274 +#: book.translate.xml:11281 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xrandr</userinput>\n" @@ -17534,7 +17535,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11293 +#: book.translate.xml:11300 msgid "" "Four outputs were found: the built-in panel <literal>LVDS1</literal>, and " "external <literal>VGA1</literal>, <literal>HDMI1</literal>, and " @@ -17544,7 +17545,7 @@ msgstr "" "literal>, <literal>HDMI1</literal> 以及 <literal>DP1</literal> 接頭。" #. (itstool) path: listitem/para -#: book.translate.xml:11298 +#: book.translate.xml:11305 msgid "" "The projector has been connected to the <literal>VGA1</literal> output. " "<citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" @@ -17558,13 +17559,13 @@ msgstr "" "側:" #. (itstool) path: listitem/screen -#: book.translate.xml:11304 +#: book.translate.xml:11311 #, no-wrap msgid "<prompt>%</prompt> <userinput>xrandr --output VGA1 --auto --right-of LVDS1</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11306 +#: book.translate.xml:11313 msgid "" "<literal>--auto</literal> chooses the resolution and refresh rate detected " "by <acronym>EDID</acronym>. If the resolution is not correctly detected, a " @@ -17579,7 +17580,7 @@ msgstr "" "可設定 <literal>--mode 1024x768</literal>。" #. (itstool) path: listitem/para -#: book.translate.xml:11315 +#: book.translate.xml:11322 msgid "" "<citerefentry vendor=\"xfree86\"><refentrytitle>xrandr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is often run from " @@ -17590,28 +17591,28 @@ msgstr "" "xinitrc</filename> 執行以在 X 啟動時設定適合的模式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11322 +#: book.translate.xml:11329 msgid "Setting Monitor Resolution in a File" msgstr "在檔案中設定螢幕解析度" #. (itstool) path: listitem/para -#: book.translate.xml:11325 +#: book.translate.xml:11332 msgid "To set a screen resolution of 1024x768 in a configuration file:" msgstr "在設定檔設定螢幕解析度為 1024x768:" #. (itstool) path: example/title -#: book.translate.xml:11329 +#: book.translate.xml:11336 msgid "Set Screen Resolution in a File" msgstr "在單檔中設定螢幕解析度" #. (itstool) path: example/para -#: book.translate.xml:11331 +#: book.translate.xml:11338 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/screen-resolution.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11333 +#: book.translate.xml:11340 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -17624,7 +17625,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:11342 +#: book.translate.xml:11349 msgid "" "The few monitors that do not have <acronym>EDID</acronym> can be configured " "by setting <literal>HorizSync</literal> and <literal>VertRefresh</literal> " @@ -17634,17 +17635,17 @@ msgstr "" "及 <literal>VertRefresh</literal> 為顯示器支援的頻率範圍。" #. (itstool) path: example/title -#: book.translate.xml:11349 +#: book.translate.xml:11356 msgid "Manually Setting Monitor Frequencies" msgstr "手動設定顯示器頻率" #. (itstool) path: example/para -#: book.translate.xml:11351 +#: book.translate.xml:11358 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/monitor0-freq.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11353 +#: book.translate.xml:11360 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -17655,22 +17656,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:11365 +#: book.translate.xml:11372 msgid "Input Devices" msgstr "輸入裝置" #. (itstool) path: sect3/title -#: book.translate.xml:11368 +#: book.translate.xml:11375 msgid "Keyboards" msgstr "鍵盤" #. (itstool) path: varlistentry/term -#: book.translate.xml:11372 +#: book.translate.xml:11379 msgid "Keyboard Layout" msgstr "鍵盤配置" #. (itstool) path: listitem/para -#: book.translate.xml:11375 +#: book.translate.xml:11382 msgid "" "The standardized location of keys on a keyboard is called a " "<emphasis>layout</emphasis>. Layouts and other adjustable parameters are " @@ -17682,7 +17683,7 @@ msgstr "" "refentrytitle><manvolnum>7</manvolnum></citerefentry>。" #. (itstool) path: listitem/para -#: book.translate.xml:11380 +#: book.translate.xml:11387 msgid "" "A United States layout is the default. To select an alternate layout, set " "the <literal>XkbLayout</literal> and <literal>XkbVariant</literal> options " @@ -17694,25 +17695,25 @@ msgstr "" "選項。這會套用所有符合該類別的輸入裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:11387 +#: book.translate.xml:11394 msgid "" "This example selects a French keyboard layout with the <literal>oss</" "literal> variant." msgstr "這個例子選擇 French 鍵盤配置使用 <literal>oss</literal> 變體。" #. (itstool) path: example/title -#: book.translate.xml:11391 +#: book.translate.xml:11398 msgid "Setting a Keyboard Layout" msgstr "設定鍵盤配置" #. (itstool) path: example/para -#: book.translate.xml:11393 +#: book.translate.xml:11400 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/keyboard-fr-oss.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11395 +#: book.translate.xml:11402 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17725,12 +17726,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:11405 +#: book.translate.xml:11412 msgid "Setting Multiple Keyboard Layouts" msgstr "設定多個鍵盤配置" #. (itstool) path: example/para -#: book.translate.xml:11407 +#: book.translate.xml:11414 msgid "" "Set United States, Spanish, and Ukrainian keyboard layouts. Cycle through " "these layouts by pressing <keycombo action=\"simul\"> <keycap>Alt</keycap> " @@ -17744,13 +17745,13 @@ msgstr "" "強配置切換控制與目前配置的指示。" #. (itstool) path: example/para -#: book.translate.xml:11418 +#: book.translate.xml:11425 msgid "" "<filename>/usr/local/etc/X11/xorg.conf.d/kbd-layout-multi.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11420 +#: book.translate.xml:11427 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17761,12 +17762,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:11430 +#: book.translate.xml:11437 msgid "Closing <application>Xorg</application> From the Keyboard" msgstr "從鍵盤關閉 <application>Xorg</application>" #. (itstool) path: listitem/para -#: book.translate.xml:11434 +#: book.translate.xml:11441 msgid "" "X can be closed with a combination of keys. By default, that key combination " "is not set because it conflicts with keyboard commands for some " @@ -17777,17 +17778,17 @@ msgstr "" "指令衝突。要開啟這個選項需要更改鍵盤 <literal>InputDevice</literal> 節:" #. (itstool) path: example/title -#: book.translate.xml:11442 +#: book.translate.xml:11449 msgid "Enabling Keyboard Exit from X" msgstr "開啟鍵盤離開 X 功能" #. (itstool) path: example/para -#: book.translate.xml:11444 +#: book.translate.xml:11451 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/keyboard-zap.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11446 +#: book.translate.xml:11453 #, no-wrap msgid "" "Section\t\"InputClass\"\n" @@ -17799,12 +17800,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:11459 +#: book.translate.xml:11466 msgid "Mice and Pointing Devices" msgstr "滑鼠與指標裝置" #. (itstool) path: sect3/para -#: book.translate.xml:11461 +#: book.translate.xml:11468 msgid "" "Many mouse parameters can be adjusted with configuration options. See " "<citerefentry vendor=\"xorg\"><refentrytitle>mousedrv</" @@ -17815,12 +17816,12 @@ msgstr "" "citerefentry> 來取得完整清單。" #. (itstool) path: varlistentry/term -#: book.translate.xml:11466 +#: book.translate.xml:11473 msgid "Mouse Buttons" msgstr "滑鼠按鍵" #. (itstool) path: listitem/para -#: book.translate.xml:11469 +#: book.translate.xml:11476 msgid "" "The number of buttons on a mouse can be set in the mouse " "<literal>InputDevice</literal> section of <filename>xorg.conf</filename>. To " @@ -17830,17 +17831,17 @@ msgstr "" "literal> 節設定,例如要設定按鍵數為 7:" #. (itstool) path: example/title -#: book.translate.xml:11475 +#: book.translate.xml:11482 msgid "Setting the Number of Mouse Buttons" msgstr "設定滑鼠按鍵數" #. (itstool) path: example/para -#: book.translate.xml:11477 +#: book.translate.xml:11484 msgid "<filename>/usr/local/etc/X11/xorg.conf.d/mouse0-buttons.conf</filename>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:11479 +#: book.translate.xml:11486 #, no-wrap msgid "" "Section \"InputDevice\"\n" @@ -17850,7 +17851,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11493 +#: book.translate.xml:11500 msgid "" "In some cases, <application>Xorg</application> autoconfiguration does not " "work with particular hardware, or a different configuration is desired. For " @@ -17860,14 +17861,14 @@ msgstr "" "需要使用不同的設定。針對這些情況會建立自訂的設定檔。" #. (itstool) path: warning/para -#: book.translate.xml:11499 +#: book.translate.xml:11506 msgid "" "Do not create manual configuration files unless required. Unnecessary manual " "configuration can prevent proper operation." msgstr "非必要請勿手動建立設定檔,非必要的手動設置會造成運作不正常。" #. (itstool) path: sect2/para -#: book.translate.xml:11504 +#: book.translate.xml:11511 msgid "" "A configuration file can be generated by <application>Xorg</application> " "based on the detected hardware. This file is often a useful starting point " @@ -17877,18 +17878,18 @@ msgstr "" "開始自訂設定很有幫助。" #. (itstool) path: sect2/para -#: book.translate.xml:11509 +#: book.translate.xml:11516 msgid "Generating an <filename>xorg.conf</filename>:" msgstr "產生 <filename>xorg.conf</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:11511 +#: book.translate.xml:11518 #, no-wrap msgid "<prompt>#</prompt> <userinput>Xorg -configure</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11513 +#: book.translate.xml:11520 msgid "" "The configuration file is saved to <filename>/root/xorg.conf.new</filename>. " "Make any changes desired, then test that file with:" @@ -17897,13 +17898,13 @@ msgstr "" "後使用以下指令測試該檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:11517 +#: book.translate.xml:11524 #, no-wrap msgid "<prompt>#</prompt> <userinput>Xorg -config /root/xorg.conf.new</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11519 +#: book.translate.xml:11526 msgid "" "After the new configuration has been adjusted and tested, it can be split " "into smaller files in the normal location, <filename>/usr/local/etc/X11/xorg." @@ -17913,17 +17914,17 @@ msgstr "" "usr/local/etc/X11/xorg.conf.d/</filename>。" #. (itstool) path: sect1/title -#: book.translate.xml:11537 +#: book.translate.xml:11544 msgid "Using Fonts in <application>Xorg</application>" msgstr "在 <application>Xorg</application> 使用字型" #. (itstool) path: sect2/title -#: book.translate.xml:11540 +#: book.translate.xml:11547 msgid "Type1 Fonts" msgstr "Type1 字型" #. (itstool) path: sect2/para -#: book.translate.xml:11542 +#: book.translate.xml:11549 msgid "" "The default fonts that ship with <application>Xorg</application> are less " "than ideal for typical desktop publishing applications. Large presentation " @@ -17961,27 +17962,27 @@ msgstr "" "linkend=\"truetype\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:11561 +#: book.translate.xml:11568 msgid "" "To install the above Type1 font collections from binary packages, run the " "following commands:" msgstr "要由 Binary 套件安裝上述的 Type1 字型集可執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:11564 +#: book.translate.xml:11571 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install urwfonts</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11566 +#: book.translate.xml:11573 msgid "" "Alternatively, to build from the Ports Collection, run the following " "commands:" msgstr "或由 Port 套件集編譯,可執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:11569 +#: book.translate.xml:11576 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput>\n" @@ -17989,7 +17990,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11572 +#: book.translate.xml:11579 msgid "" "And likewise with the freefont or other collections. To have the X server " "detect these fonts, add an appropriate line to the X server configuration " @@ -18000,18 +18001,18 @@ msgstr "" "filename>),內容為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11577 +#: book.translate.xml:11584 #, no-wrap msgid "FontPath \"/usr/local/share/fonts/urwfonts/\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11579 +#: book.translate.xml:11586 msgid "Alternatively, at the command line in the X session run:" msgstr "或者在 X session 的指令列執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:11582 +#: book.translate.xml:11589 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/urwfonts</userinput>\n" @@ -18019,7 +18020,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11585 +#: book.translate.xml:11592 msgid "" "This will work but will be lost when the X session is closed, unless it is " "added to the startup file (<filename>~/.xinitrc</filename> for a normal " @@ -18036,22 +18037,22 @@ msgstr "" "範。" #. (itstool) path: sect2/title -#: book.translate.xml:11597 +#: book.translate.xml:11604 msgid "<trademark class=\"registered\">TrueType</trademark> Fonts" msgstr "<trademark class=\"registered\">TrueType</trademark> 字型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11599 +#: book.translate.xml:11606 msgid "<primary>TrueType Fonts</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11602 +#: book.translate.xml:11609 msgid "<primary>fonts</primary> <secondary>TrueType</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11607 +#: book.translate.xml:11614 msgid "" "<application>Xorg</application> has built in support for rendering " "<trademark class=\"registered\">TrueType</trademark> fonts. There are two " @@ -18068,13 +18069,13 @@ msgstr "" "\"</literal> section。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11615 +#: book.translate.xml:11622 #, no-wrap msgid "Load \"freetype\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11617 +#: book.translate.xml:11624 msgid "" "Now make a directory for the <trademark class=\"registered\">TrueType</" "trademark> fonts (for example, <filename>/usr/local/share/fonts/TrueType</" @@ -18104,18 +18105,18 @@ msgstr "" "裝了新的檔案。<command>mkfontdir</command> 可用套件的方式安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:11631 +#: book.translate.xml:11638 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install mkfontdir</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11633 +#: book.translate.xml:11640 msgid "Then create an index of X font files in a directory:" msgstr "然後在目錄中建立 X 字型檔的索引:" #. (itstool) path: sect2/screen -#: book.translate.xml:11636 +#: book.translate.xml:11643 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/local/share/fonts/TrueType</userinput>\n" @@ -18123,7 +18124,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11639 +#: book.translate.xml:11646 msgid "" "Now add the <trademark class=\"registered\">TrueType</trademark> directory " "to the font path. This is just the same as described in <xref linkend=" @@ -18133,7 +18134,7 @@ msgstr "" "徑。這個動作與 <xref linkend=\"type1\"/> 中所介紹的方式相同:" #. (itstool) path: sect2/screen -#: book.translate.xml:11642 +#: book.translate.xml:11649 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/TrueType</userinput>\n" @@ -18141,7 +18142,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11645 +#: book.translate.xml:11652 msgid "" "or add a <literal>FontPath</literal> line to <filename>xorg.conf</filename>." msgstr "" @@ -18149,7 +18150,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:11648 +#: book.translate.xml:11655 msgid "" "Now <application>Gimp</application>, <application>Apache OpenOffice</" "application>, and all of the other X applications should now recognize the " @@ -18165,22 +18166,22 @@ msgstr "" "application> 中) 現在會看起來比較像樣了。" #. (itstool) path: sect2/title -#: book.translate.xml:11669 +#: book.translate.xml:11676 msgid "Anti-Aliased Fonts" msgstr "反鋸齒字型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11671 +#: book.translate.xml:11678 msgid "<primary>anti-aliased fonts</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11674 +#: book.translate.xml:11681 msgid "<primary>fonts</primary> <secondary>anti-aliased</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11679 +#: book.translate.xml:11686 msgid "" "All fonts in <application>Xorg</application> that are found in <filename>/" "usr/local/share/fonts/</filename> and <filename>~/.fonts/</filename> are " @@ -18196,7 +18197,7 @@ msgstr "" "<application>Firefox</application>。" #. (itstool) path: sect2/para -#: book.translate.xml:11688 +#: book.translate.xml:11695 msgid "" "To control which fonts are anti-aliased, or to configure anti-aliasing " "properties, create (or edit, if it already exists) the file <filename>/usr/" @@ -18213,12 +18214,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry>。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11697 +#: book.translate.xml:11704 msgid "<primary>XML</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11699 +#: book.translate.xml:11706 msgid "" "This file must be in XML format. Pay careful attention to case, and make " "sure all tags are properly closed. The file begins with the usual XML header " @@ -18230,7 +18231,7 @@ msgstr "" "fontconfig></literal> 標籤:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11705 +#: book.translate.xml:11712 #, no-wrap msgid "" "<?xml version=\"1.0\"?>\n" @@ -18239,7 +18240,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11709 +#: book.translate.xml:11716 msgid "" "As previously stated, all fonts in <filename>/usr/local/share/fonts/</" "filename> as well as <filename>~/.fonts/</filename> are already made " @@ -18253,26 +18254,26 @@ msgstr "" "local/etc/fonts/local.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11717 +#: book.translate.xml:11724 #, no-wrap msgid "<dir>/path/to/my/fonts</dir>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11719 +#: book.translate.xml:11726 msgid "" "After adding new fonts, and especially new font directories, rebuild the " "font caches:" msgstr "加入新字型及額外的新字型目錄之後,需重新建立字型快取:" #. (itstool) path: sect2/screen -#: book.translate.xml:11723 +#: book.translate.xml:11730 #, no-wrap msgid "<prompt>#</prompt> <userinput>fc-cache -f</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11725 +#: book.translate.xml:11732 msgid "" "Anti-aliasing makes borders slightly fuzzy, which makes very small text more " "readable and removes <quote>staircases</quote> from large text, but can " @@ -18284,7 +18285,7 @@ msgstr "" "的字型大小使用反鋸齒效果,可加入這些行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11732 +#: book.translate.xml:11739 #, no-wrap msgid "" " <match target=\"font\">\n" @@ -18306,12 +18307,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11749 +#: book.translate.xml:11756 msgid "<primary>fonts</primary> <secondary>spacing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11754 +#: book.translate.xml:11761 msgid "" "Spacing for some monospaced fonts might also be inappropriate with anti-" "aliasing. This seems to be an issue with <application>KDE</application>, in " @@ -18323,7 +18324,7 @@ msgstr "" "入以下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11760 +#: book.translate.xml:11767 #, no-wrap msgid "" "\t<match target=\"pattern\" name=\"family\">\n" @@ -18345,7 +18346,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11777 +#: book.translate.xml:11784 msgid "" "(this aliases the other common names for fixed fonts as <literal>\"mono\"</" "literal>), and then add:" @@ -18353,7 +18354,7 @@ msgstr "" "(這會設定等寬字型的其他常用名稱為 <literal>\"mono\"</literal>),然後加入:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11780 +#: book.translate.xml:11787 #, no-wrap msgid "" " <match target=\"pattern\" name=\"family\">\n" @@ -18367,7 +18368,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11789 +#: book.translate.xml:11796 msgid "" "Certain fonts, such as Helvetica, may have a problem when anti-aliased. " "Usually this manifests itself as a font that seems cut in half vertically. " @@ -18379,7 +18380,7 @@ msgstr "" "<filename>local.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11795 +#: book.translate.xml:11802 #, no-wrap msgid "" " <match target=\"pattern\" name=\"family\">\n" @@ -18393,7 +18394,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11804 +#: book.translate.xml:11811 msgid "" "After editing <filename>local.conf</filename>, make certain to end the file " "with the <literal></fontconfig></literal> tag. Not doing this will " @@ -18403,25 +18404,27 @@ msgstr "" "fontconfig></literal> 標籤結尾,若沒有使用會讓所做的更改被忽略。" #. (itstool) path: sect2/para -#: book.translate.xml:11809 +#: book.translate.xml:11816 msgid "" "Users can add personalized settings by creating their own <filename>~/." "config/fontconfig/fonts.conf</filename>. This file uses the same " "<acronym>XML</acronym> format described above." msgstr "" +"使用者可透過建立自己的 <filename>~/.config/fontconfig/fonts.conf</filename> " +"來加入個人化的設定,此檔案使用與上述說明相同的 <acronym>XML</acronym> 格式。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11814 +#: book.translate.xml:11821 msgid "<primary>LCD screen</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:11815 +#: book.translate.xml:11822 msgid "<primary>Fonts</primary> <secondary>LCD screen</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11818 +#: book.translate.xml:11825 msgid "" "One last point: with an LCD screen, sub-pixel sampling may be desired. This " "basically treats the (horizontally separated) red, green and blue components " @@ -18435,7 +18438,7 @@ msgstr "" "處:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:11825 +#: book.translate.xml:11832 #, no-wrap msgid "" "\t <match target=\"font\">\n" @@ -18449,7 +18452,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:11835 +#: book.translate.xml:11842 msgid "" "Depending on the sort of display, <literal>rgb</literal> may need to be " "changed to <literal>bgr</literal>, <literal>vrgb</literal> or <literal>vbgr</" @@ -18460,24 +18463,24 @@ msgstr "" "看那一個效果最好。" #. (itstool) path: info/title -#: book.translate.xml:11846 +#: book.translate.xml:11853 msgid "The X Display Manager" msgstr "X 顯示管理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:11849 +#: book.translate.xml:11856 msgid "" "<personname> <firstname>Seth</firstname> <surname>Kingsley</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:11859 +#: book.translate.xml:11866 msgid "<primary>X Display Manager</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:11860 +#: book.translate.xml:11867 msgid "" "<application>Xorg</application> provides an X Display Manager, " "<application>XDM</application>, which can be used for login session " @@ -18491,7 +18494,7 @@ msgstr "" "(登入與密碼)。" #. (itstool) path: sect1/para -#: book.translate.xml:11867 +#: book.translate.xml:11874 msgid "" "This section demonstrates how to configure the X Display Manager on FreeBSD. " "Some desktop environments provide their own graphical login manager. Refer " @@ -18505,12 +18508,12 @@ msgstr "" "> 取得如何設定 KDE 顯示管理程式 (KDE Display Manager) 的操作方式。" #. (itstool) path: sect2/title -#: book.translate.xml:11874 +#: book.translate.xml:11881 msgid "Configuring <application>XDM</application>" msgstr "設定 <application>XDM</application>" #. (itstool) path: sect2/para -#: book.translate.xml:11876 +#: book.translate.xml:11883 msgid "" "To install <application>XDM</application>, use the <package>x11/xdm</" "package> package or port. Once installed, <application>XDM</application> can " @@ -18522,13 +18525,13 @@ msgstr "" "需編輯 <filename>/etc/ttys</filename> 中的此項目:" #. (itstool) path: sect2/screen -#: book.translate.xml:11882 +#: book.translate.xml:11889 #, no-wrap msgid "ttyv8 \"/usr/local/bin/xdm -nodaemon\" xterm off secure" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:11884 +#: book.translate.xml:11891 msgid "" "Change the <literal>off</literal> to <literal>on</literal> and save the " "edit. The <literal>ttyv8</literal> in this entry indicates that " @@ -18539,7 +18542,7 @@ msgstr "" "第 9 個虛擬終端機執行。" #. (itstool) path: sect2/para -#: book.translate.xml:11889 +#: book.translate.xml:11896 msgid "" "The <application>XDM</application> configuration directory is located in " "<filename>/usr/local/lib/X11/xdm</filename>. This directory contains several " @@ -18560,22 +18563,22 @@ msgstr "" "citerefentry> 有說明。" #. (itstool) path: table/title -#: book.translate.xml:11899 +#: book.translate.xml:11906 msgid "XDM Configuration Files" msgstr "XDM 設定檔" #. (itstool) path: row/entry -#: book.translate.xml:11904 book.translate.xml:55570 +#: book.translate.xml:11911 book.translate.xml:55191 msgid "File" msgstr "檔案" #. (itstool) path: row/entry -#: book.translate.xml:11911 +#: book.translate.xml:11918 msgid "<filename>Xaccess</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11912 +#: book.translate.xml:11919 msgid "" "The protocol for connecting to <application>XDM</application> is called the " "X Display Manager Connection Protocol (<acronym>XDMCP</acronym>) This file " @@ -18589,12 +18592,12 @@ msgstr "" "預設此檔案並不允許任何遠端的客戶端連線。" #. (itstool) path: row/entry -#: book.translate.xml:11922 +#: book.translate.xml:11929 msgid "<filename>Xresources</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11923 +#: book.translate.xml:11930 msgid "" "This file controls the look and feel of the <application>XDM</application> " "display chooser and login screens. The default configuration is a simple " @@ -18609,24 +18612,24 @@ msgstr "" "<application>Xorg</application> 說明文件中說明的 app-defaults 檔相同。" #. (itstool) path: row/entry -#: book.translate.xml:11936 +#: book.translate.xml:11943 msgid "<filename>Xservers</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11937 +#: book.translate.xml:11944 msgid "" "The list of local and remote displays the chooser should provide as login " "choices." msgstr "登入選擇時在選擇器上要提供的本地及遠端顯示清單。" #. (itstool) path: row/entry -#: book.translate.xml:11942 +#: book.translate.xml:11949 msgid "<filename>Xsession</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11943 +#: book.translate.xml:11950 msgid "" "Default session script for logins which is run by <application>XDM</" "application> after a user has logged in. Normally each user will have a " @@ -18638,12 +18641,12 @@ msgstr "" "來覆蓋此 Script 的設定。" #. (itstool) path: row/entry -#: book.translate.xml:11951 +#: book.translate.xml:11958 msgid "<filename>Xsetup_</filename>*" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11952 +#: book.translate.xml:11959 msgid "" "Script to automatically launch applications before displaying the chooser or " "login interfaces. There is a script for each display being used, named " @@ -18657,22 +18660,22 @@ msgstr "" "<command>xconsole</command>。" #. (itstool) path: row/entry -#: book.translate.xml:11963 +#: book.translate.xml:11970 msgid "<filename>xdm-config</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11964 +#: book.translate.xml:11971 msgid "Global configuration for all displays running on this machine." msgstr "用來設定所有在此機器上執行的顯示的全域設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:11969 +#: book.translate.xml:11976 msgid "<filename>xdm-errors</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11970 +#: book.translate.xml:11977 msgid "" "Contains errors generated by the server program. If a display that " "<application>XDM</application> is trying to start hangs, look at this file " @@ -18684,23 +18687,23 @@ msgstr "" "寫入至使用者的 <filename>~/.xsession-errors</filename>。" #. (itstool) path: row/entry -#: book.translate.xml:11979 +#: book.translate.xml:11986 msgid "<filename>xdm-pid</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:11980 +#: book.translate.xml:11987 msgid "" "The running process <acronym>ID</acronym> of <application>XDM</application>." msgstr "<application>XDM</application> 的執行程序 <acronym>ID</acronym>。" #. (itstool) path: sect2/title -#: book.translate.xml:11989 +#: book.translate.xml:11996 msgid "Configuring Remote Access" msgstr "設定遠端存取" #. (itstool) path: sect2/para -#: book.translate.xml:11991 +#: book.translate.xml:11998 msgid "" "By default, only users on the same system can login using <application>XDM</" "application>. To enable users on other systems to connect to the display " @@ -18710,7 +18713,7 @@ msgstr "" "其他系統的使用者可連線到顯示伺服器,需編輯存取控制規則及開啟連線傾聽程式。" #. (itstool) path: sect2/para -#: book.translate.xml:11996 +#: book.translate.xml:12003 msgid "" "To configure <application>XDM</application> to listen for any remote " "connection, comment out the <literal>DisplayManager.requestPort</literal> " @@ -18722,7 +18725,7 @@ msgstr "" "requestPort</literal> 行前加上 <literal>!</literal> 來註解該行:" #. (itstool) path: sect2/screen -#: book.translate.xml:12002 +#: book.translate.xml:12009 #, no-wrap msgid "" "! SECURITY: do not listen for XDMCP or Chooser requests\n" @@ -18731,7 +18734,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12006 +#: book.translate.xml:12013 msgid "" "Save the edits and restart <application>XDM</application>. To restrict " "remote access, look at the example entries in <filename>/usr/local/lib/X11/" @@ -18745,19 +18748,19 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 取得進一步資訊。" #. (itstool) path: info/title -#: book.translate.xml:12015 +#: book.translate.xml:12022 msgid "Desktop Environments" msgstr "桌面環境" #. (itstool) path: authorgroup/author -#: book.translate.xml:12018 +#: book.translate.xml:12025 msgid "" "<personname> <firstname>Valentino</firstname> <surname>Vaschetto</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12029 +#: book.translate.xml:12036 msgid "" "This section describes how to install three popular desktop environments on " "a FreeBSD system. A desktop environment can range from a simple window " @@ -18770,12 +18773,12 @@ msgstr "" "<filename>x11-wm</filename> 分類取得。" #. (itstool) path: sect2/title -#: book.translate.xml:12037 +#: book.translate.xml:12044 msgid "GNOME" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12040 +#: book.translate.xml:12047 msgid "" "<application>GNOME</application> is a user-friendly desktop environment. It " "includes a panel for starting applications and displaying status, a desktop, " @@ -18795,18 +18798,18 @@ msgstr "" "裝、設定和管理 <application>GNOME</application> 的額外文件。" #. (itstool) path: sect2/para -#: book.translate.xml:12051 +#: book.translate.xml:12058 msgid "This desktop environment can be installed from a package:" msgstr "這套桌面環境可以從套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:12054 +#: book.translate.xml:12061 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnome3</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12056 +#: book.translate.xml:12063 msgid "" "To instead build <application>GNOME</application> from ports, use the " "following command. <application>GNOME</application> is a large application " @@ -18817,7 +18820,7 @@ msgstr "" "上,也會需要花費一些時間編譯。" #. (itstool) path: sect2/screen -#: book.translate.xml:12062 +#: book.translate.xml:12069 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11/gnome3</userinput>\n" @@ -18825,7 +18828,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12065 +#: book.translate.xml:12072 msgid "" "<application>GNOME</application> requires <filename>/proc</filename> to be " "mounted. Add this line to <filename>/etc/fstab</filename> to mount this file " @@ -18835,13 +18838,13 @@ msgstr "" "行到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12070 book.translate.xml:12161 +#: book.translate.xml:12077 book.translate.xml:12168 #, no-wrap msgid "proc /proc procfs rw 0 0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12072 +#: book.translate.xml:12079 msgid "" "<application>GNOME</application> uses <application>D-Bus</application> and " "<application>HAL</application> for a message bus and hardware abstraction. " @@ -18855,7 +18858,7 @@ msgstr "" "要在 <filename>/etc/rc.conf</filename> 開啟,這樣在系統開機時才會啟動:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12080 book.translate.xml:12171 +#: book.translate.xml:12087 book.translate.xml:12178 #, no-wrap msgid "" "dbus_enable=\"YES\"\n" @@ -18863,7 +18866,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12083 +#: book.translate.xml:12090 msgid "" "After installation, configure <application>Xorg</application> to start " "<application>GNOME</application>. The easiest way to do this is to enable " @@ -18878,13 +18881,13 @@ msgstr "" "conf</filename> 來開啟:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12092 +#: book.translate.xml:12099 #, no-wrap msgid "gdm_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12094 +#: book.translate.xml:12101 msgid "" "It is often desirable to also start all <application>GNOME</application> " "services. To achieve this, add a second line to <filename>/etc/rc.conf</" @@ -18894,20 +18897,20 @@ msgstr "" "<filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12098 +#: book.translate.xml:12105 #, no-wrap msgid "gnome_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12100 +#: book.translate.xml:12107 msgid "" "<application>GDM</application> will start automatically when the system " "boots." msgstr "<application>GDM</application> 則會在系統開機時自動啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:12103 +#: book.translate.xml:12110 msgid "" "A second method for starting <application>GNOME</application> is to type " "<command>startx</command> from the command-line after configuring " @@ -18922,13 +18925,13 @@ msgstr "" "gnome-session</filename>。若檔案不存在,則使用以下指令建立一個:" #. (itstool) path: sect2/screen -#: book.translate.xml:12112 +#: book.translate.xml:12119 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \"exec /usr/local/bin/gnome-session\" > ~/.xinitrc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12114 +#: book.translate.xml:12121 msgid "" "A third method is to use <application>XDM</application> as the display " "manager. In this case, create an executable <filename>~/.xsession</filename>:" @@ -18937,7 +18940,7 @@ msgstr "" "需要建立一個可執行的 <filename>~/.xsession</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12118 +#: book.translate.xml:12125 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>echo \"#!/bin/sh\" > ~/.xsession</userinput>\n" @@ -18946,12 +18949,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:12124 +#: book.translate.xml:12131 msgid "KDE" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12128 +#: book.translate.xml:12135 msgid "" "<application>KDE</application> is another easy-to-use desktop environment. " "This desktop provides a suite of applications with a consistent look and " @@ -18970,18 +18973,18 @@ msgstr "" "freebsd.kde.org</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:12137 +#: book.translate.xml:12144 msgid "To install the <application>KDE</application> package, type:" msgstr "要安裝 <application>KDE</application> 套件,請輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:12140 +#: book.translate.xml:12147 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install x11/kde4</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12142 +#: book.translate.xml:12149 msgid "" "To instead build the <application>KDE</application> port, use the following " "command. Installing the port will provide a menu for selecting which " @@ -18993,7 +18996,7 @@ msgstr "" "一個大型的應用程式,即使在較快的電腦上仍需要花費一段時間來編譯。" #. (itstool) path: sect2/screen -#: book.translate.xml:12148 +#: book.translate.xml:12155 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11/kde4</userinput>\n" @@ -19001,12 +19004,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12151 +#: book.translate.xml:12158 msgid "<primary>KDE</primary> <secondary>display manager</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12156 +#: book.translate.xml:12163 msgid "" "<application>KDE</application> requires <filename>/proc</filename> to be " "mounted. Add this line to <filename>/etc/fstab</filename> to mount this file " @@ -19016,7 +19019,7 @@ msgstr "" "到 <filename>/etc/fstab</filename> 讓系統啟動時會自動掛載這個檔案系統:" #. (itstool) path: sect2/para -#: book.translate.xml:12163 +#: book.translate.xml:12170 msgid "" "<application>KDE</application> uses <application>D-Bus</application> and " "<application>HAL</application> for a message bus and hardware abstraction. " @@ -19030,7 +19033,7 @@ msgstr "" "<filename>/etc/rc.conf</filename> 開啟,這樣在系統開機時才會啟動:" #. (itstool) path: sect2/para -#: book.translate.xml:12174 +#: book.translate.xml:12181 msgid "" "The installation of <application>KDE</application> includes the KDE Display " "Manager, <application>KDM</application>. To enable this display manager, add " @@ -19041,13 +19044,13 @@ msgstr "" "<filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12180 +#: book.translate.xml:12187 #, no-wrap msgid "kdm4_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12182 +#: book.translate.xml:12189 msgid "" "A second method for launching <application>KDE</application> is to type " "<command>startx</command> from the command line. For this to work, the " @@ -19058,13 +19061,13 @@ msgstr "" "xinitrc</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12188 +#: book.translate.xml:12195 #, no-wrap msgid "exec /usr/local/bin/startkde" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12190 +#: book.translate.xml:12197 msgid "" "A third method for starting <application>KDE</application> is through " "<application>XDM</application>. To do so, create an executable <filename>~/." @@ -19075,7 +19078,7 @@ msgstr "" "filename> 如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:12195 +#: book.translate.xml:12202 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>echo \"#!/bin/sh\" > ~/.xsession</userinput>\n" @@ -19084,7 +19087,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12199 +#: book.translate.xml:12206 msgid "" "Once <application>KDE</application> is started, refer to its built-in help " "system for more information on how to use its various menus and applications." @@ -19093,12 +19096,12 @@ msgstr "" "如何使用各種選單及應用程式的資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:12205 +#: book.translate.xml:12212 msgid "Xfce" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12207 +#: book.translate.xml:12214 msgid "" "<application>Xfce</application> is a desktop environment based on the GTK+ " "toolkit used by <application>GNOME</application>. However, it is more " @@ -19119,23 +19122,23 @@ msgstr "" "xfce.org</link> 取得。" #. (itstool) path: sect2/para -#: book.translate.xml:12218 +#: book.translate.xml:12225 msgid "To install the <application>Xfce</application> package:" msgstr "要安裝 <application>Xfce</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:12221 +#: book.translate.xml:12228 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xfce</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12223 +#: book.translate.xml:12230 msgid "Alternatively, to build the port:" msgstr "或者使用 Port 編譯:" #. (itstool) path: sect2/screen -#: book.translate.xml:12225 +#: book.translate.xml:12232 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/x11-wm/xfce4</userinput>\n" @@ -19143,7 +19146,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12228 +#: book.translate.xml:12235 msgid "" "Unlike <application>GNOME</application> or <application>KDE</application>, " "<application>Xfce</application> does not provide its own login manager. In " @@ -19157,13 +19160,13 @@ msgstr "" "先加入其項目到 <filename>~/.xinitrc</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12235 +#: book.translate.xml:12242 #, no-wrap msgid "<prompt>%</prompt> <userinput>echo \"exec /usr/local/bin/startxfce4 --with-ck-launch\" > ~/.xinitrc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12237 +#: book.translate.xml:12244 msgid "" "An alternate method is to use <application>XDM</application>. To configure " "this method, create an executable <filename>~/.xsession</filename>:" @@ -19172,7 +19175,7 @@ msgstr "" "行的 <filename>~/.xsession</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12241 +#: book.translate.xml:12248 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>echo \"#!/bin/sh\" > ~/.xsession</userinput>\n" @@ -19181,19 +19184,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:12248 +#: book.translate.xml:12255 msgid "Installing Compiz Fusion" msgstr "安裝 Compiz Fusion" #. (itstool) path: sect1/para -#: book.translate.xml:12250 +#: book.translate.xml:12257 msgid "" "One way to make using a desktop computer more pleasant is with nice 3D " "effects." msgstr "要令使用桌面電腦更令人愉快的方法是用炫麗的 3D 效果。" #. (itstool) path: sect1/para -#: book.translate.xml:12253 +#: book.translate.xml:12260 msgid "" "Installing the <application>Compiz Fusion</application> package is easy, but " "configuring it requires a few steps that are not described in the port's " @@ -19203,12 +19206,12 @@ msgstr "" "一些未在 Port 說明文件中說明的步驟。" #. (itstool) path: sect2/title -#: book.translate.xml:12258 +#: book.translate.xml:12265 msgid "Setting up the FreeBSD nVidia Driver" msgstr "設定 FreeBSD nVidia 驅動程式" #. (itstool) path: sect2/para -#: book.translate.xml:12260 +#: book.translate.xml:12267 msgid "" "Desktop effects can cause quite a load on the graphics card. For an nVidia-" "based graphics card, the proprietary driver is required for good " @@ -19220,7 +19223,7 @@ msgstr "" "<filename>xorg.conf</filename> 設定。" #. (itstool) path: sect2/para -#: book.translate.xml:12266 +#: book.translate.xml:12273 msgid "" "To determine which nVidia driver is needed see the <link xlink:href=" "\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/faq/x.html#idp59950544\">FAQ " @@ -19231,7 +19234,7 @@ msgstr "" "與此主題相關的問題</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:12269 +#: book.translate.xml:12276 msgid "" "Having determined the correct driver to use for your card, installation is " "as simple as installing any other package." @@ -19240,18 +19243,18 @@ msgstr "" "件一樣簡單。" #. (itstool) path: sect2/para -#: book.translate.xml:12273 +#: book.translate.xml:12280 msgid "For example, to install the latest driver:" msgstr "例如,要安裝最新的驅動程式:" #. (itstool) path: sect2/screen -#: book.translate.xml:12275 +#: book.translate.xml:12282 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install x11/nvidia-driver</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12277 +#: book.translate.xml:12284 msgid "" "The driver will create a kernel module, which needs to be loaded at system " "startup. Add the following line to <filename>/boot/loader.conf</filename>:" @@ -19260,13 +19263,13 @@ msgstr "" "loader.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12281 +#: book.translate.xml:12288 #, no-wrap msgid "nvidia_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12284 +#: book.translate.xml:12291 msgid "" "To immediately load the kernel module into the running kernel by issuing a " "command like <command>kldload nvidia</command>, however it has been noted " @@ -19280,7 +19283,7 @@ msgstr "" "要重新開機。" #. (itstool) path: sect2/para -#: book.translate.xml:12293 +#: book.translate.xml:12300 msgid "" "With the kernel module loaded, you normally only need to change a single " "line in <filename>xorg.conf</filename> to enable the proprietary driver:" @@ -19289,29 +19292,29 @@ msgstr "" "啟專用的驅動程式:" #. (itstool) path: sect2/para -#: book.translate.xml:12297 +#: book.translate.xml:12304 msgid "Find the following line in <filename>/etc/X11/xorg.conf</filename>:" msgstr "找到 <filename>/etc/X11/xorg.conf</filename> 中的下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12300 +#: book.translate.xml:12307 #, no-wrap msgid "Driver \"nv\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12302 +#: book.translate.xml:12309 msgid "and change it to:" msgstr "然後更改該行為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12304 +#: book.translate.xml:12311 #, no-wrap msgid "Driver \"nvidia\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12306 +#: book.translate.xml:12313 msgid "" "Start the GUI as usual, and you should be greeted by the nVidia splash. " "Everything should work as usual." @@ -19319,12 +19322,12 @@ msgstr "" "如往常般啟動 GUI,您應該會看到 nVidia 的啟動畫面,其他東西應如往常般運作。" #. (itstool) path: sect2/title -#: book.translate.xml:12311 +#: book.translate.xml:12318 msgid "Configuring xorg.conf for Desktop Effects" msgstr "設定 xorg.conf 來啟動桌面特效" #. (itstool) path: sect2/para -#: book.translate.xml:12313 +#: book.translate.xml:12320 msgid "" "To enable <application>Compiz Fusion</application>, <filename>/etc/X11/xorg." "conf</filename> needs to be modified:" @@ -19333,12 +19336,12 @@ msgstr "" "xorg.conf</filename>:" #. (itstool) path: sect2/para -#: book.translate.xml:12317 +#: book.translate.xml:12324 msgid "Add the following section to enable composite effects:" msgstr "加入以下 Section 來開啟合成特效:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12320 +#: book.translate.xml:12327 #, no-wrap msgid "" "Section \"Extensions\"\n" @@ -19347,14 +19350,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12324 +#: book.translate.xml:12331 msgid "" "Locate the <quote>Screen</quote> section which should look similar to the " "one below:" msgstr "找到 <quote>Screen</quote> section,長的應該如下所示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12327 +#: book.translate.xml:12334 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -19365,12 +19368,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12333 +#: book.translate.xml:12340 msgid "and add the following two lines (after <quote>Monitor</quote> will do):" msgstr "然後加入以下兩行 (在<quote>Monitor</quote> 之後):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12336 +#: book.translate.xml:12343 #, no-wrap msgid "" "DefaultDepth 24\n" @@ -19378,7 +19381,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12339 +#: book.translate.xml:12346 msgid "" "Locate the <quote>Subsection</quote> that refers to the screen resolution " "that you wish to use. For example, if you wish to use 1280x1024, locate the " @@ -19390,7 +19393,7 @@ msgstr "" "中,您可以手動加入對應的項目:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12345 +#: book.translate.xml:12352 #, no-wrap msgid "" "SubSection \"Display\"\n" @@ -19400,14 +19403,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12350 +#: book.translate.xml:12357 msgid "" "A color depth of 24 bits is needed for desktop composition, change the above " "subsection to:" msgstr "桌面合成需要 24 bit 的色彩深度,更改上述 Subsection 為:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12353 +#: book.translate.xml:12360 #, no-wrap msgid "" "SubSection \"Display\"\n" @@ -19418,7 +19421,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12359 +#: book.translate.xml:12366 msgid "" "Finally, confirm that the <quote>glx</quote> and <quote>extmod</quote> " "modules are loaded in the <quote>Module</quote> section:" @@ -19427,7 +19430,7 @@ msgstr "" "<quote>extmod</quote> 模組:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12363 +#: book.translate.xml:12370 #, no-wrap msgid "" "Section \"Module\"\n" @@ -19437,7 +19440,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12368 +#: book.translate.xml:12375 msgid "" "The preceding can be done automatically with <package>x11/nvidia-xconfig</" "package> by running (as root):" @@ -19446,7 +19449,7 @@ msgstr "" "用 root):" #. (itstool) path: sect2/screen -#: book.translate.xml:12372 +#: book.translate.xml:12379 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>nvidia-xconfig --add-argb-glx-visuals</userinput>\n" @@ -19455,12 +19458,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:12378 +#: book.translate.xml:12385 msgid "Installing and Configuring Compiz Fusion" msgstr "安裝與設定 Compiz Fusion" #. (itstool) path: sect2/para -#: book.translate.xml:12380 +#: book.translate.xml:12387 msgid "" "Installing <application>Compiz Fusion</application> is as simple as any " "other package:" @@ -19468,13 +19471,13 @@ msgstr "" "安裝 <application>Compiz Fusion</application> 如同安裝其他套件一樣簡單:" #. (itstool) path: sect2/screen -#: book.translate.xml:12383 +#: book.translate.xml:12390 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install x11-wm/compiz-fusion</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12385 +#: book.translate.xml:12392 msgid "" "When the installation is finished, start your graphic desktop and at a " "terminal, enter the following commands (as a normal user):" @@ -19483,7 +19486,7 @@ msgstr "" "用者):" #. (itstool) path: sect2/screen -#: book.translate.xml:12389 +#: book.translate.xml:12396 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>compiz --replace --sm-disable --ignore-desktop-hints ccp &</userinput>\n" @@ -19491,7 +19494,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12392 +#: book.translate.xml:12399 msgid "" "Your screen will flicker for a few seconds, as your window manager (e.g. " "<application>Metacity</application> if you are using <application>GNOME</" @@ -19505,7 +19508,7 @@ msgstr "" "理視窗的裝飾 (例如:關閉、最小化、最大化按鈕、標題列及其他相關)。" #. (itstool) path: sect2/para -#: book.translate.xml:12400 +#: book.translate.xml:12407 msgid "" "You may convert this to a trivial script and have it run at startup " "automatically (e.g. by adding to <quote>Sessions</quote> in a " @@ -19515,7 +19518,7 @@ msgstr "" "<application>GNOME</application> 桌面的 <quote>Sessions</quote> 中):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12405 +#: book.translate.xml:12412 #, no-wrap msgid "" "#! /bin/sh\n" @@ -19524,7 +19527,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12409 +#: book.translate.xml:12416 msgid "" "Save this in your home directory as, for example, <filename>start-compiz</" "filename> and make it executable:" @@ -19533,13 +19536,13 @@ msgstr "" "filename>,然後讓該檔案可以執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:12413 +#: book.translate.xml:12420 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod +x ~/start-compiz</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12415 +#: book.translate.xml:12422 msgid "" "Then use the GUI to add it to <guimenuitem>Startup Programs</guimenuitem> " "(located in <guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</" @@ -19552,7 +19555,7 @@ msgstr "" "guimenuitem>, 工作階段 <guimenuitem>Sessions</guimenuitem>)。" #. (itstool) path: sect2/para -#: book.translate.xml:12422 +#: book.translate.xml:12429 msgid "" "To actually select all the desired effects and their settings, execute " "(again as a normal user) the <application>Compiz Config Settings Manager</" @@ -19562,13 +19565,13 @@ msgstr "" "定管理程式 <application>Compiz Config Settings Manager</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:12426 +#: book.translate.xml:12433 #, no-wrap msgid "<prompt>%</prompt> <userinput>ccsm</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12429 +#: book.translate.xml:12436 msgid "" "In <application>GNOME</application>, this can also be found in the " "<guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</guimenuitem> " @@ -19578,7 +19581,7 @@ msgstr "" "guimenuitem>, 偏好設定 <guimenuitem>Preferences</guimenuitem> 選單中找到。" #. (itstool) path: sect2/para -#: book.translate.xml:12434 +#: book.translate.xml:12441 msgid "" "If you have selected <quote>gconf support</quote> during the build, you will " "also be able to view these settings using <command>gconf-editor</command> " @@ -19588,7 +19591,7 @@ msgstr "" "editor</command> 在 <literal>apps/compiz</literal> 下查看設定。" #. (itstool) path: sect1/para -#: book.translate.xml:12445 +#: book.translate.xml:12452 msgid "" "If the mouse does not work, you will need to first configure it before " "proceeding. In recent <application>Xorg</application> versions, the " @@ -19604,13 +19607,13 @@ msgstr "" "section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12454 +#: book.translate.xml:12461 #, no-wrap msgid "Option \"AutoAddDevices\" \"false\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12456 +#: book.translate.xml:12463 msgid "" "Input devices may then be configured as in previous versions, along with any " "other options needed (e.g., keyboard layout switching)." @@ -19618,7 +19621,7 @@ msgstr "" "輸入裝置便可如先前版本一樣設定,連同其他所需的選項 (如:切換鍵盤配置)。" #. (itstool) path: note/para -#: book.translate.xml:12461 +#: book.translate.xml:12468 msgid "" "As previously explained the <application>hald</application> daemon will, by " "default, automatically detect your keyboard. There are chances that your " @@ -19639,7 +19642,7 @@ msgstr "" "協助來直接設定鍵盤屬性。" #. (itstool) path: note/para -#: book.translate.xml:12473 +#: book.translate.xml:12480 msgid "" "For example if, one wants to use a PC 102 keys keyboard coming with a french " "layout, we have to create a keyboard configuration file for " @@ -19653,7 +19656,7 @@ msgstr "" "fdi/policy</filename> 目錄。這個檔案中應要有以下幾行:" #. (itstool) path: note/programlisting -#: book.translate.xml:12481 +#: book.translate.xml:12488 #, no-wrap msgid "" "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n" @@ -19668,14 +19671,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12491 +#: book.translate.xml:12498 msgid "" "If this file already exists, just copy and add to your file the lines " "regarding the keyboard configuration." msgstr "若這個檔案已經存在,只需要複製並貼上您的檔案中有關鍵盤設定的那幾行。" #. (itstool) path: note/para -#: book.translate.xml:12494 +#: book.translate.xml:12501 msgid "" "You will have to reboot your machine to force <application>hald</" "application> to read this file." @@ -19683,20 +19686,20 @@ msgstr "" "您會需要重新啟動您的機器來讓 <application>hald</application> 讀取這個檔案。" #. (itstool) path: note/para -#: book.translate.xml:12497 +#: book.translate.xml:12504 msgid "" "It is possible to do the same configuration from an X terminal or a script " "with this command line:" msgstr "也是可以從 X 終端機或 Script 下指令來做同樣的設定:" #. (itstool) path: note/screen -#: book.translate.xml:12500 +#: book.translate.xml:12507 #, no-wrap msgid "<prompt>%</prompt> <userinput>setxkbmap -model pc102 -layout fr</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:12502 +#: book.translate.xml:12509 msgid "" "<filename>/usr/local/share/X11/xkb/rules/base.lst</filename> lists the " "various keyboard, layouts and options available." @@ -19705,12 +19708,12 @@ msgstr "" "的鍵盤、配置與設定。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12507 +#: book.translate.xml:12514 msgid "<primary><application>Xorg</application> tuning</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12510 +#: book.translate.xml:12517 msgid "" "The <filename>xorg.conf.new</filename> configuration file may now be tuned " "to taste. Open the file in a text editor such as <citerefentry vendor=\"ports" @@ -19730,7 +19733,7 @@ msgstr "" "new</filename> 的 <literal>\"Monitor\"</literal> section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12518 +#: book.translate.xml:12525 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -19743,7 +19746,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12526 +#: book.translate.xml:12533 msgid "" "Most monitors support sync frequency autodetection, making manual entry of " "these values unnecessary. For the few monitors that do not support " @@ -19754,7 +19757,7 @@ msgstr "" "動偵測的顯示器,請輸入由製造商提供的數值來避免損壞顯示器。" #. (itstool) path: sect1/para -#: book.translate.xml:12532 +#: book.translate.xml:12539 msgid "" "X allows DPMS (Energy Star) features to be used with capable monitors. The " "<citerefentry vendor=\"xfree86\"><refentrytitle>xset</" @@ -19770,18 +19773,18 @@ msgstr "" "(Monitor) 的 Section:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12538 +#: book.translate.xml:12545 #, no-wrap msgid "Option \"DPMS\"" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12540 +#: book.translate.xml:12547 msgid "<primary><filename>xorg.conf</filename></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12544 +#: book.translate.xml:12551 msgid "" "While the <filename>xorg.conf.new</filename> configuration file is still " "open in an editor, select the default resolution and color depth desired. " @@ -19792,7 +19795,7 @@ msgstr "" "義:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:12549 +#: book.translate.xml:12556 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -19809,7 +19812,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12561 +#: book.translate.xml:12568 msgid "" "The <literal>DefaultDepth</literal> keyword describes the color depth to run " "at by default. This can be overridden with the <option>-depth</option> " @@ -19830,14 +19833,14 @@ msgstr "" "像素。" #. (itstool) path: sect1/para -#: book.translate.xml:12572 +#: book.translate.xml:12579 msgid "" "Finally, write the configuration file and test it using the test mode given " "above." msgstr "最後,儲存設定檔並使用測試模式來測試上述的設定。" #. (itstool) path: note/para -#: book.translate.xml:12576 +#: book.translate.xml:12583 msgid "" "One of the tools available to assist you during troubleshooting process are " "the <application>Xorg</application> log files, which contain information on " @@ -19854,7 +19857,7 @@ msgstr "" "<filename>Xorg.8.log</filename> 以此類推。" #. (itstool) path: sect1/para -#: book.translate.xml:12588 +#: book.translate.xml:12595 msgid "" "If all is well, the configuration file needs to be installed in a common " "location where <citerefentry vendor=\"xorg\"><refentrytitle>Xorg</" @@ -19868,13 +19871,13 @@ msgstr "" "filename> 或 <filename>/usr/local/etc/X11/xorg.conf</filename>。" #. (itstool) path: sect1/screen -#: book.translate.xml:12593 +#: book.translate.xml:12600 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp xorg.conf.new /etc/X11/xorg.conf</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12595 +#: book.translate.xml:12602 msgid "" "The <application>Xorg</application> configuration process is now complete. " "<application>Xorg</application> may be now started with the <citerefentry " @@ -19892,7 +19895,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來啟動。" #. (itstool) path: sect2/title -#: book.translate.xml:12602 +#: book.translate.xml:12609 msgid "" "Configuration with <trademark class=\"registered\">Intel</trademark> " "<literal>i810</literal> Graphics Chipsets" @@ -19901,12 +19904,12 @@ msgstr "" "literal> 繪圖晶片組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12605 +#: book.translate.xml:12612 msgid "<primary>Intel i810 graphic chipset</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12609 +#: book.translate.xml:12616 msgid "" "Configuration with <trademark class=\"registered\">Intel</trademark> i810 " "integrated chipsets requires the <filename>agpgart</filename> AGP " @@ -19921,7 +19924,7 @@ msgstr "" "更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:12615 +#: book.translate.xml:12622 msgid "" "This will allow configuration of the hardware as any other graphics board. " "Note on systems without the <citerefentry><refentrytitle>agp</" @@ -19939,17 +19942,17 @@ msgstr "" "conf</filename> 來載入。" #. (itstool) path: sect2/title -#: book.translate.xml:12624 +#: book.translate.xml:12631 msgid "Adding a Widescreen Flatpanel to the Mix" msgstr "加入寬螢幕平板顯示器到設定檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12626 +#: book.translate.xml:12633 msgid "<primary>widescreen flatpanel configuration</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12630 +#: book.translate.xml:12637 msgid "" "This section assumes a bit of advanced configuration knowledge. If attempts " "to use the standard configuration tools above have not resulted in a working " @@ -19961,7 +19964,7 @@ msgstr "" "輯器。" #. (itstool) path: sect2/para -#: book.translate.xml:12637 +#: book.translate.xml:12644 msgid "" "Current widescreen (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+, et.al.) formats " "support 16:10 and 10:9 formats or aspect ratios that can be problematic. " @@ -19971,32 +19974,32 @@ msgstr "" "及 10:9 格式或其他的寬高比可會有問題。例如一些 16:10 寬高比常見的螢幕解析度:" #. (itstool) path: listitem/para -#: book.translate.xml:12644 +#: book.translate.xml:12651 msgid "2560x1600" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12648 +#: book.translate.xml:12655 msgid "1920x1200" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12652 +#: book.translate.xml:12659 msgid "1680x1050" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12656 +#: book.translate.xml:12663 msgid "1440x900" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:12660 +#: book.translate.xml:12667 msgid "1280x800" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12664 +#: book.translate.xml:12671 msgid "" "At some point, it will be as easy as adding one of these resolutions as a " "possible <literal>Mode</literal> in the <literal>Section \"Screen\"</" @@ -20006,7 +20009,7 @@ msgstr "" "到 Section \"Screen\":" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12668 +#: book.translate.xml:12675 #, no-wrap msgid "" "Section \"Screen\"\n" @@ -20023,7 +20026,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12680 +#: book.translate.xml:12687 msgid "" "<application>Xorg</application> is smart enough to pull the resolution " "information from the widescreen via I2C/DDC information so it knows what the " @@ -20033,7 +20036,7 @@ msgstr "" "DDC),因此能夠知道螢幕能處理的頻率及解析度。" #. (itstool) path: sect2/para -#: book.translate.xml:12685 +#: book.translate.xml:12692 msgid "" "If those <literal>ModeLines</literal> do not exist in the drivers, one might " "need to give <application>Xorg</application> a little hint. Using <filename>/" @@ -20047,7 +20050,7 @@ msgstr "" "literal>。只需要在日誌檔中找到類似以下的訊息:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12693 +#: book.translate.xml:12700 #, no-wrap msgid "" "(II) MGA(0): Supported additional Video Mode:\n" @@ -20058,7 +20061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12699 +#: book.translate.xml:12706 msgid "" "This information is called EDID information. Creating a <literal>ModeLine</" "literal> from this is just a matter of putting the numbers in the correct " @@ -20068,13 +20071,13 @@ msgstr "" "將數據使用正確的順序放入:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12703 +#: book.translate.xml:12710 #, no-wrap msgid "ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12705 +#: book.translate.xml:12712 msgid "" "So that the <literal>ModeLine</literal> in <literal>Section \"Monitor\"</" "literal> for this example would look like this:" @@ -20083,7 +20086,7 @@ msgstr "" "<literal>ModeLine</literal> 會看起來像這樣:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:12709 +#: book.translate.xml:12716 #, no-wrap msgid "" "Section \"Monitor\"\n" @@ -20096,19 +20099,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12717 +#: book.translate.xml:12724 msgid "" "Now having completed these simple editing steps, X should start on your new " "widescreen monitor." msgstr "便完成編輯的步驟,接著需要在您的寬螢幕顯示器啟動 X。" #. (itstool) path: sect2/title -#: book.translate.xml:12722 +#: book.translate.xml:12729 msgid "Troubleshooting Compiz Fusion" msgstr "Compiz Fusion 疑難排解" #. (itstool) path: question/para -#: book.translate.xml:12727 +#: book.translate.xml:12734 msgid "" "I have installed <application>Compiz Fusion</application>, and after running " "the commands you mention, my windows are left without title bars and " @@ -20118,7 +20121,7 @@ msgstr "" "令後,我的視窗的標題列與按鈕便消失了。是那裡有問題?" #. (itstool) path: answer/para -#: book.translate.xml:12735 +#: book.translate.xml:12742 msgid "" "You are probably missing a setting in <filename>/etc/X11/xorg.conf</" "filename>. Review this file carefully and check especially the " @@ -20130,7 +20133,7 @@ msgstr "" "literal> 指令項。" #. (itstool) path: question/para -#: book.translate.xml:12746 +#: book.translate.xml:12753 msgid "" "When I run the command to start <application>Compiz Fusion</application>, " "the X server crashes and I am back at the console. What is wrong?" @@ -20139,7 +20142,7 @@ msgstr "" "了,然後我又返回 Console。是那裡有問題?" #. (itstool) path: answer/para -#: book.translate.xml:12753 +#: book.translate.xml:12760 msgid "" "If you check <filename>/var/log/Xorg.0.log</filename>, you will probably " "find error messages during the X startup. The most common would be:" @@ -20148,7 +20151,7 @@ msgstr "" "所發生的錯誤訊息。最常發生的錯誤會是:" #. (itstool) path: answer/screen -#: book.translate.xml:12758 +#: book.translate.xml:12765 #, no-wrap msgid "" "(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X\n" @@ -20159,7 +20162,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:12764 +#: book.translate.xml:12771 msgid "" "This is usually the case when you upgrade <application>Xorg</application>. " "You will need to reinstall the <package>x11/nvidia-driver</package> package " @@ -20169,12 +20172,12 @@ msgstr "" "安裝 <package>x11/nvidia-driver</package> 套件來重新編譯 glx。" #. (itstool) path: part/title -#: book.translate.xml:12778 +#: book.translate.xml:12785 msgid "Common Tasks" msgstr "一般作業" #. (itstool) path: partintro/para -#: book.translate.xml:12781 +#: book.translate.xml:12788 msgid "" "Now that the basics have been covered, this part of the book discusses some " "frequently used features of FreeBSD. These chapters:" @@ -20183,50 +20186,50 @@ msgstr "" "色,這些章節包括:" #. (itstool) path: listitem/para -#: book.translate.xml:12787 +#: book.translate.xml:12794 msgid "" "Introduce popular and useful desktop applications: browsers, productivity " "tools, document viewers, and more." msgstr "介紹給您常見且實用的桌面應用軟體:瀏覽器、辦工工具、文件閱覽程式等。" #. (itstool) path: listitem/para -#: book.translate.xml:12793 +#: book.translate.xml:12800 msgid "Introduce a number of multimedia tools available for FreeBSD." msgstr "介紹給您眾多 FreeBSD 上可用的多媒體工具。" #. (itstool) path: listitem/para -#: book.translate.xml:12798 +#: book.translate.xml:12805 msgid "" "Explain the process of building a customized FreeBSD kernel to enable extra " "functionality." msgstr "解釋如何編譯量身訂做的 FreeBSD 核心以增加額外系統功能的流程。" #. (itstool) path: listitem/para -#: book.translate.xml:12803 +#: book.translate.xml:12810 msgid "" "Describe the print system in detail, both for desktop and network-connected " "printer setups." msgstr "詳細描述列印系統,包含桌上型印表機及網路印表機的設定。" #. (itstool) path: listitem/para -#: book.translate.xml:12808 +#: book.translate.xml:12815 msgid "Show how to run Linux applications on the FreeBSD system." msgstr "展示給您看如何在您的 FreeBSD 系統中執行 Linux 應用軟體。" #. (itstool) path: partintro/para -#: book.translate.xml:12813 +#: book.translate.xml:12820 msgid "" "Some of these chapters recommend prior reading, and this is noted in the " "synopsis at the beginning of each chapter." msgstr "這些章節中有些需要您預先閱讀些相關文件,在各章節開頭的概要內會提及。" #. (itstool) path: chapter/title -#: book.translate.xml:12836 +#: book.translate.xml:12843 msgid "Desktop Applications" msgstr "桌面應用程式" #. (itstool) path: sect1/para -#: book.translate.xml:12841 +#: book.translate.xml:12848 msgid "" "While FreeBSD is popular as a server for its performance and stability, it " "is also suited for day-to-day use as a desktop. With over 24,000 " @@ -20242,34 +20245,34 @@ msgstr "" "含網頁瀏覽器、辦工軟體、文件閱覽程式以及財務軟體。" #. (itstool) path: note/para -#: book.translate.xml:12851 +#: book.translate.xml:12858 msgid "" "Users who prefer to install a pre-built desktop version of FreeBSD rather " "than configuring one from scratch should refer to the <link xlink:href=" -"\"http://www.pcbsd.org/\">pcbsd.org website.</link>" +"\"http://www.trueos.org/\">trueos.org website.</link>" msgstr "" -"比起重頭設定,更偏好安裝預先編譯好桌面環境的 FreeBSD 版本的使用者可參考 " -"<link xlink:href=\"http://www.pcbsd.org/\">pcbsd.org 網站</link>" +"比起重頭設定與編譯,較偏好使用 FreeBSD 桌面環境已預先編譯好版本的使用者可參" +"考 <link xlink:href=\"http://www.trueos.org/\">trueos.org 網站</link>。" #. (itstool) path: sect1/para -#: book.translate.xml:12858 +#: book.translate.xml:12865 msgid "Readers of this chapter should know how to:" msgstr "在閱讀這章之前,你必須了解如何:" #. (itstool) path: listitem/para -#: book.translate.xml:12862 +#: book.translate.xml:12869 msgid "" "Install additional software using packages or ports as described in <xref " "linkend=\"ports\"/>." msgstr "使用套件或 Port 安裝其他軟體如 <xref linkend=\"ports\"/> 所敘述。" #. (itstool) path: listitem/para -#: book.translate.xml:12867 +#: book.translate.xml:12874 msgid "Install X and a window manager as described in <xref linkend=\"x11\"/>." msgstr "安狀 X 與視窗管理程式如 <xref linkend=\"x11\"/> 所敘述。" #. (itstool) path: sect1/para -#: book.translate.xml:12872 +#: book.translate.xml:12879 msgid "" "For information on how to configure a multimedia environment, refer to <xref " "linkend=\"multimedia\"/>." @@ -20277,17 +20280,17 @@ msgstr "" "要取得有關如何設定多媒體環境的資訊,請參考 <xref linkend=\"multimedia\"/>。" #. (itstool) path: sect1/title -#: book.translate.xml:12877 +#: book.translate.xml:12884 msgid "Browsers" msgstr "瀏覽器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:12879 +#: book.translate.xml:12886 msgid "<primary>browsers</primary> <secondary>web</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:12884 +#: book.translate.xml:12891 msgid "" "FreeBSD does not come with a pre-installed web browser. Instead, the <link " "xlink:href=\"http://www.FreeBSD.org/ports/www.html\">www</link> category of " @@ -20299,7 +20302,7 @@ msgstr "" "可以採 Binary 套件安裝或自 Port 套件集編譯的方式安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:12890 +#: book.translate.xml:12897 msgid "" "The <application>KDE</application> and <application>GNOME</application> " "desktop environments include their own HTML browser. Refer to <xref linkend=" @@ -20310,7 +20313,7 @@ msgstr "" "何設定完整桌面環境的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:12896 +#: book.translate.xml:12903 msgid "" "Some lightweight browsers include <package>www/dillo2</package>, " "<package>www/links</package>, and <package>www/w3m</package>." @@ -20319,7 +20322,7 @@ msgstr "" "links</package> 以及 <package>www/w3m</package>。" #. (itstool) path: sect1/para -#: book.translate.xml:12900 +#: book.translate.xml:12907 msgid "" "This section demonstrates how to install the following popular web browsers " "and indicates if the application is resource-heavy, takes time to compile " @@ -20329,48 +20332,48 @@ msgstr "" "源、花費大量時間自 Port 編譯或何主要的相依套件。" #. (itstool) path: row/entry -#: book.translate.xml:12909 book.translate.xml:13275 book.translate.xml:13585 -#: book.translate.xml:13809 +#: book.translate.xml:12916 book.translate.xml:13282 book.translate.xml:13592 +#: book.translate.xml:13816 msgid "Application Name" msgstr "應用程式名稱" #. (itstool) path: row/entry -#: book.translate.xml:12910 book.translate.xml:13276 book.translate.xml:13586 -#: book.translate.xml:13810 +#: book.translate.xml:12917 book.translate.xml:13283 book.translate.xml:13593 +#: book.translate.xml:13817 msgid "Resources Needed" msgstr "所需資源" #. (itstool) path: row/entry -#: book.translate.xml:12911 book.translate.xml:13277 book.translate.xml:13587 -#: book.translate.xml:13811 +#: book.translate.xml:12918 book.translate.xml:13284 book.translate.xml:13594 +#: book.translate.xml:13818 msgid "Installation from Ports" msgstr "自 Port 安裝時間" #. (itstool) path: row/entry -#: book.translate.xml:12912 book.translate.xml:17238 book.translate.xml:65535 +#: book.translate.xml:12919 book.translate.xml:17245 book.translate.xml:65535 msgid "Notes" msgstr "說明" #. (itstool) path: row/entry -#: book.translate.xml:12918 +#: book.translate.xml:12925 msgid "<application>Firefox</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12919 book.translate.xml:12934 book.translate.xml:12942 +#: book.translate.xml:12926 book.translate.xml:12941 book.translate.xml:12949 msgid "medium" msgstr "中" #. (itstool) path: row/entry -#: book.translate.xml:12920 book.translate.xml:12935 book.translate.xml:12943 -#: book.translate.xml:13286 book.translate.xml:13301 book.translate.xml:13308 -#: book.translate.xml:13625 book.translate.xml:13820 book.translate.xml:13827 -#: book.translate.xml:13834 +#: book.translate.xml:12927 book.translate.xml:12942 book.translate.xml:12950 +#: book.translate.xml:13293 book.translate.xml:13308 book.translate.xml:13315 +#: book.translate.xml:13632 book.translate.xml:13827 book.translate.xml:13834 +#: book.translate.xml:13841 msgid "heavy" msgstr "多" #. (itstool) path: row/entry -#: book.translate.xml:12921 +#: book.translate.xml:12928 msgid "" "FreeBSD, <trademark class=\"registered\">Linux</trademark>, and localized " "versions are available" @@ -20378,59 +20381,59 @@ msgstr "" "有 FreeBSD 、 <trademark class=\"registered\">Linux</trademark> 及在地化版本" #. (itstool) path: row/entry -#: book.translate.xml:12926 +#: book.translate.xml:12933 msgid "<application>Opera</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12927 book.translate.xml:12928 book.translate.xml:13285 -#: book.translate.xml:13292 book.translate.xml:13293 book.translate.xml:13300 -#: book.translate.xml:13595 book.translate.xml:13596 book.translate.xml:13602 -#: book.translate.xml:13603 book.translate.xml:13609 book.translate.xml:13610 -#: book.translate.xml:13617 book.translate.xml:13618 book.translate.xml:13624 -#: book.translate.xml:13819 book.translate.xml:13826 book.translate.xml:13833 +#: book.translate.xml:12934 book.translate.xml:12935 book.translate.xml:13292 +#: book.translate.xml:13299 book.translate.xml:13300 book.translate.xml:13307 +#: book.translate.xml:13602 book.translate.xml:13603 book.translate.xml:13609 +#: book.translate.xml:13610 book.translate.xml:13616 book.translate.xml:13617 +#: book.translate.xml:13624 book.translate.xml:13625 book.translate.xml:13631 +#: book.translate.xml:13826 book.translate.xml:13833 book.translate.xml:13840 msgid "light" msgstr "少" #. (itstool) path: row/entry -#: book.translate.xml:12929 +#: book.translate.xml:12936 msgid "" "FreeBSD and <trademark class=\"registered\">Linux</trademark> versions are " "available" msgstr "有 FreeBSD 、 <trademark class=\"registered\">Linux</trademark> 版本" #. (itstool) path: row/entry -#: book.translate.xml:12933 +#: book.translate.xml:12940 msgid "<application>Konqueror</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12936 +#: book.translate.xml:12943 msgid "Requires <application>KDE</application> libraries" msgstr "需要 <application>KDE</application> 程式庫" #. (itstool) path: row/entry -#: book.translate.xml:12941 +#: book.translate.xml:12948 msgid "<application>Chromium</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:12944 +#: book.translate.xml:12951 msgid "Requires <application>Gtk+</application>" msgstr "需要 <application>Gtk+</application> 程式庫" #. (itstool) path: sect2/title -#: book.translate.xml:12951 +#: book.translate.xml:12958 msgid "Firefox" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:12953 +#: book.translate.xml:12960 msgid "<primary><application>Firefox</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12957 +#: book.translate.xml:12964 msgid "" "<application>Firefox</application> is an open source browser that is fully " "ported to FreeBSD. It features a standards-compliant HTML display engine, " @@ -20444,20 +20447,20 @@ msgstr "" "<application>Mozilla</application> 的程式庫。" #. (itstool) path: sect2/para -#: book.translate.xml:12964 +#: book.translate.xml:12971 msgid "" "To install the package of the latest release version of " "<application>Firefox</application>, type:" msgstr "要安裝最新釋出版本的 <application>Firefox</application> 套件可輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:12967 +#: book.translate.xml:12974 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install firefox</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12969 +#: book.translate.xml:12976 msgid "" "To instead install <application>Firefox</application> Extended Support " "Release (ESR) version, use:" @@ -20466,13 +20469,13 @@ msgstr "" "<application>Firefox</application>,可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:12972 +#: book.translate.xml:12979 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install firefox-esr</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:12974 +#: book.translate.xml:12981 msgid "" "Localized versions are available in <package>www/firefox-i18n</package> and " "<package>www/firefox-esr-i18n</package>." @@ -20481,7 +20484,7 @@ msgstr "" "esr-i18n</package> 取得。" #. (itstool) path: sect2/para -#: book.translate.xml:12978 +#: book.translate.xml:12985 msgid "" "The Ports Collection can instead be used to compile the desired version of " "<application>Firefox</application> from source code. This example builds " @@ -20493,7 +20496,7 @@ msgstr "" "<literal>firefox</literal> 可替換為 ESR 或在地化版本來安裝。" #. (itstool) path: sect2/screen -#: book.translate.xml:12985 +#: book.translate.xml:12992 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/firefox</userinput>\n" @@ -20501,12 +20504,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:12989 +#: book.translate.xml:12996 msgid "Firefox and <trademark>Java</trademark> Plugin" msgstr "Firefox 與 <trademark>Java</trademark> 附加元件" #. (itstool) path: sect3/para -#: book.translate.xml:12991 +#: book.translate.xml:12998 msgid "" "The installation of <application>Firefox</application> does not include " "<trademark>Java</trademark> support. However, <package>java/icedtea-web</" @@ -20518,18 +20521,18 @@ msgstr "" "頁瀏覽器附加元件來執行 Java applet,此附加元件可以用 Binary 套件安裝:" #. (itstool) path: sect3/screen -#: book.translate.xml:12997 +#: book.translate.xml:13004 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install icedtea-web</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:12999 +#: book.translate.xml:13006 msgid "Alternatively, to compile from the Ports Collection:" msgstr "或由 Port 套件集編譯:" #. (itstool) path: sect3/screen -#: book.translate.xml:13001 +#: book.translate.xml:13008 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/java/icedtea-web</userinput>\n" @@ -20537,12 +20540,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:13004 +#: book.translate.xml:13011 msgid "Keep the default configuration options when compiling the port." msgstr "編譯 Port 時使用預設設定選項。" #. (itstool) path: sect3/para -#: book.translate.xml:13007 +#: book.translate.xml:13014 msgid "" "Once installed, start <application>firefox</application>, enter " "<literal>about:plugins</literal> in the location bar and press " @@ -20556,14 +20559,14 @@ msgstr "" "application> 附加元件應該會列在其中。" #. (itstool) path: sect3/para -#: book.translate.xml:13014 +#: book.translate.xml:13021 msgid "" "If the browser is unable to find the plugin, each user will have to run the " "following command and relaunch the browser:" msgstr "若瀏覽器無法找到附加元件,每位使用者則須執行以下指令並重新執行瀏覽器:" #. (itstool) path: sect3/screen -#: book.translate.xml:13018 +#: book.translate.xml:13025 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ln -s /usr/local/lib/IcedTeaPlugin.so \\\n" @@ -20571,7 +20574,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:13024 +#: book.translate.xml:13031 msgid "" "Firefox and <trademark class=\"registered\">Adobe</trademark> <trademark " "class=\"registered\">Flash</trademark> Plugin" @@ -20580,12 +20583,12 @@ msgstr "" "class=\"registered\">Flash</trademark> 附加元件" #. (itstool) path: sect3/indexterm -#: book.translate.xml:13026 +#: book.translate.xml:13033 msgid "<primary>Flash</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:13030 +#: book.translate.xml:13037 msgid "" "A native <trademark class=\"registered\">Adobe</trademark> <trademark class=" "\"registered\">Flash</trademark> plugin is not available for FreeBSD. " @@ -20601,12 +20604,12 @@ msgstr "" "\"registered\">RealPlayer</trademark>。" #. (itstool) path: sect3/para -#: book.translate.xml:13035 +#: book.translate.xml:13042 msgid "To install and enable this plugin, perform these steps:" msgstr "要安裝並開啟此附加元件,可執行以下步驟:" #. (itstool) path: step/para -#: book.translate.xml:13040 +#: book.translate.xml:13047 msgid "" "Install <package role=\"port\">www/nspluginwrapper</package> from the port. " "Due to licensing restrictions, a package is not available. This port " @@ -20617,7 +20620,7 @@ msgstr "" "linux_base-c6</package>。" #. (itstool) path: step/para -#: book.translate.xml:13047 +#: book.translate.xml:13054 msgid "" "Install <package role=\"port\">www/linux-c6-flashplugin11</package> from the " "port. Due to licensing restrictions, a package is not available." @@ -20626,30 +20629,30 @@ msgstr "" "到授權條款的限制,該套件無 Binary 版本。" #. (itstool) path: step/para -#: book.translate.xml:13053 +#: book.translate.xml:13060 msgid "Before the plugin is first used, each user must run:" msgstr "第一次使用附加元件前,每位使用者需要先執行:" #. (itstool) path: step/screen -#: book.translate.xml:13056 +#: book.translate.xml:13063 #, no-wrap msgid "<prompt>%</prompt> <userinput>nspluginwrapper -v -a -i</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:13058 +#: book.translate.xml:13065 msgid "" "When the plugin port has been updated and reinstalled, each user must run:" msgstr "當附加元件 Port 完成更新並且重新安裝後,每位使用者需要執行:" #. (itstool) path: step/screen -#: book.translate.xml:13061 +#: book.translate.xml:13068 #, no-wrap msgid "<prompt>%</prompt> <userinput>nspluginwrapper -v -a -u</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:13063 +#: book.translate.xml:13070 msgid "" "Start the browser, enter <literal>about:plugins</literal> in the location " "bar and press <keycap>Enter</keycap>. A list of all the currently available " @@ -20659,14 +20662,14 @@ msgstr "" "<keycap>Enter</keycap> 鍵,目前可用的附加元件清單中應會顯示該附加元件。" #. (itstool) path: sect3/title -#: book.translate.xml:13073 +#: book.translate.xml:13080 msgid "" "Firefox and Swfdec <trademark class=\"registered\">Flash</trademark> Plugin" msgstr "" "Firefox 與 Swfdec <trademark class=\"registered\">Flash</trademark> 附加元件" #. (itstool) path: sect3/para -#: book.translate.xml:13075 +#: book.translate.xml:13082 msgid "" "<application>Swfdec</application> is a decoder and renderer for <trademark " "class=\"registered\">Flash</trademark> animations. <application>Swfdec-" @@ -20680,25 +20683,25 @@ msgstr "" #. (itstool) path: sect3/para #. (itstool) path: sect2/para -#: book.translate.xml:13081 book.translate.xml:13406 +#: book.translate.xml:13088 book.translate.xml:13413 msgid "To install the package:" msgstr "要安裝套件可:" #. (itstool) path: sect3/screen -#: book.translate.xml:13083 +#: book.translate.xml:13090 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install swfdec-plugin</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:13085 +#: book.translate.xml:13092 msgid "" "If the package is not available, compile and install it from the Ports " "Collection:" msgstr "若無套件可用,可自 Port 套件集編譯並安裝該附加元件:" #. (itstool) path: sect3/screen -#: book.translate.xml:13088 +#: book.translate.xml:13095 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/swfdec-plugin</userinput>\n" @@ -20706,22 +20709,22 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:13091 +#: book.translate.xml:13098 msgid "Restart the browser to activate this plugin." msgstr "重新啟動瀏覽器來啟動此附加元件。" #. (itstool) path: sect2/title -#: book.translate.xml:13096 +#: book.translate.xml:13103 msgid "Opera" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13098 +#: book.translate.xml:13105 msgid "<primary><application>Opera</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13102 +#: book.translate.xml:13109 msgid "" "<application>Opera</application> is a full-featured and standards-compliant " "browser which is still lightweight and fast. It comes with a built-in mail " @@ -20735,7 +20738,7 @@ msgstr "" "\">Linux</trademark> 模擬模式下執行的版本。" #. (itstool) path: sect2/para -#: book.translate.xml:13109 +#: book.translate.xml:13116 msgid "" "This command installs the package of the FreeBSD version of " "<application>Opera</application>. Replace <literal>opera</literal> with " @@ -20747,20 +20750,20 @@ msgstr "" "\"registered\">Linux</trademark> 版本。" #. (itstool) path: sect2/screen -#: book.translate.xml:13114 +#: book.translate.xml:13121 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install opera</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13116 +#: book.translate.xml:13123 msgid "" "Alternately, install either version through the Ports Collection. This " "example compiles the native version:" msgstr "或者,可安裝 Port 套件集中的版本,以下範例會編譯原生的版本。" #. (itstool) path: sect2/screen -#: book.translate.xml:13119 +#: book.translate.xml:13126 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/opera</userinput>\n" @@ -20768,7 +20771,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13122 +#: book.translate.xml:13129 msgid "" "To install the <trademark class=\"registered\">Linux</trademark> version, " "substitute <literal>linux-opera</literal> in place of <literal>opera</" @@ -20778,7 +20781,7 @@ msgstr "" "<literal>opera</literal> 為 <literal>linux-opera</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:13126 +#: book.translate.xml:13133 msgid "" "To install <trademark class=\"registered\">Adobe</trademark> <trademark " "class=\"registered\">Flash</trademark> plugin support, first compile the " @@ -20794,7 +20797,7 @@ msgstr "" "package>。以下範例示範編譯 Port 中的這兩個應用程式。" #. (itstool) path: sect2/screen -#: book.translate.xml:13132 +#: book.translate.xml:13139 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/linux-c6-flashplugin11</userinput>\n" @@ -20804,7 +20807,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13137 +#: book.translate.xml:13144 msgid "" "Once installed, check the presence of the plugin by starting the browser, " "entering <literal>opera:plugins</literal> in the location bar and pressing " @@ -20816,7 +20819,7 @@ msgstr "" "附加元件。" #. (itstool) path: sect2/para -#: book.translate.xml:13143 +#: book.translate.xml:13150 msgid "" "To add the <application><trademark>Java</trademark></application> plugin, " "follow the instructions in <xref linkend=\"moz-java-plugin\"/>." @@ -20825,17 +20828,17 @@ msgstr "" "照 <xref linkend=\"moz-java-plugin\"/> 中的指示。" #. (itstool) path: sect2/title -#: book.translate.xml:13148 +#: book.translate.xml:13155 msgid "Konqueror" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13150 +#: book.translate.xml:13157 msgid "<primary><application>Konqueror</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13154 +#: book.translate.xml:13161 msgid "" "<application>Konqueror</application> is more than a web browser as it is " "also a file manager and a multimedia viewer. It is included in the " @@ -20846,7 +20849,7 @@ msgstr "" "中。" #. (itstool) path: sect2/para -#: book.translate.xml:13159 +#: book.translate.xml:13166 msgid "" "<application>Konqueror</application> supports WebKit as well as its own " "KHTML. WebKit is a rendering engine used by many modern browsers including " @@ -20860,18 +20863,18 @@ msgstr "" "kwebkitpart</package> 套件或 Port。此範例示範使用 Binary 套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13166 +#: book.translate.xml:13173 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install kwebkitpart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13168 +#: book.translate.xml:13175 msgid "To install from the Ports Colloction:" msgstr "由 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13170 +#: book.translate.xml:13177 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/kwebkitpart</userinput>\n" @@ -20879,7 +20882,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13173 +#: book.translate.xml:13180 msgid "" "To enable WebKit within <application>Konqueror</application>, click " "<quote>Settings</quote>, <quote>Configure Konqueror</quote>. In the " @@ -20893,7 +20896,7 @@ msgstr "" "quote> 旁的下拉示選單並變更 <quote>KHTML</quote> 為 <quote>WebKit</quote>。" #. (itstool) path: sect2/para -#: book.translate.xml:13181 +#: book.translate.xml:13188 msgid "" "<application>Konqueror</application> also supports <application><trademark " "class=\"registered\">Flash</trademark></application>. A <quote>How To</" @@ -20910,17 +20913,17 @@ msgstr "" "howtos/konqueror-flash.php</uri>。" #. (itstool) path: sect2/title -#: book.translate.xml:13188 +#: book.translate.xml:13195 msgid "Chromium" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13190 +#: book.translate.xml:13197 msgid "<primary><application>Chromium</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13194 +#: book.translate.xml:13201 msgid "" "<application>Chromium</application> is an open source browser project that " "aims to build a safer, faster, and more stable web browsing experience. " @@ -20933,26 +20936,26 @@ msgstr "" "application> 的功能有頁籤式瀏覽、彈出視窗封鎖、擴充套件等等。" #. (itstool) path: sect2/para -#: book.translate.xml:13202 +#: book.translate.xml:13209 msgid "" "<application>Chromium</application> can be installed as a package by typing:" msgstr "<application>Chromium</application> 可以使用套件來安裝,只要輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:13205 +#: book.translate.xml:13212 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install chromium</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13207 +#: book.translate.xml:13214 msgid "" "Alternatively, <application>Chromium</application> can be compiled from " "source using the Ports Collection:" msgstr "或者可從 Port 套件集的原始碼編譯 <application>Chromium</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13210 +#: book.translate.xml:13217 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/www/chromium</userinput>\n" @@ -20960,7 +20963,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13214 +#: book.translate.xml:13221 msgid "" "The executable for <application>Chromium</application> is <filename>/usr/" "local/bin/chrome</filename>, not <filename>/usr/local/bin/chromium</" @@ -20970,12 +20973,12 @@ msgstr "" "chrome</filename>,並非 <filename>/usr/local/bin/chromium</filename>。" #. (itstool) path: sect3/title -#: book.translate.xml:13220 +#: book.translate.xml:13227 msgid "Chromium and <trademark>Java</trademark> Plugin" msgstr "Chromium 與 <trademark>Java</trademark> 附加元件" #. (itstool) path: sect3/para -#: book.translate.xml:13222 +#: book.translate.xml:13229 msgid "" "The installation of <application>Chromium</application> does not include " "<trademark>Java</trademark> support. To install <trademark>Java</trademark> " @@ -20987,7 +20990,7 @@ msgstr "" "<xref linkend=\"moz-java-plugin\"/> 的指示操作。" #. (itstool) path: sect3/para -#: book.translate.xml:13227 +#: book.translate.xml:13234 msgid "" "Once <trademark>Java</trademark> support is installed, start " "<application>Chromium</application> and enter <literal>about:plugins</" @@ -20999,7 +21002,7 @@ msgstr "" "元件其中之一應該會有 IcedTea-Web。" #. (itstool) path: sect3/para -#: book.translate.xml:13233 +#: book.translate.xml:13240 msgid "" "If <application>Chromium</application> does not display the IcedTea-Web " "plugin, run the following commands and restart the web browser:" @@ -21008,7 +21011,7 @@ msgstr "" "以下指令然後重新啟動網頁瀏覽器:" #. (itstool) path: sect3/screen -#: book.translate.xml:13237 +#: book.translate.xml:13244 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir -p /usr/local/share/chromium/plugins\n" @@ -21017,7 +21020,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:13243 +#: book.translate.xml:13250 msgid "" "Chromium and <trademark class=\"registered\">Adobe</trademark> <trademark " "class=\"registered\">Flash</trademark> Plugin" @@ -21026,7 +21029,7 @@ msgstr "" "class=\"registered\">Flash</trademark> 附加元件" #. (itstool) path: sect3/para -#: book.translate.xml:13245 +#: book.translate.xml:13252 msgid "" "Configuring <application>Chromium</application> and <trademark class=" "\"registered\">Adobe</trademark> <trademark class=\"registered\">Flash</" @@ -21041,12 +21044,12 @@ msgstr "" "<application>Chromium</application> 能夠使用部份來自其他瀏覽器的附加元件。" #. (itstool) path: sect1/title -#: book.translate.xml:13256 +#: book.translate.xml:13263 msgid "Productivity" msgstr "辦工工具" #. (itstool) path: sect1/para -#: book.translate.xml:13258 +#: book.translate.xml:13265 msgid "" "When it comes to productivity, new users often look for an office suite or " "an easy-to-use word processor. While some <link linkend=\"x11-wm\">desktop " @@ -21062,7 +21065,7 @@ msgstr "" "型化文件處理程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13266 +#: book.translate.xml:13273 msgid "" "This section demonstrates how to install the following popular productivity " "software and indicates if the application is resource-heavy, takes time to " @@ -21072,52 +21075,52 @@ msgstr "" "譯的時間或者是否有其他主要相依套件。" #. (itstool) path: row/entry -#: book.translate.xml:13278 book.translate.xml:13588 book.translate.xml:13812 +#: book.translate.xml:13285 book.translate.xml:13595 book.translate.xml:13819 msgid "Major Dependencies" msgstr "主要相依套件" #. (itstool) path: row/entry -#: book.translate.xml:13284 +#: book.translate.xml:13291 msgid "<application>Calligra</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13287 book.translate.xml:13626 book.translate.xml:13835 +#: book.translate.xml:13294 book.translate.xml:13633 book.translate.xml:13842 msgid "<application>KDE</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13291 +#: book.translate.xml:13298 msgid "<application>AbiWord</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13294 book.translate.xml:13611 +#: book.translate.xml:13301 book.translate.xml:13618 msgid "<application>Gtk+</application> or <application>GNOME</application>" msgstr "<application>Gtk+</application> 或 <application>GNOME</application>" #. (itstool) path: row/entry -#: book.translate.xml:13299 +#: book.translate.xml:13306 msgid "<application>The Gimp</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13302 book.translate.xml:13619 +#: book.translate.xml:13309 book.translate.xml:13626 msgid "<application>Gtk+</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13306 +#: book.translate.xml:13313 msgid "<application>Apache OpenOffice</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13309 book.translate.xml:13317 +#: book.translate.xml:13316 book.translate.xml:13324 msgid "huge" msgstr "非常多" #. (itstool) path: row/entry -#: book.translate.xml:13310 +#: book.translate.xml:13317 msgid "" "<application><trademark>JDK</trademark></application> and " "<application>Mozilla</application>" @@ -21126,17 +21129,17 @@ msgstr "" "<application>Mozilla</application>" #. (itstool) path: row/entry -#: book.translate.xml:13315 +#: book.translate.xml:13322 msgid "<application>LibreOffice</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13316 +#: book.translate.xml:13323 msgid "somewhat heavy" msgstr "有點多" #. (itstool) path: row/entry -#: book.translate.xml:13318 +#: book.translate.xml:13325 msgid "" "<application>Gtk+</application>, or <application>KDE</application>/ " "<application>GNOME</application>, or <application><trademark>JDK</" @@ -21147,24 +21150,24 @@ msgstr "" "application>" #. (itstool) path: sect2/title -#: book.translate.xml:13328 +#: book.translate.xml:13335 msgid "Calligra" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13330 +#: book.translate.xml:13337 msgid "<primary><application>Calligra</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13333 +#: book.translate.xml:13340 msgid "" "<primary>office suite</primary> <secondary><application>Calligra</" "application></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13338 +#: book.translate.xml:13345 msgid "" "The KDE desktop environment includes an office suite which can be installed " "separately from <application>KDE</application>. <application>Calligra</" @@ -21181,7 +21184,7 @@ msgstr "" "<application>Karbon</application> 用來繪製圖型文件。" #. (itstool) path: sect2/para -#: book.translate.xml:13349 +#: book.translate.xml:13356 msgid "" "In FreeBSD, <package>editors/calligra</package> can be installed as a " "package or a port. To install the package:" @@ -21190,18 +21193,18 @@ msgstr "" "安裝,要使用套件安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13353 +#: book.translate.xml:13360 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install calligra</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13355 +#: book.translate.xml:13362 msgid "If the package is not available, use the Ports Collection instead:" msgstr "若沒有可用的套件,可改使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13358 +#: book.translate.xml:13365 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/calligra</userinput>\n" @@ -21209,17 +21212,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13363 +#: book.translate.xml:13370 msgid "AbiWord" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13365 +#: book.translate.xml:13372 msgid "<primary><application>AbiWord</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13369 +#: book.translate.xml:13376 msgid "" "<application>AbiWord</application> is a free word processing program similar " "in look and feel to <application><trademark class=\"registered\">Microsoft</" @@ -21231,7 +21234,7 @@ msgstr "" "application>。 它非常快速,包含了許多功能而且非常容易上手。" #. (itstool) path: sect2/para -#: book.translate.xml:13374 +#: book.translate.xml:13381 msgid "" "<application>AbiWord</application> can import or export many file formats, " "including some proprietary ones like <trademark class=\"registered" @@ -21242,26 +21245,26 @@ msgstr "" "<filename>.rtf</filename> 格式。" #. (itstool) path: sect2/para -#: book.translate.xml:13378 +#: book.translate.xml:13385 msgid "To install the <application>AbiWord</application> package:" msgstr "" "要安裝 <application>AbiWord</application> Binary 套件,可使用下列指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:13381 +#: book.translate.xml:13388 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install abiword</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13383 +#: book.translate.xml:13390 msgid "" "If the package is not available, it can be compiled from the Ports " "Collection:" msgstr "若沒有 Binary 套件版本,也可以從 Port 套件集中編譯安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13386 +#: book.translate.xml:13393 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/abiword</userinput>\n" @@ -21269,17 +21272,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13391 +#: book.translate.xml:13398 msgid "The GIMP" msgstr "The GIMP" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13393 +#: book.translate.xml:13400 msgid "<primary><application>The GIMP</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13397 +#: book.translate.xml:13404 msgid "" "For image authoring or picture retouching, <application>The GIMP</" "application> provides a sophisticated image manipulation program. It can be " @@ -21294,18 +21297,18 @@ msgstr "" "可以讀寫許多檔案格式。 它也支援掃描器和手寫板。" #. (itstool) path: sect2/screen -#: book.translate.xml:13408 +#: book.translate.xml:13415 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gimp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13410 +#: book.translate.xml:13417 msgid "Alternately, use the Ports Collection:" msgstr "或使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13412 +#: book.translate.xml:13419 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/gimp</userinput>\n" @@ -21313,7 +21316,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13415 +#: book.translate.xml:13422 msgid "" "The graphics category (<link xlink:href=\"http://www.FreeBSD.org/ports/" "graphics.html\">freebsd.org/ports/graphics.html</link>) of the Ports " @@ -21325,24 +21328,24 @@ msgstr "" "<application>GIMP</application> 相關的附加元件,說明檔及使用手冊。" #. (itstool) path: sect2/title -#: book.translate.xml:13423 +#: book.translate.xml:13430 msgid "Apache OpenOffice" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13425 +#: book.translate.xml:13432 msgid "<primary> <application>Apache OpenOffice</application> </primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13430 +#: book.translate.xml:13437 msgid "" "<primary>office suite</primary> <secondary> <application>Apache OpenOffice</" "application> </secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13437 +#: book.translate.xml:13444 msgid "" "<application>Apache OpenOffice</application> is an open source office suite " "which is developed under the wing of the Apache Software Foundation's " @@ -21360,7 +21363,7 @@ msgstr "" "同語言的使用者介面、拼字檢查和字典。" #. (itstool) path: sect2/para -#: book.translate.xml:13448 +#: book.translate.xml:13455 msgid "" "The word processor of <application>Apache OpenOffice</application> uses a " "native XML file format for increased portability and flexibility. The " @@ -21388,18 +21391,18 @@ msgstr "" "freebsd/</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:13459 +#: book.translate.xml:13466 msgid "To install the <application>Apache OpenOffice</application> package:" msgstr "要安裝 <application>Apache OpenOffice</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13462 +#: book.translate.xml:13469 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install apache-openoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13464 +#: book.translate.xml:13471 msgid "" "Once the package is installed, type the following command to launch " "<application>Apache OpenOffice</application>:" @@ -21408,13 +21411,13 @@ msgstr "" "OpenOffice</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13467 +#: book.translate.xml:13474 #, no-wrap msgid "<prompt>%</prompt> <userinput>openoffice-<replaceable>X.Y.Z</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13469 +#: book.translate.xml:13476 msgid "" "where <replaceable>X.Y.Z</replaceable> is the version number of the " "installed version of <application>Apache OpenOffice</application>. The first " @@ -21428,7 +21431,7 @@ msgstr "" "<filename>.openoffice.org</filename> 資料夾。" #. (itstool) path: sect2/para -#: book.translate.xml:13477 +#: book.translate.xml:13484 msgid "" "If the desired <application>Apache OpenOffice</application> package is not " "available, compiling the port is still an option. However, this requires a " @@ -21438,7 +21441,7 @@ msgstr "" "從 Port 編譯。 不過必須注意:編譯的過程會需要大量的磁碟空間與時間:" #. (itstool) path: sect2/screen -#: book.translate.xml:13482 +#: book.translate.xml:13489 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/openoffice-4</userinput>\n" @@ -21446,18 +21449,18 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13486 +#: book.translate.xml:13493 msgid "To build a localized version, replace the previous command with:" msgstr "如果想要編譯在地化的版本,將前面的指令替換成為:" #. (itstool) path: note/screen -#: book.translate.xml:13489 +#: book.translate.xml:13496 #, no-wrap msgid "<prompt>#</prompt> <userinput>make LOCALIZED_LANG=<replaceable>your_language</replaceable> install clean</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13491 +#: book.translate.xml:13498 msgid "" "Replace <replaceable>your_language</replaceable> with the correct language " "ISO-code. A list of supported language codes is available in <filename>files/" @@ -21468,24 +21471,24 @@ msgstr "" "錄。" #. (itstool) path: sect2/title -#: book.translate.xml:13501 +#: book.translate.xml:13508 msgid "LibreOffice" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13503 +#: book.translate.xml:13510 msgid "<primary><application>LibreOffice</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13506 +#: book.translate.xml:13513 msgid "" "<primary>office suite</primary> <secondary><application>LibreOffice</" "application></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13511 +#: book.translate.xml:13518 msgid "" "<application>LibreOffice</application> is a free software office suite " "developed by <link xlink:href=\"http://www.documentfoundation.org/" @@ -21507,7 +21510,7 @@ msgstr "" "到介面、拼字檢查程式與字典。" #. (itstool) path: sect2/para -#: book.translate.xml:13524 +#: book.translate.xml:13531 msgid "" "The word processor of <application>LibreOffice</application> uses a native " "XML file format for increased portability and flexibility. The spreadsheet " @@ -21529,20 +21532,20 @@ msgstr "" "到。" #. (itstool) path: sect2/para -#: book.translate.xml:13534 +#: book.translate.xml:13541 msgid "" "To install the English version of the <application>LibreOffice</application> " "package:" msgstr "要安裝英文版本的 <application>LibreOffice</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13537 +#: book.translate.xml:13544 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install libreoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13539 +#: book.translate.xml:13546 msgid "" "The editors category (<link xlink:href=\"http://www.FreeBSD.org/ports/" "editors.html\">freebsd.org/ports/editors.html</link>) of the Ports " @@ -21556,7 +21559,7 @@ msgstr "" "<literal>libreoffice</literal> 為在地化套件的名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:13545 +#: book.translate.xml:13552 msgid "" "Once the package is installed, type the following command to run " "<application>LibreOffice</application>:" @@ -21564,13 +21567,13 @@ msgstr "" "套件安裝之後,輸入以下指令來執行 <application>LibreOffice</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13548 +#: book.translate.xml:13555 #, no-wrap msgid "<prompt>%</prompt> <userinput>libreoffice</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13550 +#: book.translate.xml:13557 msgid "" "During the first launch, some questions will be asked and a <filename>." "libreoffice</filename> folder will be created in the user's home directory." @@ -21579,7 +21582,7 @@ msgstr "" "libreoffice</filename> 資料夾。" #. (itstool) path: sect2/para -#: book.translate.xml:13554 +#: book.translate.xml:13561 msgid "" "If the desired <application>LibreOffice</application> package is not " "available, compiling the port is still an option. However, this requires a " @@ -21590,7 +21593,7 @@ msgstr "" "譯,但這會要大量的磁碟空間及漫長的時間編譯。以下例子示範編譯英文版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:13560 +#: book.translate.xml:13567 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/editors/libreoffice</userinput>\n" @@ -21598,7 +21601,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:13564 +#: book.translate.xml:13571 msgid "" "To build a localized version, <command>cd</command> into the port directory " "of the desired language. Supported languages can be found in the editors " @@ -21610,12 +21613,12 @@ msgstr "" "ports/editors.html\">freebsd.org/ports/editors.html</link>) 中找到。" #. (itstool) path: sect1/title -#: book.translate.xml:13574 +#: book.translate.xml:13581 msgid "Document Viewers" msgstr "文件閱覽程式" #. (itstool) path: sect1/para -#: book.translate.xml:13576 +#: book.translate.xml:13583 msgid "" "Some new document formats have gained popularity since the advent of " "<trademark class=\"registered\">UNIX</trademark> and the viewers they " @@ -21627,58 +21630,58 @@ msgstr "" "以下文件檢視程式:" #. (itstool) path: row/entry -#: book.translate.xml:13594 +#: book.translate.xml:13601 msgid "<application>Xpdf</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13597 +#: book.translate.xml:13604 msgid "<application>FreeType</application>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: sect2/title -#: book.translate.xml:13601 book.translate.xml:13666 +#: book.translate.xml:13608 book.translate.xml:13673 msgid "<application>gv</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13604 +#: book.translate.xml:13611 msgid "<application>Xaw3d</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13608 +#: book.translate.xml:13615 msgid "<application>Geeqie</application>" msgstr "<application>Geeqie</application>" #. (itstool) path: row/entry -#: book.translate.xml:13616 +#: book.translate.xml:13623 msgid "<application>ePDFView</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13623 +#: book.translate.xml:13630 msgid "<application>Okular</application>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13633 +#: book.translate.xml:13640 msgid "Xpdf" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13635 +#: book.translate.xml:13642 msgid "<primary><application>Xpdf</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13638 book.translate.xml:13671 book.translate.xml:13737 +#: book.translate.xml:13645 book.translate.xml:13678 book.translate.xml:13744 msgid "<primary>PDF</primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13643 +#: book.translate.xml:13650 msgid "" "For users that prefer a small FreeBSD PDF viewer, <application>Xpdf</" "application> provides a light-weight and efficient viewer which requires few " @@ -21690,24 +21693,24 @@ msgstr "" "準的 X 字型且不需要額外的工具包(Toolkit)。" #. (itstool) path: sect2/para -#: book.translate.xml:13649 +#: book.translate.xml:13656 msgid "To install the <application>Xpdf</application> package:" msgstr "安裝 <application>Xpdf</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13652 +#: book.translate.xml:13659 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xpdf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13654 book.translate.xml:13724 book.translate.xml:13869 -#: book.translate.xml:13903 book.translate.xml:13936 +#: book.translate.xml:13661 book.translate.xml:13731 book.translate.xml:13876 +#: book.translate.xml:13910 book.translate.xml:13943 msgid "If the package is not available, use the Ports Collection:" msgstr "若沒有可用的套件版本,可使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13657 +#: book.translate.xml:13664 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/xpdf</userinput>\n" @@ -21715,24 +21718,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13660 +#: book.translate.xml:13667 msgid "" "Once the installation is complete, launch <command>xpdf</command> and use " "the right mouse button to activate the menu." msgstr "完成安裝後,執行 <command>xpdf</command> 並使用滑鼠右鍵開啟選單。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13668 +#: book.translate.xml:13675 msgid "<primary><application>gv</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13675 +#: book.translate.xml:13682 msgid "<primary>PostScript</primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13680 +#: book.translate.xml:13687 msgid "" "<application>gv</application> is a <trademark class=\"registered" "\">PostScript</trademark> and PDF viewer. It is based on " @@ -21750,23 +21753,23 @@ msgstr "" "可以從鍵盤或滑鼠來完成。" #. (itstool) path: sect2/para -#: book.translate.xml:13689 +#: book.translate.xml:13696 msgid "To install <application>gv</application> as a package:" msgstr "安裝 <application>gv</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13692 +#: book.translate.xml:13699 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13694 book.translate.xml:13756 book.translate.xml:13786 +#: book.translate.xml:13701 book.translate.xml:13763 book.translate.xml:13793 msgid "If a package is unavailable, use the Ports Collection:" msgstr "若沒有可用的套件版本,可使用 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:13697 +#: book.translate.xml:13704 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/print/gv</userinput>\n" @@ -21774,17 +21777,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13702 +#: book.translate.xml:13709 msgid "Geeqie" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13704 +#: book.translate.xml:13711 msgid "<primary><application>Geeqie</application></primary>" msgstr "<primary><application>Geeqie</application></primary>" #. (itstool) path: sect2/para -#: book.translate.xml:13708 +#: book.translate.xml:13715 msgid "" "<application>Geeqie</application> is a fork from the unmaintained " "<application>GQView</application> project, in an effort to move development " @@ -21803,18 +21806,18 @@ msgstr "" "用全螢幕閱覽以及國際化。" #. (itstool) path: sect2/para -#: book.translate.xml:13719 +#: book.translate.xml:13726 msgid "To install the <application>Geeqie</application> package:" msgstr "安裝 <application>Geeqie</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13722 +#: book.translate.xml:13729 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install geeqie</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13727 +#: book.translate.xml:13734 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/geeqie</userinput>\n" @@ -21822,17 +21825,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13732 +#: book.translate.xml:13739 msgid "ePDFView" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13734 +#: book.translate.xml:13741 msgid "<primary><application>ePDFView</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13742 +#: book.translate.xml:13749 msgid "" "<application>ePDFView</application> is a lightweight <acronym>PDF</acronym> " "document viewer that only uses the <application>Gtk+</application> and " @@ -21848,18 +21851,18 @@ msgstr "" "application> 來列印。" #. (itstool) path: sect2/para -#: book.translate.xml:13751 +#: book.translate.xml:13758 msgid "To install <application>ePDFView</application> as a package:" msgstr "要以套件安裝 <application>ePDFView</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13754 +#: book.translate.xml:13761 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install epdfview</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13759 +#: book.translate.xml:13766 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/epdfview</userinput>\n" @@ -21867,23 +21870,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13764 +#: book.translate.xml:13771 msgid "Okular" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13766 +#: book.translate.xml:13773 msgid "<primary><application>Okular</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13769 +#: book.translate.xml:13776 msgid "" "<primary><acronym>PDF</acronym></primary> <secondary>viewing</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13774 +#: book.translate.xml:13781 msgid "" "<application>Okular</application> is a universal document viewer based on " "<application>KPDF</application> for <application>KDE</application>. It can " @@ -21898,18 +21901,18 @@ msgstr "" "<acronym>XPS</acronym> 以及 ePub。" #. (itstool) path: sect2/para -#: book.translate.xml:13781 +#: book.translate.xml:13788 msgid "To install <application>Okular</application> as a package:" msgstr "要以套件安裝 <application>Okular</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13784 +#: book.translate.xml:13791 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install okular</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13789 +#: book.translate.xml:13796 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/okular</userinput>\n" @@ -21917,12 +21920,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:13795 +#: book.translate.xml:13802 msgid "Finance" msgstr "財務" #. (itstool) path: sect1/para -#: book.translate.xml:13797 +#: book.translate.xml:13804 msgid "" "For managing personal finances on a FreeBSD desktop, some powerful and easy-" "to-use applications can be installed. Some are compatible with widespread " @@ -21934,42 +21937,42 @@ msgstr "" "<application>Quicken</application> 或 <application>Excel</application> 文件。" #. (itstool) path: sect1/para -#: book.translate.xml:13803 +#: book.translate.xml:13810 msgid "This section covers these programs:" msgstr "這節涵蓋了下面這些軟體:" #. (itstool) path: row/entry -#: book.translate.xml:13818 +#: book.translate.xml:13825 msgid "<application>GnuCash</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13821 book.translate.xml:13828 +#: book.translate.xml:13828 book.translate.xml:13835 msgid "<application>GNOME</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13825 +#: book.translate.xml:13832 msgid "<application>Gnumeric</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:13832 +#: book.translate.xml:13839 msgid "<application>KMyMoney</application>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13842 +#: book.translate.xml:13849 msgid "GnuCash" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13844 +#: book.translate.xml:13851 msgid "<primary><application>GnuCash</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:13848 +#: book.translate.xml:13855 msgid "" "<application>GnuCash</application> is part of the <application>GNOME</" "application> effort to provide user-friendly, yet powerful, applications to " @@ -21983,7 +21986,7 @@ msgstr "" "蹤收入與花費、銀行帳戶以及股票證券等。 它的特性是介面直覺但功能仍非常專業。" #. (itstool) path: sect2/para -#: book.translate.xml:13856 +#: book.translate.xml:13863 msgid "" "<application>GnuCash</application> provides a smart register, a hierarchical " "system of accounts, and many keyboard accelerators and auto-completion " @@ -21998,18 +22001,18 @@ msgstr "" "application> QIF 檔案。 它也能處理大部分國際的日期及通用貨幣之格式。" #. (itstool) path: sect2/para -#: book.translate.xml:13864 +#: book.translate.xml:13871 msgid "To install the <application>GnuCash</application> package:" msgstr "安裝 <application>GnuCash</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13867 +#: book.translate.xml:13874 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnucash</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13872 +#: book.translate.xml:13879 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/finance/gnucash</userinput>\n" @@ -22017,17 +22020,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13877 +#: book.translate.xml:13884 msgid "Gnumeric" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13879 +#: book.translate.xml:13886 msgid "<primary><application>Gnumeric</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13882 +#: book.translate.xml:13889 msgid "" "<primary>spreadsheet</primary> <secondary><application>Gnumeric</" "application></secondary>" @@ -22036,7 +22039,7 @@ msgstr "" "secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:13887 +#: book.translate.xml:13894 msgid "" "<application>Gnumeric</application> is a spreadsheet program developed by " "the <application>GNOME</application> community. It features convenient " @@ -22055,18 +22058,18 @@ msgstr "" "儲存格格式,像是:數字、貨幣、日期、時間及其他格式等。" #. (itstool) path: sect2/para -#: book.translate.xml:13898 +#: book.translate.xml:13905 msgid "To install <application>Gnumeric</application> as a package:" msgstr "安裝 <application>Gnumeric</application> 套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:13901 +#: book.translate.xml:13908 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install gnumeric</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13906 +#: book.translate.xml:13913 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/math/gnumeric</userinput>\n" @@ -22074,17 +22077,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:13911 +#: book.translate.xml:13918 msgid "KMyMoney" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13913 +#: book.translate.xml:13920 msgid "<primary><application>KMyMoney</application></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:13915 +#: book.translate.xml:13922 msgid "" "<primary>spreadsheet</primary> <secondary><application>KMyMoney</" "application></secondary>" @@ -22093,7 +22096,7 @@ msgstr "" "secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:13920 +#: book.translate.xml:13927 msgid "" "<application>KMyMoney</application> is a personal finance application " "created by the <application>KDE</application> community. " @@ -22112,18 +22115,18 @@ msgstr "" "多種貨幣並提供財務報表。" #. (itstool) path: sect2/para -#: book.translate.xml:13931 +#: book.translate.xml:13938 msgid "To install <application>KMyMoney</application> as a package:" msgstr "要以套件安裝 <application>KMyMoney</application>:" #. (itstool) path: sect2/screen -#: book.translate.xml:13934 +#: book.translate.xml:13941 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install kmymoney-kde4</userinput>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:13939 +#: book.translate.xml:13946 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/finance/kmymoney-kde4</userinput>\n" @@ -22131,35 +22134,35 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:13954 +#: book.translate.xml:13961 msgid "Multimedia" msgstr "多媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:13957 +#: book.translate.xml:13964 msgid "" "<personname> <firstname>Ross</firstname> <surname>Lippert</surname> </" "personname> <contrib>Edited by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:13970 +#: book.translate.xml:13977 msgid "" "FreeBSD supports a wide variety of sound cards, allowing users to enjoy high " "fidelity output from a FreeBSD system. This includes the ability to record " -"and playback audio in the MPEG Audio Layer 3 (<acronym>MP3</acronym>), " +"and play back audio in the MPEG Audio Layer 3 (<acronym>MP3</acronym>), " "Waveform Audio File (<acronym>WAV</acronym>), Ogg Vorbis, and other formats. " "The FreeBSD Ports Collection contains many applications for editing recorded " "audio, adding sound effects, and controlling attached MIDI devices." msgstr "" -"FreeBSD 廣泛地支援各種音效卡, 讓您可以享受來自電腦上的高傳真音質(Hi-Fi), 此" -"外還包括了錄製和播放 MPEG Audio Layer 3 (<acronym>MP3</acronym>)、 Waveform " -"Audio File (<acronym>WAV</acronym>)、Ogg Vorbis 以及其他許多種格式聲音的能" -"力。同時 FreeBSD Port 套件集也包含了許多可讓您可以錄音、編修音效以及控制 " -"MIDI 配備的應用程式。" +"FreeBSD 廣泛地支援各種音效卡, 讓使用者可以享受來自電腦上的高傳真音質(Hi-" +"Fi), 此外還包括了錄製和播放 MPEG Audio Layer 3 (<acronym>MP3</acronym>)、 " +"Waveform Audio File (<acronym>WAV</acronym>)、Ogg Vorbis 以及其他許多種格式聲" +"音的能力。同時 FreeBSD Port 套件集也包含了許多可讓您可以錄音、編修音效以及控" +"制 MIDI 配備的應用程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13979 +#: book.translate.xml:13986 msgid "" "FreeBSD also supports the playback of video files and <acronym>DVD</" "acronym>s. The FreeBSD Ports Collection contains applications to encode, " @@ -22169,7 +22172,7 @@ msgstr "" "中含有可編碼、轉換以及播放格種影像媒體的應用程式。" #. (itstool) path: sect1/para -#: book.translate.xml:13984 +#: book.translate.xml:13991 msgid "" "This chapter describes how to configure sound cards, video playback, TV " "tuner cards, and scanners on FreeBSD. It also describes some of the " @@ -22179,32 +22182,32 @@ msgstr "" "有那些應用程式可以使用這些裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:13989 +#: book.translate.xml:13996 msgid "After reading this chapter, you will know how to:" msgstr "讀完這章,您將了解:" #. (itstool) path: listitem/para -#: book.translate.xml:13993 +#: book.translate.xml:14000 msgid "Configure a sound card on FreeBSD." msgstr "設定 FreeBSD 上的音效卡。" #. (itstool) path: listitem/para -#: book.translate.xml:13997 +#: book.translate.xml:14004 msgid "Troubleshoot the sound setup." msgstr "音效設定疑難排解。" #. (itstool) path: listitem/para -#: book.translate.xml:14001 +#: book.translate.xml:14008 msgid "Playback and encode MP3s and other audio." msgstr "播放、錄製 MP3 及其他聲音檔案格式。" #. (itstool) path: listitem/para -#: book.translate.xml:14005 +#: book.translate.xml:14012 msgid "Prepare a FreeBSD system for video playback." msgstr "FreeBSD 系統播放影像的準備工具。" #. (itstool) path: listitem/para -#: book.translate.xml:14009 +#: book.translate.xml:14016 msgid "" "Play <acronym>DVD</acronym>s, <filename>.mpg</filename>, and <filename>.avi</" "filename> files." @@ -22213,64 +22216,64 @@ msgstr "" "filename> 檔。" #. (itstool) path: listitem/para -#: book.translate.xml:14014 +#: book.translate.xml:14021 msgid "" "Rip <acronym>CD</acronym> and <acronym>DVD</acronym> content into files." msgstr "" "擷取(Rip) <acronym>CD</acronym> 和 <acronym>DVD</acronym>的內容至檔案。" #. (itstool) path: listitem/para -#: book.translate.xml:14019 +#: book.translate.xml:14026 msgid "Configure a TV card." msgstr "設定電視卡。" #. (itstool) path: listitem/para -#: book.translate.xml:14023 +#: book.translate.xml:14030 msgid "Install and setup MythTV on FreeBSD" msgstr "在 FreeBSD 安裝 MythTV 。" #. (itstool) path: listitem/para -#: book.translate.xml:14027 +#: book.translate.xml:14034 msgid "Configure an image scanner." msgstr "設定影像掃描機。" #. (itstool) path: listitem/para -#: book.translate.xml:14034 +#: book.translate.xml:14041 msgid "" "Know how to install applications as described in <xref linkend=\"ports\"/>." msgstr "知道如何安裝應用程式如 <xref linkend=\"ports\"/> 所敘述。" #. (itstool) path: info/title -#: book.translate.xml:14041 +#: book.translate.xml:14048 msgid "Setting Up the Sound Card" msgstr "設定音效卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:14044 +#: book.translate.xml:14051 msgid "" "<personname> <firstname>Moses</firstname> <surname>Moore</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:14054 +#: book.translate.xml:14061 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:14064 +#: book.translate.xml:14071 msgid "<primary>PCI</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:14065 +#: book.translate.xml:14072 msgid "<primary>sound cards</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14066 +#: book.translate.xml:14073 msgid "" "Before beginning the configuration, determine the model of the sound card " "and the chip it uses. FreeBSD supports a wide variety of sound cards. Check " @@ -22284,12 +22287,12 @@ msgstr "" "援以及如何在 FreeBSD 上驅動。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:14073 +#: book.translate.xml:14080 msgid "<primary>kernel</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14078 +#: book.translate.xml:14085 msgid "" "In order to use the sound device, its device driver must be loaded. The " "easiest way is to load a kernel module for the sound card with " @@ -22303,13 +22306,13 @@ msgstr "" "效晶片驅動程式。" #. (itstool) path: sect1/screen -#: book.translate.xml:14084 +#: book.translate.xml:14091 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload snd_hda</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14086 +#: book.translate.xml:14093 msgid "" "To automate the loading of this driver at boot time, add the driver to " "<filename>/boot/loader.conf</filename>. The line for this driver is:" @@ -22318,13 +22321,13 @@ msgstr "" "filename> 檔,以此驅動程式為例:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:14090 +#: book.translate.xml:14097 #, no-wrap msgid "snd_hda_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14092 +#: book.translate.xml:14099 msgid "" "Other available sound modules are listed in <filename>/boot/defaults/loader." "conf</filename>. When unsure which driver to use, load the " @@ -22335,13 +22338,13 @@ msgstr "" "filename> 模組:" #. (itstool) path: sect1/screen -#: book.translate.xml:14097 +#: book.translate.xml:14104 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload snd_driver</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14099 +#: book.translate.xml:14106 msgid "" "This is a metadriver which loads all of the most common sound drivers and " "can be used to speed up the search for the correct driver. It is also " @@ -22353,7 +22356,7 @@ msgstr "" "所有音效驅動程式。" #. (itstool) path: sect1/para -#: book.translate.xml:14105 +#: book.translate.xml:14112 msgid "" "To determine which driver was selected for the sound card after loading the " "<filename>snd_driver</filename> metadriver, type <command>cat /dev/sndstat</" @@ -22363,12 +22366,12 @@ msgstr "" "程式,請輸入 <command>cat /dev/sndstat</command>。" #. (itstool) path: sect2/title -#: book.translate.xml:14110 +#: book.translate.xml:14117 msgid "Configuring a Custom Kernel with Sound Support" msgstr "設定自訂核心支援音效" #. (itstool) path: sect2/para -#: book.translate.xml:14112 +#: book.translate.xml:14119 msgid "" "This section is for users who prefer to statically compile in support for " "the sound card in a custom kernel. For more information about recompiling a " @@ -22376,20 +22379,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14116 +#: book.translate.xml:14123 msgid "" "When using a custom kernel to provide sound support, make sure that the " "audio framework driver exists in the custom kernel configuration file:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14120 +#: book.translate.xml:14127 #, no-wrap msgid "device sound" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14122 +#: book.translate.xml:14129 msgid "" "Next, add support for the sound card. To continue the example of the built-" "in audio chipset based on the Intel specification from the previous section, " @@ -22397,20 +22400,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14127 +#: book.translate.xml:14134 #, no-wrap msgid "device snd_hda" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14129 +#: book.translate.xml:14136 msgid "" "Be sure to read the manual page of the driver for the device name to use for " "the driver." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14132 +#: book.translate.xml:14139 msgid "" "Non-PnP ISA sound cards may require the IRQ and I/O port settings of the " "card to be added to <filename>/boot/device.hints</filename>. During the boot " @@ -22425,7 +22428,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14142 +#: book.translate.xml:14149 #, no-wrap msgid "" "device snd_sbc\n" @@ -22433,7 +22436,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14145 +#: book.translate.xml:14152 msgid "" "If the card uses the <literal>0x220</literal> I/O port and IRQ <literal>5</" "literal>, these lines must also be added to <filename>/boot/device.hints</" @@ -22441,7 +22444,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14149 +#: book.translate.xml:14156 #, no-wrap msgid "" "hint.sbc.0.at=\"isa\"\n" @@ -22452,7 +22455,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14155 +#: book.translate.xml:14162 msgid "" "The syntax used in <filename>/boot/device.hints</filename> is described in " "<citerefentry><refentrytitle>sound</refentrytitle><manvolnum>4</manvolnum></" @@ -22460,7 +22463,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14159 +#: book.translate.xml:14166 msgid "" "The settings shown above are the defaults. In some cases, the IRQ or other " "settings may need to be changed to match the card. Refer to " @@ -22469,12 +22472,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14166 +#: book.translate.xml:14173 msgid "Testing Sound" msgstr "測試音效" #. (itstool) path: sect2/para -#: book.translate.xml:14168 +#: book.translate.xml:14175 msgid "" "After loading the required module or rebooting into the custom kernel, the " "sound card should be detected. To confirm, run <command>dmesg | grep pcm</" @@ -22483,7 +22486,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14173 +#: book.translate.xml:14180 #, no-wrap msgid "" "pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 5 on hdaa0\n" @@ -22492,12 +22495,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14177 +#: book.translate.xml:14184 msgid "The status of the sound card may also be checked using this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14180 +#: book.translate.xml:14187 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat /dev/sndstat</userinput>\n" @@ -22509,7 +22512,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14187 +#: book.translate.xml:14194 msgid "" "The output will vary depending upon the sound card. If no <filename>pcm</" "filename> devices are listed, double-check that the correct device driver " @@ -22518,7 +22521,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14193 +#: book.translate.xml:14200 msgid "" "If all goes well, the sound card should now work in FreeBSD. If the " "<acronym>CD</acronym> or <acronym>DVD</acronym> drive is properly connected " @@ -22528,13 +22531,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14199 +#: book.translate.xml:14206 #, no-wrap msgid "<prompt>%</prompt> <userinput>cdcontrol -f /dev/acd0 play 1</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:14202 +#: book.translate.xml:14209 msgid "" "Audio <acronym>CD</acronym>s have specialized encodings which means that " "they should not be mounted using <citerefentry><refentrytitle>mount</" @@ -22542,7 +22545,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14207 +#: book.translate.xml:14214 msgid "" "Various applications, such as <package>audio/workman</package>, provide a " "friendlier interface. The <package>audio/mpg123</package> port can be " @@ -22550,20 +22553,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14212 +#: book.translate.xml:14219 msgid "" "Another quick way to test the card is to send data to <filename>/dev/dsp</" "filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14215 +#: book.translate.xml:14222 #, no-wrap msgid "<prompt>%</prompt> <userinput>cat <replaceable>filename</replaceable> > /dev/dsp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14217 +#: book.translate.xml:14224 msgid "" "where <filename><replaceable>filename</replaceable></filename> can be any " "type of file. This command should produce some noise, confirming that the " @@ -22571,7 +22574,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14223 +#: book.translate.xml:14230 msgid "" "The <filename>/dev/dsp*</filename> device nodes will be created " "automatically as needed. When not in use, they do not exist and will not " @@ -22580,91 +22583,91 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14231 +#: book.translate.xml:14238 msgid "Troubleshooting Sound" msgstr "疑難排解音效" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14233 +#: book.translate.xml:14240 msgid "<primary>device nodes</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14234 +#: book.translate.xml:14241 msgid "<primary>I/O port</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14235 +#: book.translate.xml:14242 msgid "<primary>IRQ</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14236 +#: book.translate.xml:14243 msgid "<primary>DSP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14238 +#: book.translate.xml:14245 msgid "" "<xref linkend=\"multimedia-sound-common-error-messages\"/> lists some common " "error messages and their solutions:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:14242 +#: book.translate.xml:14249 msgid "Common Error Messages" msgstr "常見錯誤訊息" #. (itstool) path: row/entry -#: book.translate.xml:14247 +#: book.translate.xml:14254 msgid "Error" msgstr "錯誤" #. (itstool) path: row/entry -#: book.translate.xml:14248 +#: book.translate.xml:14255 msgid "Solution" msgstr "解決方式" #. (itstool) path: row/entry -#: book.translate.xml:14254 +#: book.translate.xml:14261 msgid "<errorname>sb_dspwr(XX) timed out</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14256 +#: book.translate.xml:14263 msgid "The I/O port is not set correctly." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:14261 +#: book.translate.xml:14268 msgid "<errorname>bad irq XX</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14262 +#: book.translate.xml:14269 msgid "" "The IRQ is set incorrectly. Make sure that the set IRQ and the sound IRQ are " "the same." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:14268 +#: book.translate.xml:14275 msgid "<errorname>xxx: gus pcm not attached, out of memory</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14270 +#: book.translate.xml:14277 msgid "There is not enough available memory to use the device." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:14275 +#: book.translate.xml:14282 msgid "<errorname>xxx: can't open /dev/dsp!</errorname>" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:14277 +#: book.translate.xml:14284 msgid "" "Type <command>fstat | grep dsp</command> to check if another application is " "holding the device open. Noteworthy troublemakers are <application>esound</" @@ -22672,7 +22675,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14288 +#: book.translate.xml:14295 msgid "" "Modern graphics cards often come with their own sound driver for use with " "<acronym>HDMI</acronym>. This sound device is sometimes enumerated before " @@ -22683,7 +22686,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14297 +#: book.translate.xml:14304 #, no-wrap msgid "" "...\n" @@ -22706,7 +22709,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14315 +#: book.translate.xml:14322 msgid "" "In this example, the graphics card (<literal>NVidia</literal>) has been " "enumerated before the sound card (<literal>Realtek ALC889</literal>). To use " @@ -22715,13 +22718,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14322 +#: book.translate.xml:14329 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14324 +#: book.translate.xml:14331 msgid "" "where <literal>n</literal> is the number of the sound device to use. In this " "example, it should be <literal>4</literal>. Make this change permanent by " @@ -22729,25 +22732,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14330 +#: book.translate.xml:14337 #, no-wrap msgid "hw.snd.default_unit=<replaceable>4</replaceable>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14335 +#: book.translate.xml:14342 msgid "Utilizing Multiple Sound Sources" msgstr "使用多個音效來源" #. (itstool) path: authorgroup/author -#: book.translate.xml:14338 +#: book.translate.xml:14345 msgid "" "<personname> <firstname>Munish</firstname> <surname>Chopra</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14348 +#: book.translate.xml:14355 msgid "" "It is often desirable to have multiple sources of sound that are able to " "play simultaneously. FreeBSD uses <quote>Virtual Sound Channels</quote> to " @@ -22755,7 +22758,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14353 +#: book.translate.xml:14360 msgid "" "Three <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> knobs are available for configuring virtual " @@ -22763,7 +22766,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14356 +#: book.translate.xml:14363 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>\n" @@ -22772,7 +22775,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14360 +#: book.translate.xml:14367 msgid "" "This example allocates four virtual channels, which is a practical number " "for everyday use. Both <varname>dev.pcm.0.play.vchans=4</varname> and " @@ -22787,7 +22790,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14373 +#: book.translate.xml:14380 msgid "" "The number of virtual channels for a device cannot be changed while it is in " "use. First, close any programs using the device, such as music players or " @@ -22795,26 +22798,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14378 +#: book.translate.xml:14385 msgid "" "The correct <filename>pcm</filename> device will automatically be allocated " "transparently to a program that requests <filename>/dev/dsp0</filename>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14385 +#: book.translate.xml:14392 msgid "Setting Default Values for Mixer Channels" msgstr "設定混音器頻道的預設值" #. (itstool) path: authorgroup/author -#: book.translate.xml:14388 +#: book.translate.xml:14395 msgid "" "<personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14398 +#: book.translate.xml:14405 msgid "" "The default values for the different mixer channels are hardcoded in the " "source code of the <citerefentry><refentrytitle>pcm</" @@ -22827,13 +22830,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:14407 +#: book.translate.xml:14414 #, no-wrap msgid "hint.pcm.0.vol=\"50\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14409 +#: book.translate.xml:14416 msgid "" "This will set the volume channel to a default value of <literal>50</literal> " "when the <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</" @@ -22841,19 +22844,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14417 +#: book.translate.xml:14424 msgid "MP3 Audio" msgstr "MP3 音樂" #. (itstool) path: authorgroup/author -#: book.translate.xml:14420 book.translate.xml:60186 +#: book.translate.xml:14427 book.translate.xml:59808 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14430 +#: book.translate.xml:14437 msgid "" "This section describes some <acronym>MP3</acronym> players available for " "FreeBSD, how to rip audio <acronym>CD</acronym> tracks, and how to encode " @@ -22861,12 +22864,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14436 +#: book.translate.xml:14443 msgid "MP3 Players" msgstr "MP3 播放器" #. (itstool) path: sect2/para -#: book.translate.xml:14438 +#: book.translate.xml:14445 msgid "" "A popular graphical <acronym>MP3</acronym> player is <application>XMMS</" "application>. It supports <application>Winamp</application> skins and " @@ -22878,7 +22881,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14448 +#: book.translate.xml:14455 msgid "" "The <package>audio/mpg123</package> package or port provides an alternative, " "command-line <acronym>MP3</acronym> player. Once installed, specify the " @@ -22887,7 +22890,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14454 +#: book.translate.xml:14461 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mpg123 <replaceable>-a /dev/dsp1.0 Foobar-GreatestHits.mp3</replaceable></userinput>\n" @@ -22900,19 +22903,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14462 +#: book.translate.xml:14469 msgid "" "Additional <acronym>MP3</acronym> players are available in the FreeBSD Ports " "Collection." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14467 +#: book.translate.xml:14474 msgid "Ripping <acronym>CD</acronym> Audio Tracks" msgstr "擷取 <acronym>CD</acronym> 音軌" #. (itstool) path: sect2/para -#: book.translate.xml:14469 +#: book.translate.xml:14476 msgid "" "Before encoding a <acronym>CD</acronym> or <acronym>CD</acronym> track to " "<acronym>MP3</acronym>, the audio data on the <acronym>CD</acronym> must be " @@ -22922,7 +22925,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14476 +#: book.translate.xml:14483 msgid "" "The <command>cdda2wav</command> tool, which is installed with the " "<package>sysutils/cdrtools</package> suite, can be used to rip audio " @@ -22930,7 +22933,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14481 +#: book.translate.xml:14488 msgid "" "With the audio <acronym>CD</acronym> in the drive, the following command can " "be issued as <systemitem class=\"username\">root</systemitem> to rip an " @@ -22939,13 +22942,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14487 +#: book.translate.xml:14494 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14489 +#: book.translate.xml:14496 msgid "" "In this example, the <option>-D <replaceable>0,1,0</replaceable></option> " "indicates the <acronym>SCSI</acronym> device <filename>0,1,0</filename> " @@ -22954,29 +22957,29 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14496 +#: book.translate.xml:14503 msgid "To rip individual tracks, use <option>-t</option> to specify the track:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14499 +#: book.translate.xml:14506 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14501 +#: book.translate.xml:14508 msgid "To rip a range of tracks, such as track one to seven, specify a range:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14504 +#: book.translate.xml:14511 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 1+7</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14506 +#: book.translate.xml:14513 msgid "" "To rip from an <acronym>ATAPI</acronym> (<acronym>IDE</acronym>) " "<acronym>CDROM</acronym> drive, specify the device name in place of the " @@ -22985,13 +22988,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14512 +#: book.translate.xml:14519 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdda2wav -D <replaceable>/dev/acd0 -t 7</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14514 +#: book.translate.xml:14521 msgid "" "Alternately, <command>dd</command> can be used to extract audio tracks on " "<acronym>ATAPI</acronym> drives, as described in <xref linkend=\"duplicating-" @@ -22999,12 +23002,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14520 +#: book.translate.xml:14527 msgid "Encoding and Decoding MP3s" msgstr "MP3 編碼與解碼" #. (itstool) path: sect2/para -#: book.translate.xml:14522 +#: book.translate.xml:14529 msgid "" "<application>Lame</application> is a popular <acronym>MP3</acronym> encoder " "which can be installed from the <package>audio/lame</package> port. Due to " @@ -23012,7 +23015,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14527 +#: book.translate.xml:14534 msgid "" "The following command will convert the ripped <acronym>WAV</acronym> file " "<filename><replaceable>audio01.wav</replaceable></filename> to " @@ -23020,7 +23023,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14532 +#: book.translate.xml:14539 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lame -h -b <replaceable>128</replaceable> --tt \"<replaceable>Foo Song Title</replaceable>\" --ta \"<replaceable>FooBar Artist</replaceable>\" --tl \"<replaceable>FooBar Album</replaceable>\" \\\n" @@ -23028,7 +23031,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14535 +#: book.translate.xml:14542 msgid "" "The specified 128 kbits is a standard <acronym>MP3</acronym> bitrate while " "the 160 and 192 bitrates provide higher quality. The higher the bitrate, the " @@ -23041,7 +23044,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14548 +#: book.translate.xml:14555 msgid "" "In order to burn an audio <acronym>CD</acronym> from <acronym>MP3</" "acronym>s, they must first be converted to a non-compressed file format. " @@ -23052,72 +23055,72 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14556 +#: book.translate.xml:14563 msgid "" "To convert <filename>audio01.mp3</filename> using <application>mpg123</" "application>, specify the name of the <acronym>PCM</acronym> file:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14560 +#: book.translate.xml:14567 #, no-wrap msgid "<prompt>#</prompt> <userinput>mpg123 -s <replaceable>audio01.mp3</replaceable> > <replaceable>audio01.pcm</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14562 +#: book.translate.xml:14569 msgid "" "To use <application>XMMS</application> to convert a <acronym>MP3</acronym> " "to <acronym>WAV</acronym> format, use these steps:" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:14567 +#: book.translate.xml:14574 msgid "" "Converting to <acronym>WAV</acronym> Format in <application>XMMS</" "application>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14571 +#: book.translate.xml:14578 msgid "Launch <application>XMMS</application>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14575 +#: book.translate.xml:14582 msgid "" "Right-click the window to bring up the <application>XMMS</application> menu." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14580 +#: book.translate.xml:14587 msgid "Select <literal>Preferences</literal> under <literal>Options</literal>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14585 +#: book.translate.xml:14592 msgid "Change the Output Plugin to <quote>Disk Writer Plugin</quote>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14590 +#: book.translate.xml:14597 msgid "Press <literal>Configure</literal>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14594 +#: book.translate.xml:14601 msgid "Enter or browse to a directory to write the uncompressed files to." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14599 +#: book.translate.xml:14606 msgid "" "Load the <acronym>MP3</acronym> file into <application>XMMS</application> as " "usual, with volume at 100% and EQ settings turned off." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14605 +#: book.translate.xml:14612 msgid "" "Press <literal>Play</literal>. The <application>XMMS</application> will " "appear as if it is playing the <acronym>MP3</acronym>, but no music will be " @@ -23125,14 +23128,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:14613 +#: book.translate.xml:14620 msgid "" "When finished, be sure to set the default Output Plugin back to what it was " "before in order to listen to <acronym>MP3</acronym>s again." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14619 +#: book.translate.xml:14626 msgid "" "Both the <acronym>WAV</acronym> and <acronym>PCM</acronym> formats can be " "used with <application>cdrecord</application>. When using <acronym>WAV</" @@ -23143,32 +23146,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:14627 +#: book.translate.xml:14634 #, no-wrap msgid "<prompt>%</prompt> <userinput>sox -t wav -r 44100 -s -w -c 2 <replaceable>track.wav track.raw</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14629 +#: book.translate.xml:14636 msgid "" "Refer to <xref linkend=\"creating-cds\"/> for more information on using a " "<acronym>CD</acronym> burner in FreeBSD." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:14637 +#: book.translate.xml:14644 msgid "Video Playback" msgstr "影片播放" #. (itstool) path: authorgroup/author -#: book.translate.xml:14640 +#: book.translate.xml:14647 msgid "" "<personname> <firstname>Ross</firstname> <surname>Lippert</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14650 +#: book.translate.xml:14657 msgid "" "Before configuring video playback, determine the model and chipset of the " "video card. While <application>Xorg</application> supports a wide variety of " @@ -23179,7 +23182,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14659 +#: book.translate.xml:14666 msgid "" "It is a good idea to have a short MPEG test file for evaluating various " "players and options. Since some <acronym>DVD</acronym> applications look for " @@ -23189,13 +23192,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:14666 +#: book.translate.xml:14673 #, no-wrap msgid "<prompt>#</prompt> <userinput>ln -sf /dev/cd0 /dev/dvd</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14668 +#: book.translate.xml:14675 msgid "" "Due to the nature of <citerefentry vendor=\"current\"><refentrytitle>devfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, manually created " @@ -23205,20 +23208,20 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:14673 +#: book.translate.xml:14680 #, no-wrap msgid "link cd0 dvd" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14675 +#: book.translate.xml:14682 msgid "" "<acronym>DVD</acronym> decryption invokes certain functions that require " "write permission to the <acronym>DVD</acronym> device." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:14679 +#: book.translate.xml:14686 msgid "" "To enhance the shared memory <application>Xorg</application> interface, it " "is recommended to increase the values of these " @@ -23227,7 +23230,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:14684 +#: book.translate.xml:14691 #, no-wrap msgid "" "kern.ipc.shmmax=67108864\n" @@ -23235,27 +23238,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14688 +#: book.translate.xml:14695 msgid "Determining Video Capabilities" msgstr "偵測影像處理能力" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14690 +#: book.translate.xml:14697 msgid "<primary>XVideo</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14691 +#: book.translate.xml:14698 msgid "<primary>SDL</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14692 +#: book.translate.xml:14699 msgid "<primary>DGA</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14694 +#: book.translate.xml:14701 msgid "" "There are several possible ways to display video under <application>Xorg</" "application> and what works is largely hardware dependent. Each method " @@ -23263,17 +23266,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14699 +#: book.translate.xml:14706 msgid "Common video interfaces include:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14703 +#: book.translate.xml:14710 msgid "<application>Xorg</application>: normal output using shared memory." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14708 +#: book.translate.xml:14715 msgid "" "XVideo: an extension to the <application>Xorg</application> interface which " "allows video to be directly displayed in drawable objects through a special " @@ -23283,7 +23286,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14718 +#: book.translate.xml:14725 msgid "" "<acronym>SDL</acronym>: the Simple Directmedia Layer is a porting layer for " "many operating systems, allowing cross-platform applications to be developed " @@ -23295,7 +23298,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14730 +#: book.translate.xml:14737 msgid "" "<acronym>DGA</acronym>: the Direct Graphics Access is an <application>Xorg</" "application> extension which allows a program to bypass the " @@ -23309,34 +23312,34 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:14745 +#: book.translate.xml:14752 msgid "SVGAlib: a low level console graphics layer." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:14750 +#: book.translate.xml:14757 msgid "XVideo" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14752 +#: book.translate.xml:14759 msgid "" "To check whether this extension is running, use <command>xvinfo</command>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14755 +#: book.translate.xml:14762 #, no-wrap msgid "<prompt>%</prompt> <userinput>xvinfo</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14757 +#: book.translate.xml:14764 msgid "XVideo is supported for the card if the result is similar to:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14760 +#: book.translate.xml:14767 #, no-wrap msgid "" "X-Video Extension version 2.2\n" @@ -23410,19 +23413,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14829 +#: book.translate.xml:14836 msgid "" "The formats listed, such as YUV2 and YUV12, are not present with every " "implementation of XVideo and their absence may hinder some players." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14833 +#: book.translate.xml:14840 msgid "If the result instead looks like:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14835 +#: book.translate.xml:14842 #, no-wrap msgid "" "X-Video Extension version 2.2\n" @@ -23431,7 +23434,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14839 +#: book.translate.xml:14846 msgid "" "XVideo is probably not supported for the card. This means that it will be " "more difficult for the display to meet the computational demands of " @@ -23439,36 +23442,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:14847 +#: book.translate.xml:14854 msgid "Ports and Packages Dealing with Video" msgstr "可處理影像的 Port 與套件" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14849 +#: book.translate.xml:14856 msgid "<primary>video ports</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:14850 +#: book.translate.xml:14857 msgid "<primary>video packages</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:14852 +#: book.translate.xml:14859 msgid "" "This section introduces some of the software available from the FreeBSD " "Ports Collection which can be used for video playback." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:14857 +#: book.translate.xml:14864 msgid "" "<application>MPlayer</application> and <application>MEncoder</application>" msgstr "" "<application>MPlayer</application> 與 <application>MEncoder</application>" #. (itstool) path: sect3/para -#: book.translate.xml:14860 +#: book.translate.xml:14867 msgid "" "<application>MPlayer</application> is a command-line video player with an " "optional graphical interface which aims to provide speed and flexibility. " @@ -23477,12 +23480,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:14866 +#: book.translate.xml:14873 msgid "<primary>MPlayer</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14868 +#: book.translate.xml:14875 msgid "" "<application>MPlayer</application> can be installed using the " "<package>multimedia/mplayer</package> package or port. Several compile " @@ -23492,7 +23495,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14875 +#: book.translate.xml:14882 msgid "" "When compiling the port, the menu options should be reviewed to determine " "the type of support to compile into the port. If an option is not selected, " @@ -23503,7 +23506,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14884 +#: book.translate.xml:14891 msgid "" "By default, the package or port will build the <command>mplayer</command> " "command line utility and the <command>gmplayer</command> graphical utility. " @@ -23513,7 +23516,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14891 +#: book.translate.xml:14898 msgid "" "The first time <application>MPlayer</application> is run, it will create " "<filename>~/.mplayer</filename> in the user's home directory. This " @@ -23522,14 +23525,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14896 +#: book.translate.xml:14903 msgid "" "This section describes only a few common uses. Refer to mplayer(1) for a " "complete description of its numerous options." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14900 +#: book.translate.xml:14907 msgid "" "To play the file <filename><replaceable>testfile.avi</replaceable></" "filename>, specify the video interfaces with <option>-vo</option>, as seen " @@ -23537,44 +23540,44 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14905 +#: book.translate.xml:14912 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo xv <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14907 +#: book.translate.xml:14914 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo sdl <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14909 +#: book.translate.xml:14916 #, no-wrap msgid "<prompt>%</prompt> <userinput>mplayer -vo x11 <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14911 +#: book.translate.xml:14918 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo dga <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14913 +#: book.translate.xml:14920 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo 'sdl:dga' <replaceable>testfile.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14915 +#: book.translate.xml:14922 msgid "" "It is worth trying all of these options, as their relative performance " "depends on many factors and will vary significantly with hardware." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14919 +#: book.translate.xml:14926 msgid "" "To play a <acronym>DVD</acronym>, replace <filename><replaceable>testfile." "avi</replaceable></filename> with <option>dvd://<replaceable>N</replaceable> " @@ -23585,13 +23588,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14928 +#: book.translate.xml:14935 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:14931 +#: book.translate.xml:14938 msgid "" "The default <acronym>DVD</acronym> device can be defined during the build of " "the <application>MPlayer</application> port by including the " @@ -23601,14 +23604,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14941 +#: book.translate.xml:14948 msgid "" "To stop, pause, advance, and so on, use a keybinding. To see the list of " "keybindings, run <command>mplayer -h</command> or read mplayer(1)." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14945 +#: book.translate.xml:14952 msgid "" "Additional playback options include <option>-fs -zoom</option>, which " "engages fullscreen mode, and <option>-framedrop</option>, which helps " @@ -23616,14 +23619,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14949 +#: book.translate.xml:14956 msgid "" "Each user can add commonly used options to their <filename>~/.mplayer/" "config</filename> like so:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:14952 +#: book.translate.xml:14959 #, no-wrap msgid "" "vo=xv\n" @@ -23632,7 +23635,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14956 +#: book.translate.xml:14963 msgid "" "<command>mplayer</command> can be used to rip a <acronym>DVD</acronym> title " "to a <filename>.vob</filename>. To dump the second title from a " @@ -23640,20 +23643,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14961 +#: book.translate.xml:14968 #, no-wrap msgid "<prompt>#</prompt> <userinput>mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14963 +#: book.translate.xml:14970 msgid "" "The output file, <filename>out.vob</filename>, will be in <acronym>MPEG</" "acronym> format." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14966 +#: book.translate.xml:14973 msgid "" "Anyone wishing to obtain a high level of expertise with <trademark class=" "\"registered\">UNIX</trademark> video should consult <link xlink:href=" @@ -23663,12 +23666,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:14972 +#: book.translate.xml:14979 msgid "<primary>mencoder</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14976 +#: book.translate.xml:14983 msgid "" "Before using <command>mencoder</command>, it is a good idea to become " "familiar with the options described at <link xlink:href=\"http://www." @@ -23681,25 +23684,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14985 +#: book.translate.xml:14992 msgid "Here is an example of a simple copy:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14987 +#: book.translate.xml:14994 #, no-wrap msgid "<prompt>%</prompt> <userinput>mencoder <replaceable>input.avi</replaceable> -oac copy -ovc copy -o <replaceable>output.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14989 +#: book.translate.xml:14996 msgid "" "To rip to a file, use <option>-dumpfile</option> with <command>mplayer</" "command>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:14992 +#: book.translate.xml:14999 msgid "" "To convert <filename><replaceable>input.avi</replaceable></filename> to the " "MPEG4 codec with MPEG3 audio encoding, first install the <package>audio/" @@ -23708,7 +23711,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:14999 +#: book.translate.xml:15006 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \\\n" @@ -23716,14 +23719,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15002 +#: book.translate.xml:15009 msgid "" "This will produce output playable by applications such as <command>mplayer</" "command> and <command>xine</command>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15006 +#: book.translate.xml:15013 msgid "" "<filename><replaceable>input.avi</replaceable></filename> can be replaced " "with <option>dvd://1 -dvd-device /dev/dvd</option> and run as <systemitem " @@ -23733,12 +23736,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:15016 +#: book.translate.xml:15023 msgid "The <application>xine</application> Video Player" msgstr "<application>xine</application> 影像播放器" #. (itstool) path: sect3/para -#: book.translate.xml:15019 +#: book.translate.xml:15026 msgid "" "<application>xine</application> is a video player with a reusable base " "library and a modular executable which can be extended with plugins. It can " @@ -23746,7 +23749,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15024 +#: book.translate.xml:15031 msgid "" "In practice, <application>xine</application> requires either a fast CPU with " "a fast video card, or support for the XVideo extension. The " @@ -23755,39 +23758,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15029 +#: book.translate.xml:15036 msgid "" "By default, the <application>xine</application> player starts a graphical " "user interface. The menus can then be used to open a specific file." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15033 +#: book.translate.xml:15040 msgid "" "Alternatively, <application>xine</application> may be invoked from the " "command line by specifying the name of the file to play:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:15037 +#: book.translate.xml:15044 #, no-wrap msgid "<prompt>%</prompt> <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15039 +#: book.translate.xml:15046 msgid "" "Refer to <link xlink:href=\"http://www.xine-project.org/faq\"> xine-project." "org/faq</link> for more information and troubleshooting tips." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:15045 +#: book.translate.xml:15052 msgid "The <application>Transcode</application> Utilities" msgstr "<application>Transcode</application> 工具" #. (itstool) path: sect3/para -#: book.translate.xml:15048 +#: book.translate.xml:15055 msgid "" "<application>Transcode</application> provides a suite of tools for re-" "encoding video and audio files. <application>Transcode</application> can be " @@ -23796,7 +23799,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15054 +#: book.translate.xml:15061 msgid "" "In FreeBSD, <application>Transcode</application> can be installed using the " "<package>multimedia/transcode</package> package or port. Many users prefer " @@ -23809,14 +23812,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15065 +#: book.translate.xml:15072 msgid "" "This example demonstrates how to convert a DivX file into a PAL MPEG-1 file " "(PAL VCD):" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:15068 +#: book.translate.xml:15075 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>transcode -i <replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>\n" @@ -23824,7 +23827,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15071 +#: book.translate.xml:15078 msgid "" "The resulting <acronym>MPEG</acronym> file, " "<filename><replaceable>output_vcd.mpg</replaceable></filename>, is ready to " @@ -23835,7 +23838,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:15080 +#: book.translate.xml:15087 msgid "" "In addition to the manual page for <command>transcode</command>, refer to " "<link xlink:href=\"http://www.transcoding.org/cgi-bin/transcode" @@ -23844,31 +23847,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:15089 +#: book.translate.xml:15096 msgid "TV Cards" msgstr "電視卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:15092 +#: book.translate.xml:15099 msgid "" "<personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </" "personname> <contrib>Original contribution by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:15102 +#: book.translate.xml:15109 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Enhanced and adapted by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15112 +#: book.translate.xml:15119 msgid "<primary>TV cards</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15116 +#: book.translate.xml:15123 msgid "" "TV cards can be used to watch broadcast or cable TV on a computer. Most " "cards accept composite video via an <acronym>RCA</acronym> or S-video input " @@ -23879,7 +23882,7 @@ msgstr "" "<acronym>FM</acronym> 廣播的功能。" #. (itstool) path: sect1/para -#: book.translate.xml:15121 +#: book.translate.xml:15128 msgid "" "FreeBSD provides support for PCI-based TV cards using a Brooktree " "Bt848/849/878/879 video capture chip with the " @@ -23897,12 +23900,12 @@ msgstr "" "manvolnum></citerefentry> 說明,以查看所支援的硬體清單。" #. (itstool) path: sect2/title -#: book.translate.xml:15128 +#: book.translate.xml:15135 msgid "Loading the Driver" msgstr "載入驅動程式" #. (itstool) path: sect2/para -#: book.translate.xml:15130 +#: book.translate.xml:15137 msgid "" "In order to use the card, the <citerefentry><refentrytitle>bktr</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver must be loaded. " @@ -23914,13 +23917,13 @@ msgstr "" "在 <filename>/boot/loader.conf</filename> 檔加上下面這一行就可以了:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15134 +#: book.translate.xml:15141 #, no-wrap msgid "bktr_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15136 +#: book.translate.xml:15143 msgid "" "Alternatively, one can statically compile support for the TV card into a " "custom kernel. In that case, add the following lines to the custom kernel " @@ -23930,7 +23933,7 @@ msgstr "" "加入以下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15141 +#: book.translate.xml:15148 #, no-wrap msgid "" "device\t bktr\n" @@ -23940,7 +23943,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15146 +#: book.translate.xml:15153 msgid "" "These additional devices are necessary as the card components are " "interconnected via an I2C bus. Then, build and install a new kernel." @@ -23949,7 +23952,7 @@ msgstr "" "連接的。接下來,請編譯、安裝新的核心 。" #. (itstool) path: sect2/para -#: book.translate.xml:15150 +#: book.translate.xml:15157 msgid "" "To test that the tuner is correctly detected, reboot the system. The TV card " "should appear in the boot messages, as seen in this example:" @@ -23958,7 +23961,7 @@ msgstr "" "機訊息檔中,如同此範例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15154 +#: book.translate.xml:15161 #, no-wrap msgid "" "bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0\n" @@ -23970,7 +23973,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15161 +#: book.translate.xml:15168 msgid "" "The messages will differ according to the hardware. If necessary, it is " "possible to override some of the detected parameters using " @@ -23985,13 +23988,13 @@ msgstr "" "SECAM 調諧器則可加入下列行至自訂核心設定檔:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15168 +#: book.translate.xml:15175 #, no-wrap msgid "options OVERRIDE_TUNER=6" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15170 +#: book.translate.xml:15177 msgid "" "or, use <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>:" @@ -24000,13 +24003,13 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:15172 +#: book.translate.xml:15179 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl hw.bt848.tuner=6</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15174 +#: book.translate.xml:15181 msgid "" "Refer to <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> for a description of the available " @@ -24019,43 +24022,43 @@ msgstr "" "項。" #. (itstool) path: sect2/title -#: book.translate.xml:15179 +#: book.translate.xml:15186 msgid "Useful Applications" msgstr "好用的應用程式" #. (itstool) path: sect2/para -#: book.translate.xml:15181 +#: book.translate.xml:15188 msgid "To use the TV card, install one of the following applications:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:15186 +#: book.translate.xml:15193 msgid "" "<package>multimedia/fxtv</package> provides TV-in-a-window and image/audio/" "video capture capabilities." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:15191 +#: book.translate.xml:15198 msgid "" "<package>multimedia/xawtv</package> is another TV application with similar " "features." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:15195 +#: book.translate.xml:15202 msgid "" "<package>audio/xmradio</package> provides an application for using the FM " "radio tuner of a TV card." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15201 +#: book.translate.xml:15208 msgid "More applications are available in the FreeBSD Ports Collection." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15208 +#: book.translate.xml:15215 msgid "" "If any problems are encountered with the TV card, check that the video " "capture chip and the tuner are supported by " @@ -24067,12 +24070,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:15217 +#: book.translate.xml:15224 msgid "MythTV" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15219 +#: book.translate.xml:15226 msgid "" "MythTV is a popular, open source Personal Video Recorder (<acronym>PVR</" "acronym>) application. This section demonstrates how to install and setup " @@ -24081,14 +24084,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15224 +#: book.translate.xml:15231 msgid "" "MythTV requires a frontend and a backend. These components can either be " "installed on the same system or on different machines." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15228 +#: book.translate.xml:15235 msgid "" "The frontend can be installed on FreeBSD using the <package>multimedia/" "mythtv-frontend</package> package or port. <application>Xorg</application> " @@ -24099,7 +24102,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15237 +#: book.translate.xml:15244 msgid "" "To install both the backend and the frontend on FreeBSD, use the " "<package>multimedia/mythtv</package> package or port. A <trademark>MySQL</" @@ -24109,12 +24112,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15245 +#: book.translate.xml:15252 msgid "Hardware" msgstr "硬體" #. (itstool) path: sect2/para -#: book.translate.xml:15247 +#: book.translate.xml:15254 msgid "" "MythTV uses Video for Linux (<acronym>V4L</acronym>) to access video input " "devices such as encoders and tuners. In FreeBSD, MythTV works best with " @@ -24133,35 +24136,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15265 +#: book.translate.xml:15272 msgid "" "The <link xlink:href=\"http://wiki.freebsd.org/HTPC\">wiki.freebsd.org/HTPC</" "link> page contains a list of all available <acronym>DVB</acronym> drivers." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15271 +#: book.translate.xml:15278 msgid "Setting up the MythTV Backend" msgstr "設定 MythTV 後端" #. (itstool) path: sect2/para -#: book.translate.xml:15273 +#: book.translate.xml:15280 msgid "To install MythTV using binary packages:" msgstr "要使用 Binary 套件安裝 MythTV 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:15275 +#: book.translate.xml:15282 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install mythtv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15277 +#: book.translate.xml:15284 msgid "Alternatively, to install from the Ports Collecton:" msgstr "或由 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:15279 +#: book.translate.xml:15286 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/multimedia/mythtv</userinput>\n" @@ -24169,34 +24172,34 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15282 +#: book.translate.xml:15289 msgid "Once installed, set up the MythTV database:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15284 +#: book.translate.xml:15291 #, no-wrap msgid "<prompt>#</prompt> <userinput>mysql -uroot -p < /usr/local/share/mythtv/database/mc.sql</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15286 +#: book.translate.xml:15293 msgid "Then, configure the backend:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15288 +#: book.translate.xml:15295 #, no-wrap msgid "<prompt>#</prompt> <userinput>mythtv-setup</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15290 +#: book.translate.xml:15297 msgid "Finally, start the backend:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15292 +#: book.translate.xml:15299 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>echo 'mythbackend_enable=\"YES\"' >> /etc/rc.conf</userinput>\n" @@ -24204,24 +24207,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:15299 +#: book.translate.xml:15306 msgid "Image Scanners" msgstr "影像掃描器" #. (itstool) path: authorgroup/author -#: book.translate.xml:15302 +#: book.translate.xml:15309 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15312 +#: book.translate.xml:15319 msgid "<primary>image scanners</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15316 +#: book.translate.xml:15323 msgid "" "In FreeBSD, access to image scanners is provided by <application>SANE</" "application> (Scanner Access Now Easy), which is available in the FreeBSD " @@ -24230,7 +24233,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15322 +#: book.translate.xml:15329 msgid "" "FreeBSD supports both <acronym>SCSI</acronym> and <acronym>USB</acronym> " "scanners. Depending upon the scanner interface, different device drivers are " @@ -24242,7 +24245,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15330 +#: book.translate.xml:15337 msgid "" "This chapter describes how to determine if the scanner has been detected by " "FreeBSD. It then provides an overview of how to configure and use " @@ -24250,12 +24253,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15336 +#: book.translate.xml:15343 msgid "Checking the Scanner" msgstr "檢查掃描器" #. (itstool) path: sect2/para -#: book.translate.xml:15338 +#: book.translate.xml:15345 msgid "" "The <filename>GENERIC</filename> kernel includes the device drivers needed " "to support <acronym>USB</acronym> scanners. Users with a custom kernel " @@ -24264,7 +24267,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15344 +#: book.translate.xml:15351 #, no-wrap msgid "" "device usb\n" @@ -24274,7 +24277,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15349 +#: book.translate.xml:15356 msgid "" "To determine if the <acronym>USB</acronym> scanner is detected, plug it in " "and use <command>dmesg</command> to determine whether the scanner appears in " @@ -24283,13 +24286,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15355 +#: book.translate.xml:15362 #, no-wrap msgid "ugen0.2: <EPSON> at usbus0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15357 +#: book.translate.xml:15364 msgid "" "In this example, an <trademark class=\"registered\">EPSON Perfection</" "trademark> 1650 <acronym>USB</acronym> scanner was detected on <filename>/" @@ -24297,7 +24300,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15362 +#: book.translate.xml:15369 msgid "" "If the scanner uses a <acronym>SCSI</acronym> interface, it is important to " "know which <acronym>SCSI</acronym> controller board it will use. Depending " @@ -24311,7 +24314,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15374 +#: book.translate.xml:15381 #, no-wrap msgid "" "device scbus\n" @@ -24319,12 +24322,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15377 +#: book.translate.xml:15384 msgid "Verify that the device is displayed in the system message buffer:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15380 +#: book.translate.xml:15387 #, no-wrap msgid "" "pass2 at aic0 bus 0 target 2 lun 0\n" @@ -24333,7 +24336,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15384 +#: book.translate.xml:15391 msgid "" "If the scanner was not powered-on at system boot, it is still possible to " "manually force detection by performing a <acronym>SCSI</acronym> bus scan " @@ -24341,7 +24344,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15389 +#: book.translate.xml:15396 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol rescan all</userinput>\n" @@ -24352,13 +24355,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15395 +#: book.translate.xml:15402 msgid "" "The scanner should now appear in the <acronym>SCSI</acronym> devices list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15398 +#: book.translate.xml:15405 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -24369,7 +24372,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15404 +#: book.translate.xml:15411 msgid "" "Refer to <citerefentry><refentrytitle>scsi</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>camcontrol</" @@ -24378,12 +24381,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15409 +#: book.translate.xml:15416 msgid "<application>SANE</application> Configuration" msgstr "<application>SANE</application> 設定" #. (itstool) path: sect2/para -#: book.translate.xml:15411 +#: book.translate.xml:15418 msgid "" "The <application>SANE</application> system is split in two parts: the " "backends (<package>graphics/sane-backends</package>) and the frontends " @@ -24398,23 +24401,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15424 +#: book.translate.xml:15431 msgid "To install the two parts from binary packages:" msgstr "要由 Binary 套件安裝這兩個部份可:" #. (itstool) path: sect2/screen -#: book.translate.xml:15426 +#: book.translate.xml:15433 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install xsane sane-frontends</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15428 +#: book.translate.xml:15435 msgid "Alternatively, to install from the Ports Collection" msgstr "或由 Port 套件集安裝:" #. (itstool) path: sect2/screen -#: book.translate.xml:15430 +#: book.translate.xml:15437 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/graphics/sane-frontends</userinput>\n" @@ -24424,7 +24427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15435 +#: book.translate.xml:15442 msgid "" "After installing the <package>graphics/sane-backends</package> port or " "package, use <command>sane-find-scanner</command> to check the scanner " @@ -24432,7 +24435,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15441 +#: book.translate.xml:15448 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sane-find-scanner -q</userinput>\n" @@ -24440,7 +24443,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15444 +#: book.translate.xml:15451 msgid "" "The output should show the interface type of the scanner and the device node " "used to attach the scanner to the system. The vendor and the product model " @@ -24448,14 +24451,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:15449 +#: book.translate.xml:15456 msgid "" "Some <acronym>USB</acronym> scanners require firmware to be loaded. Refer to " "sane-find-scanner(1) and sane(7) for details." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15454 +#: book.translate.xml:15461 msgid "" "Next, check if the scanner will be identified by a scanning frontend. The " "<application>SANE</application> backends include <command>scanimage</" @@ -24466,7 +24469,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15462 +#: book.translate.xml:15469 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24476,7 +24479,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15467 +#: book.translate.xml:15474 msgid "" "In this second example, <literal>'epson2:libusb:/dev/usb:/dev/ugen0.2'</" "literal> is the backend name (<literal>epson2</literal>) and <literal>/dev/" @@ -24484,14 +24487,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15473 +#: book.translate.xml:15480 msgid "" "If <command>scanimage</command> is unable to identify the scanner, this " "message will appear:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15476 +#: book.translate.xml:15483 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24503,7 +24506,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15483 +#: book.translate.xml:15490 msgid "" "If this happens, edit the backend configuration file in <filename>/usr/local/" "etc/sane.d/</filename> and define the scanner device used. For example, if " @@ -24515,20 +24518,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15493 +#: book.translate.xml:15500 #, no-wrap msgid "usb /dev/ugen0.2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15495 +#: book.translate.xml:15502 msgid "" "Save the edits and verify that the scanner is identified with the right " "backend name and the device node:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15498 +#: book.translate.xml:15505 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scanimage -L</userinput>\n" @@ -24536,14 +24539,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15501 +#: book.translate.xml:15508 msgid "" "Once <command>scanimage -L</command> sees the scanner, the configuration is " "complete and the scanner is now ready to use." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15505 +#: book.translate.xml:15512 msgid "" "While <command>scanimage</command> can be used to perform an image " "acquisition from the command line, it is often preferable to use a graphical " @@ -24553,7 +24556,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15512 +#: book.translate.xml:15519 msgid "" "Alternately, <application>xsane</application>, which is installed with the " "<package>graphics/xsane</package> package or port, is another popular " @@ -24563,12 +24566,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:15521 +#: book.translate.xml:15528 msgid "Scanner Permissions" msgstr "掃描器權限" #. (itstool) path: sect2/para -#: book.translate.xml:15523 +#: book.translate.xml:15530 msgid "" "In order to have access to the scanner, a user needs read and write " "permissions to the device node used by the scanner. In the previous example, " @@ -24584,20 +24587,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15536 +#: book.translate.xml:15543 msgid "" "This example creates a group called <systemitem class=\"groupname" "\"><replaceable>usb</replaceable></systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15538 +#: book.translate.xml:15545 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupadd usb</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15540 +#: book.translate.xml:15547 msgid "" "Then, make the <filename>/dev/ugen0.2</filename> symlink and the <filename>/" "dev/usb/0.2.0</filename> device node accessible to the <systemitem class=" @@ -24607,7 +24610,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:15547 +#: book.translate.xml:15554 #, no-wrap msgid "" "[system=5]\n" @@ -24616,38 +24619,38 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15551 +#: book.translate.xml:15558 msgid "" "Finally, add the users to <systemitem class=\"groupname\"><replaceable>usb</" "replaceable></systemitem> in order to allow access to the scanner:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:15554 +#: book.translate.xml:15561 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:15556 +#: book.translate.xml:15563 msgid "" "For more details refer to <citerefentry><refentrytitle>pw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:15586 +#: book.translate.xml:15593 msgid "Configuring the FreeBSD Kernel" msgstr "設定 FreeBSD 核心" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15591 +#: book.translate.xml:15598 msgid "" "<primary>kernel</primary> <secondary>building a custom kernel</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15596 +#: book.translate.xml:15603 msgid "" "The kernel is the core of the FreeBSD operating system. It is responsible " "for managing memory, enforcing security controls, networking, disk access, " @@ -24659,38 +24662,38 @@ msgstr "" "定並編譯自訂的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15606 +#: book.translate.xml:15613 msgid "When to build a custom kernel." msgstr "何時需要編譯自訂核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15610 +#: book.translate.xml:15617 msgid "How to take a hardware inventory." msgstr "如何取得硬體資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:15614 +#: book.translate.xml:15621 msgid "How to customize a kernel configuration file." msgstr "如何量身訂做核心設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:15618 +#: book.translate.xml:15625 msgid "" "How to use the kernel configuration file to create and build a new kernel." msgstr "如何使用核心設定檔來建立並編譯新的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15623 +#: book.translate.xml:15630 msgid "How to install the new kernel." msgstr "如何安裝新的核心。" #. (itstool) path: listitem/para -#: book.translate.xml:15627 +#: book.translate.xml:15634 msgid "How to troubleshoot if things go wrong." msgstr "發生錯誤時如何排除問題。" #. (itstool) path: sect1/para -#: book.translate.xml:15631 +#: book.translate.xml:15638 msgid "" "All of the commands listed in the examples in this chapter should be " "executed as <systemitem class=\"username\">root</systemitem>." @@ -24699,12 +24702,12 @@ msgstr "" "systemitem> 來執行。" #. (itstool) path: sect1/title -#: book.translate.xml:15636 +#: book.translate.xml:15643 msgid "Why Build a Custom Kernel?" msgstr "為何要編譯自訂的核心?" #. (itstool) path: sect1/para -#: book.translate.xml:15638 +#: book.translate.xml:15645 msgid "" "Traditionally, FreeBSD used a monolithic kernel. The kernel was one large " "program, supported a fixed list of devices, and in order to change the " @@ -24715,7 +24718,7 @@ msgstr "" "重新開機,才能使用。" #. (itstool) path: sect1/para -#: book.translate.xml:15643 +#: book.translate.xml:15650 msgid "" "Today, most of the functionality in the FreeBSD kernel is contained in " "modules which can be dynamically loaded and unloaded from the kernel as " @@ -24728,7 +24731,7 @@ msgstr "" "功能,這就是所謂模組化核心 (Modular Kernel)。" #. (itstool) path: sect1/para -#: book.translate.xml:15650 +#: book.translate.xml:15657 msgid "" "Occasionally, it is still necessary to perform static kernel configuration. " "Sometimes the needed functionality is so tied to the kernel that it can not " @@ -24741,7 +24744,7 @@ msgstr "" "載核心模組,且只要將需要的功能靜態的編譯到核心當中。" #. (itstool) path: sect1/para -#: book.translate.xml:15657 +#: book.translate.xml:15664 msgid "" "Building a custom kernel is often a rite of passage for advanced BSD users. " "This process, while time consuming, can provide benefits to the FreeBSD " @@ -24755,7 +24758,7 @@ msgstr "" "『自己硬體』的部分就好。 自訂核心有許多項優點,如︰" #. (itstool) path: listitem/para -#: book.translate.xml:15667 +#: book.translate.xml:15674 msgid "" "Faster boot time. Since the kernel will only probe the hardware on the " "system, the time it takes the system to boot can decrease." @@ -24764,7 +24767,7 @@ msgstr "" "流暢快速。" #. (itstool) path: listitem/para -#: book.translate.xml:15673 +#: book.translate.xml:15680 msgid "" "Lower memory usage. A custom kernel often uses less memory than the " "<filename>GENERIC</filename> kernel by omitting unused features and device " @@ -24778,7 +24781,7 @@ msgstr "" "使用。因此,自訂核心對於記憶體較小的系統來說,發揮很大的作用。" #. (itstool) path: listitem/para -#: book.translate.xml:15684 +#: book.translate.xml:15691 msgid "" "Additional hardware support. A custom kernel can add support for devices " "which are not present in the <filename>GENERIC</filename> kernel." @@ -24787,7 +24790,7 @@ msgstr "" "提供的硬體支援。" #. (itstool) path: sect1/para -#: book.translate.xml:15690 +#: book.translate.xml:15697 msgid "" "Before building a custom kernel, consider the reason for doing so. If there " "is a need for specific hardware support, it may already exist as a module." @@ -24796,7 +24799,7 @@ msgstr "" "已有既有的模組可以使用。" #. (itstool) path: sect1/para -#: book.translate.xml:15694 +#: book.translate.xml:15701 msgid "" "Kernel modules exist in <filename>/boot/kernel</filename> and may be " "dynamically loaded into the running kernel using " @@ -24814,7 +24817,7 @@ msgstr "" "其操作手冊有以下資訊:" #. (itstool) path: sect1/screen -#: book.translate.xml:15700 +#: book.translate.xml:15707 #, no-wrap msgid "" "Alternatively, to load the driver as a module at boot time, place the\n" @@ -24824,7 +24827,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15705 +#: book.translate.xml:15712 msgid "" "Adding <literal>if_ath_load=\"YES\"</literal> to <filename>/boot/loader." "conf</filename> will load this module dynamically at boot time." @@ -24833,7 +24836,7 @@ msgstr "" "filename> 會於開機期間自動載入這個模組。" #. (itstool) path: sect1/para -#: book.translate.xml:15709 +#: book.translate.xml:15716 msgid "" "In some cases, there is no associated module in <filename>/boot/kernel</" "filename>. This is mostly true for certain subsystems." @@ -24842,12 +24845,12 @@ msgstr "" "統大多是真的。" #. (itstool) path: sect1/title -#: book.translate.xml:15726 +#: book.translate.xml:15733 msgid "Finding the System Hardware" msgstr "偵測系統硬體" #. (itstool) path: sect1/para -#: book.translate.xml:15728 +#: book.translate.xml:15735 msgid "" "Before editing the kernel configuration file, it is recommended to perform " "an inventory of the machine's hardware. On a dual-boot system, the inventory " @@ -24861,7 +24864,7 @@ msgstr "" "application> (Device Manager) 內會有目前已安裝的硬體資訊。" #. (itstool) path: note/para -#: book.translate.xml:15736 +#: book.translate.xml:15743 msgid "" "Some versions of <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> have a " @@ -24873,7 +24876,7 @@ msgstr "" "(System) 圖示可用來進入 <application>裝置管理員</application>。" #. (itstool) path: sect1/para -#: book.translate.xml:15741 +#: book.translate.xml:15748 msgid "" "If FreeBSD is the only installed operating system, use " "<citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></" @@ -24891,7 +24894,7 @@ msgstr "" "citerefentry> 驅動程式偵測到了一隻滑鼠:" #. (itstool) path: sect1/screen -#: book.translate.xml:15748 +#: book.translate.xml:15755 #, no-wrap msgid "" "psm0: <PS/2 Mouse> irq 12 on atkbdc0\n" @@ -24901,14 +24904,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15753 +#: book.translate.xml:15760 msgid "" "Since this hardware exists, this driver should not be removed from a custom " "kernel configuration file." msgstr "因為該硬體存在,此驅動程式便不應該從自訂核心設定檔中移除。" #. (itstool) path: sect1/para -#: book.translate.xml:15756 +#: book.translate.xml:15763 msgid "" "If the output of <command>dmesg</command> does not display the results of " "the boot probe output, instead read the contents of <filename>/var/run/dmesg." @@ -24918,7 +24921,7 @@ msgstr "" "<filename>/var/run/dmesg.boot</filename> 檔案的內容。" #. (itstool) path: sect1/para -#: book.translate.xml:15760 +#: book.translate.xml:15767 msgid "" "Another tool for finding hardware is <citerefentry><refentrytitle>pciconf</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, which provides more " @@ -24929,7 +24932,7 @@ msgstr "" "訊,該工具會列出更詳細的硬體資訊如:" #. (itstool) path: sect1/screen -#: book.translate.xml:15763 +#: book.translate.xml:15770 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>pciconf -lv</userinput>\n" @@ -24941,7 +24944,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15770 +#: book.translate.xml:15777 msgid "" "This output shows that the <filename>ath</filename> driver located a " "wireless Ethernet device." @@ -24950,7 +24953,7 @@ msgstr "" "置。" #. (itstool) path: sect1/para -#: book.translate.xml:15773 +#: book.translate.xml:15780 msgid "" "The <option>-k</option> flag of <citerefentry><refentrytitle>man</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> can be used to provide " @@ -24962,13 +24965,13 @@ msgstr "" "出有包含指定裝置品牌或名稱的手冊頁面清單:" #. (itstool) path: sect1/screen -#: book.translate.xml:15778 +#: book.translate.xml:15785 #, no-wrap msgid "<prompt>#</prompt> <userinput>man -k <replaceable>Atheros</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:15780 +#: book.translate.xml:15787 #, no-wrap msgid "" "ath(4) - Atheros IEEE 802.11 wireless network driver\n" @@ -24976,7 +24979,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15783 +#: book.translate.xml:15790 msgid "" "Once the hardware inventory list is created, refer to it to ensure that " "drivers for installed hardware are not removed as the custom kernel " @@ -24987,12 +24990,12 @@ msgstr "" #. (itstool) path: sect1/title #. (itstool) path: sect2/title -#: book.translate.xml:15800 book.translate.xml:44192 +#: book.translate.xml:15807 book.translate.xml:44401 msgid "The Configuration File" msgstr "設定檔" #. (itstool) path: sect1/para -#: book.translate.xml:15802 +#: book.translate.xml:15809 msgid "" "In order to create a custom kernel configuration file and build a custom " "kernel, the full FreeBSD source tree must first be installed." @@ -25000,7 +25003,7 @@ msgstr "" "為了要建立自訂核心設定檔並編譯自訂核心,必須先安裝完整的 FreeBSD 原始碼樹。" #. (itstool) path: sect1/para -#: book.translate.xml:15806 +#: book.translate.xml:15813 msgid "" "If <filename>/usr/src/</filename> does not exist or it is empty, source has " "not been installed. Source can be installed using <application>Subversion</" @@ -25011,7 +25014,7 @@ msgstr "" "> 中的操作說明來安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:15811 +#: book.translate.xml:15818 msgid "" "Once source is installed, review the contents of <filename>/usr/src/sys</" "filename>. This directory contains a number of subdirectories, including " @@ -25034,7 +25037,7 @@ msgstr "" "filename> 核心設定檔。" #. (itstool) path: sect1/para -#: book.translate.xml:15825 +#: book.translate.xml:15832 msgid "" "Do not make edits to <filename>GENERIC</filename>. Instead, copy the file to " "a different name and make edits to the copy. The convention is to use a name " @@ -25051,7 +25054,7 @@ msgstr "" "filename> 設定檔建立了一個複本名稱為 <filename>MYKERNEL</filename>:" #. (itstool) path: sect1/screen -#: book.translate.xml:15834 +#: book.translate.xml:15841 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/sys/<replaceable>amd64</replaceable>/conf</userinput>\n" @@ -25059,7 +25062,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15837 +#: book.translate.xml:15844 msgid "" "<filename><replaceable>MYKERNEL</replaceable></filename> can now be " "customized with any <acronym>ASCII</acronym> text editor. The default editor " @@ -25072,22 +25075,22 @@ msgstr "" "做 <application>ee</application>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15844 +#: book.translate.xml:15851 msgid "<primary>kernel</primary> <secondary>NOTES</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15848 +#: book.translate.xml:15855 msgid "<primary>NOTES</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:15849 +#: book.translate.xml:15856 msgid "<primary>kernel</primary> <secondary>configuration file</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15854 +#: book.translate.xml:15861 msgid "" "The format of the kernel configuration file is simple. Each line contains a " "keyword that represents a device or subsystem, an argument, and a brief " @@ -25104,7 +25107,7 @@ msgstr "" "除 <literal>#</literal> 符號。" #. (itstool) path: warning/para -#: book.translate.xml:15865 +#: book.translate.xml:15872 msgid "" "It is easy to remove support for a device or option and end up with a broken " "kernel. For example, if the <citerefentry><refentrytitle>ata</" @@ -25118,7 +25121,7 @@ msgstr "" "會無法開機。因此當您不確定時,請在核心保留該項目的支援。" #. (itstool) path: sect1/para -#: book.translate.xml:15872 +#: book.translate.xml:15879 msgid "" "In addition to the brief descriptions provided in this file, additional " "descriptions are contained in <filename>NOTES</filename>, which can be found " @@ -25132,7 +25135,7 @@ msgstr "" "filename>。" #. (itstool) path: tip/para -#: book.translate.xml:15880 +#: book.translate.xml:15887 msgid "" "When finished customizing the kernel configuration file, save a backup copy " "to a location outside of <filename>/usr/src</filename>." @@ -25140,7 +25143,7 @@ msgstr "" "當完成自訂的核心設定檔,請備份到 <filename>/usr/src</filename> 位置之外。" #. (itstool) path: tip/para -#: book.translate.xml:15884 +#: book.translate.xml:15891 msgid "" "Alternately, keep the kernel configuration file elsewhere and create a " "symbolic link to the file:" @@ -25149,7 +25152,7 @@ msgstr "" "案:" #. (itstool) path: tip/screen -#: book.translate.xml:15887 +#: book.translate.xml:15894 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/sys/amd64/conf</userinput>\n" @@ -25159,7 +25162,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15893 +#: book.translate.xml:15900 msgid "" "An <literal>include</literal> directive is available for use in " "configuration files. This allows another configuration file to be included " @@ -25174,7 +25177,7 @@ msgstr "" "並設定額外增加的選項,如範例所示:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:15901 +#: book.translate.xml:15908 #, no-wrap msgid "" "include GENERIC\n" @@ -25187,7 +25190,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:15909 +#: book.translate.xml:15916 msgid "" "Using this method, the local configuration file expresses local differences " "from a <filename>GENERIC</filename> kernel. As upgrades are performed, new " @@ -25205,7 +25208,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 找到。" #. (itstool) path: note/para -#: book.translate.xml:15919 +#: book.translate.xml:15926 msgid "" "To build a file which contains all available options, run the following " "command as <systemitem class=\"username\">root</systemitem>:" @@ -25214,59 +25217,59 @@ msgstr "" "systemitem> 執行以下指令:" #. (itstool) path: note/screen -#: book.translate.xml:15922 +#: book.translate.xml:15929 #, no-wrap msgid "<prompt>#</prompt> <userinput>cd /usr/src/sys/<replaceable>arch</replaceable>/conf && make LINT</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:16738 +#: book.translate.xml:16745 msgid "Building and Installing a Custom Kernel" msgstr "編譯與安裝自訂核心" #. (itstool) path: sect1/para -#: book.translate.xml:16740 +#: book.translate.xml:16747 msgid "" "Once the edits to the custom configuration file have been saved, the source " "code for the kernel can be compiled using the following steps:" msgstr "完成自訂設定檔的編輯並儲存之後,便可依據以下步驟編譯核心的原始碼:" #. (itstool) path: procedure/title -#: book.translate.xml:16745 +#: book.translate.xml:16752 msgid "Building a Kernel" msgstr "編譯核心" #. (itstool) path: procedure/indexterm -#: book.translate.xml:16747 +#: book.translate.xml:16754 msgid "<primary>kernel</primary> <secondary>building / installing</secondary>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16753 +#: book.translate.xml:16760 msgid "Change to this directory:" msgstr "切換至此目錄:" #. (itstool) path: step/screen -#: book.translate.xml:16755 +#: book.translate.xml:16762 #, no-wrap msgid "<prompt>#</prompt> <userinput>cd /usr/src</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16759 +#: book.translate.xml:16766 msgid "" "Compile the new kernel by specifying the name of the custom kernel " "configuration file:" msgstr "指定自訂核心設定檔的名稱來編譯新的核心:" #. (itstool) path: step/screen -#: book.translate.xml:16762 +#: book.translate.xml:16769 #, no-wrap msgid "<prompt>#</prompt> <userinput>make buildkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16766 +#: book.translate.xml:16773 msgid "" "Install the new kernel associated with the specified kernel configuration " "file. This command will copy the new kernel to <filename>/boot/kernel/" @@ -25278,13 +25281,13 @@ msgstr "" "filename>:" #. (itstool) path: step/screen -#: book.translate.xml:16772 +#: book.translate.xml:16779 #, no-wrap msgid "<prompt>#</prompt> <userinput>make installkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16776 +#: book.translate.xml:16783 msgid "" "Shutdown the system and reboot into the new kernel. If something goes wrong, " "refer to <xref linkend=\"kernelconfig-noboot\"/>." @@ -25293,7 +25296,7 @@ msgstr "" "noboot\"/>。" #. (itstool) path: sect1/para -#: book.translate.xml:16781 +#: book.translate.xml:16788 msgid "" "By default, when a custom kernel is compiled, all kernel modules are " "rebuilt. To update a kernel faster or to build only custom modules, edit " @@ -25303,33 +25306,33 @@ msgstr "" "自訂的模組,需在開始編譯之前先編輯 <filename>/etc/make.conf</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:16786 +#: book.translate.xml:16793 msgid "" "For example, this variable specifies the list of modules to build instead of " "using the default of building all modules:" msgstr "例如,使用以下變數可指定要編譯的模組清單來替代預設編譯所有模組的設定:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:16790 +#: book.translate.xml:16797 #, no-wrap msgid "MODULES_OVERRIDE = linux acpi" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:16792 +#: book.translate.xml:16799 msgid "" "Alternately, this variable lists which modules to exclude from the build " "process:" msgstr "或者,可使用以下變數來從編譯程序中排除要編譯的模組:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:16795 +#: book.translate.xml:16802 #, no-wrap msgid "WITHOUT_MODULES = linux acpi sound" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:16797 +#: book.translate.xml:16804 msgid "" "Additional variables are available. Refer to " "<citerefentry><refentrytitle>make.conf</refentrytitle><manvolnum>5</" @@ -25339,29 +25342,29 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 取得詳細資訊。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:16800 +#: book.translate.xml:16807 msgid "<primary><filename>/boot/kernel.old</filename></primary>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:16806 +#: book.translate.xml:16813 msgid "If Something Goes Wrong" msgstr "如果發生錯誤" #. (itstool) path: sect1/para -#: book.translate.xml:16808 +#: book.translate.xml:16815 msgid "" "There are four categories of trouble that can occur when building a custom " "kernel:" msgstr "當編譯自訂核心時可能發生以下四種類型的問題:" #. (itstool) path: varlistentry/term -#: book.translate.xml:16813 +#: book.translate.xml:16820 msgid "<command>config</command> fails" msgstr "<command>config</command> 失敗" #. (itstool) path: listitem/para -#: book.translate.xml:16816 +#: book.translate.xml:16823 msgid "" "If <command>config</command> fails, it will print the line number that is " "incorrect. As an example, for the following message, make sure that line 17 " @@ -25373,18 +25376,18 @@ msgstr "" "17 行輸入的內容正確:" #. (itstool) path: listitem/screen -#: book.translate.xml:16822 +#: book.translate.xml:16829 #, no-wrap msgid "config: line 17: syntax error" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:16827 +#: book.translate.xml:16834 msgid "<command>make</command> fails" msgstr "<command>make</command> 失敗" #. (itstool) path: listitem/para -#: book.translate.xml:16830 +#: book.translate.xml:16837 msgid "" "If <command>make</command> fails, it is usually due to an error in the " "kernel configuration file which is not severe enough for <command>config</" @@ -25400,12 +25403,12 @@ msgstr "" "設定檔。" #. (itstool) path: varlistentry/term -#: book.translate.xml:16840 +#: book.translate.xml:16847 msgid "The kernel does not boot" msgstr "無法使用核心開機" #. (itstool) path: listitem/para -#: book.translate.xml:16843 +#: book.translate.xml:16850 msgid "" "If the new kernel does not boot or fails to recognize devices, do not panic! " "Fortunately, FreeBSD has an excellent mechanism for recovering from " @@ -25422,7 +25425,7 @@ msgstr "" "replaceable></command> 或替換為任何其他已經知道可以正常開機的核心名稱。" #. (itstool) path: listitem/para -#: book.translate.xml:16855 +#: book.translate.xml:16862 msgid "" "After booting with a good kernel, check over the configuration file and try " "to build it again. One helpful resource is <filename>/var/log/messages</" @@ -25437,7 +25440,7 @@ msgstr "" "citerefentry> 也會印出自本次開機後的核心訊息。" #. (itstool) path: note/para -#: book.translate.xml:16863 +#: book.translate.xml:16870 msgid "" "When troubleshooting a kernel, make sure to keep a copy of " "<filename>GENERIC</filename>, or some other kernel that is known to work, as " @@ -25454,7 +25457,7 @@ msgstr "" "核心目錄。" #. (itstool) path: note/screen -#: book.translate.xml:16873 +#: book.translate.xml:16880 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mv /boot/kernel <replaceable>/boot/kernel.bad</replaceable></userinput>\n" @@ -25462,7 +25465,7 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:16880 +#: book.translate.xml:16887 msgid "" "The kernel works, but <citerefentry><refentrytitle>ps</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> does not" @@ -25471,7 +25474,7 @@ msgstr "" "manvolnum></citerefentry> 無法運作" #. (itstool) path: listitem/para -#: book.translate.xml:16883 +#: book.translate.xml:16890 msgid "" "If the kernel version differs from the one that the system utilities have " "been built with, for example, a kernel built from -CURRENT sources is " @@ -25494,19 +25497,19 @@ msgstr "" "是個好主意。" #. (itstool) path: info/title -#: book.translate.xml:16908 +#: book.translate.xml:16915 msgid "Printing" msgstr "列印" #. (itstool) path: authorgroup/author -#: book.translate.xml:16911 book.translate.xml:28770 +#: book.translate.xml:16918 book.translate.xml:28777 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname><contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: chapter/para -#: book.translate.xml:16920 +#: book.translate.xml:16927 msgid "" "Putting information on paper is a vital function, despite many attempts to " "eliminate it. Printing has two basic components. The data must be delivered " @@ -25516,7 +25519,7 @@ msgstr "" "本元件組成,包含了資料傳送到印表機的方式以及印表機可以理解的資料形式。" #. (itstool) path: sect1/para -#: book.translate.xml:16928 +#: book.translate.xml:16935 msgid "" "Basic printing can be set up quickly. The printer must be capable of " "printing plain <acronym>ASCII</acronym> text. For printing to other types of " @@ -25527,13 +25530,13 @@ msgstr "" "filters\"/>。" #. (itstool) path: step/para -#: book.translate.xml:16935 +#: book.translate.xml:16942 msgid "Create a directory to store files while they are being printed:" msgstr "建立一個目錄來儲存要被列印的檔案:" #. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:16938 book.translate.xml:17347 +#: book.translate.xml:16945 book.translate.xml:17354 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir -p /var/spool/lpd/lp</userinput>\n" @@ -25542,7 +25545,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16944 +#: book.translate.xml:16951 msgid "" "As <systemitem class=\"username\">root</systemitem>, create <filename>/etc/" "printcap</filename> with these contents:" @@ -25551,7 +25554,7 @@ msgstr "" "printcap</filename> 內容如下:" #. (itstool) path: step/programlisting -#: book.translate.xml:16948 +#: book.translate.xml:16955 #, no-wrap msgid "" "lp:\\\n" @@ -25563,37 +25566,37 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16957 +#: book.translate.xml:16964 msgid "This line is for a printer connected to a <acronym>USB</acronym> port." msgstr "此行是針對連接到 <acronym>USB</acronym> 埠的印表機:" #. (itstool) path: callout/para -#: book.translate.xml:16960 +#: book.translate.xml:16967 msgid "" "For a printer connected to a parallel or <quote>printer</quote> port, use:" msgstr "連接到並列或 <quote>印表器 (Printer)</quote> 埠的印表機要使用:" #. (itstool) path: callout/programlisting #. (itstool) path: entry/programlisting -#: book.translate.xml:16963 book.translate.xml:17404 +#: book.translate.xml:16970 book.translate.xml:17411 #, no-wrap msgid ":lp=/dev/lpt0:\\" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16965 +#: book.translate.xml:16972 msgid "For a printer connected directly to a network, use:" msgstr "直接連接到網路的印表機要使用:" #. (itstool) path: callout/programlisting #. (itstool) path: entry/programlisting -#: book.translate.xml:16968 book.translate.xml:17413 +#: book.translate.xml:16975 book.translate.xml:17420 #, no-wrap msgid ":lp=:rm=<replaceable>network-printer-name</replaceable>:rp=raw:\\" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:16970 +#: book.translate.xml:16977 msgid "" "Replace <replaceable>network-printer-name</replaceable> with the " "<acronym>DNS</acronym> host name of the network printer." @@ -25602,7 +25605,7 @@ msgstr "" "<acronym>DNS</acronym> 主機名稱。" #. (itstool) path: step/para -#: book.translate.xml:16979 +#: book.translate.xml:16986 msgid "" "Enable <command>lpd</command> by editing <filename>/etc/rc.conf</filename>, " "adding this line:" @@ -25612,19 +25615,19 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: sect2/programlisting -#: book.translate.xml:16982 book.translate.xml:17470 +#: book.translate.xml:16989 book.translate.xml:17477 #, no-wrap msgid "lpd_enable=\"YES\"" msgstr "" #. (itstool) path: step/para #. (itstool) path: sect2/para -#: book.translate.xml:16984 book.translate.xml:17472 +#: book.translate.xml:16991 book.translate.xml:17479 msgid "Start the service:" msgstr "啟動服務:" #. (itstool) path: step/screen -#: book.translate.xml:16986 +#: book.translate.xml:16993 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service lpd start</userinput>\n" @@ -25632,18 +25635,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:16991 +#: book.translate.xml:16998 msgid "Print a test:" msgstr "測試列印:" #. (itstool) path: step/screen -#: book.translate.xml:16993 +#: book.translate.xml:17000 #, no-wrap msgid "<prompt>#</prompt> <userinput>printf \"1. This printer can print.\\n2. This is the second line.\\n\" | lpr</userinput>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:16996 +#: book.translate.xml:17003 msgid "" "If both lines do not start at the left border, but <quote>stairstep</quote> " "instead, see <xref linkend=\"printing-lpd-filters-stairstep\"/>." @@ -25652,7 +25655,7 @@ msgstr "" "考 <xref linkend=\"printing-lpd-filters-stairstep\"/>。" #. (itstool) path: step/para -#: book.translate.xml:17001 +#: book.translate.xml:17008 msgid "" "Text files can now be printed with <command>lpr</command>. Give the filename " "on the command line, or pipe output directly into <command>lpr</command>." @@ -25661,7 +25664,7 @@ msgstr "" "或者將輸出使用管線符號 (Pipe) 傳送給 <command>lpr</command>。" #. (itstool) path: step/screen -#: book.translate.xml:17006 +#: book.translate.xml:17013 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpr textfile.txt</userinput>\n" @@ -25669,12 +25672,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:17013 +#: book.translate.xml:17020 msgid "Printer Connections" msgstr "印表機連線" #. (itstool) path: sect1/para -#: book.translate.xml:17015 +#: book.translate.xml:17022 msgid "" "Printers are connected to computer systems in a variety of ways. Small " "desktop printers are usually connected directly to a computer's " @@ -25689,18 +25692,18 @@ msgstr "" "電腦共享使用,還有少部分印表機則是連接到較罕見的序列 (Serial) 埠。" #. (itstool) path: sect1/para -#: book.translate.xml:17023 +#: book.translate.xml:17030 msgid "FreeBSD can communicate with all of these types of printers." msgstr "FreeBSD 可以與這些類型的印表機溝通。" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:17028 book.translate.xml:17390 +#: book.translate.xml:17035 book.translate.xml:17397 msgid "<acronym>USB</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:17031 +#: book.translate.xml:17038 msgid "" "<acronym>USB</acronym> printers can be connected to any available " "<acronym>USB</acronym> port on the computer." @@ -25709,7 +25712,7 @@ msgstr "" "acronym> 埠。" #. (itstool) path: listitem/para -#: book.translate.xml:17035 +#: book.translate.xml:17042 msgid "" "When FreeBSD detects a <acronym>USB</acronym> printer, two device entries " "are created: <filename>/dev/ulpt0</filename> and <filename>/dev/unlpt0</" @@ -25727,12 +25730,12 @@ msgstr "" "裝置。<filename>unlpt0</filename> 不會重設 USB 埠。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17050 +#: book.translate.xml:17057 msgid "Parallel (<acronym>IEEE</acronym>-1284)" msgstr "並列 (<acronym>IEEE</acronym>-1284)" #. (itstool) path: listitem/para -#: book.translate.xml:17053 +#: book.translate.xml:17060 msgid "" "The parallel port device is <filename>/dev/lpt0</filename>. This device " "appears whether a printer is attached or not, it is not autodetected." @@ -25741,7 +25744,7 @@ msgstr "" "存在,它並不會自動偵測。" #. (itstool) path: listitem/para -#: book.translate.xml:17058 +#: book.translate.xml:17065 msgid "" "Vendors have largely moved away from these <quote>legacy</quote> ports, and " "many computers no longer have them. Adapters can be used to connect a " @@ -25757,12 +25760,12 @@ msgstr "" "網路。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17070 +#: book.translate.xml:17077 msgid "Serial (RS-232)" msgstr "序列 (RS-232)" #. (itstool) path: listitem/para -#: book.translate.xml:17073 +#: book.translate.xml:17080 msgid "" "Serial ports are another legacy port, rarely used for printers except in " "certain niche applications. Cables, connectors, and required wiring vary " @@ -25772,7 +25775,7 @@ msgstr "" "接頭與需要的佈線方式依需求變化性很大。" #. (itstool) path: listitem/para -#: book.translate.xml:17077 +#: book.translate.xml:17084 msgid "" "For serial ports built into a motherboard, the serial device name is " "<filename>/dev/cuau0</filename> or <filename>/dev/cuau1</filename>. Serial " @@ -25785,7 +25788,7 @@ msgstr "" "filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:17084 +#: book.translate.xml:17091 msgid "" "Several communication parameters must be known to communicate with a serial " "printer. The most important are <emphasis>baud rate</emphasis> or " @@ -25800,17 +25803,17 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:17094 book.translate.xml:17408 +#: book.translate.xml:17101 book.translate.xml:17415 msgid "Network" msgstr "網路" #. (itstool) path: listitem/para -#: book.translate.xml:17097 +#: book.translate.xml:17104 msgid "Network printers are connected directly to the local computer network." msgstr "網路印表機可直接連接到區域網路。" #. (itstool) path: listitem/para -#: book.translate.xml:17100 +#: book.translate.xml:17107 msgid "" "The <acronym>DNS</acronym> hostname of the printer must be known. If the " "printer is assigned a dynamic address by <acronym>DHCP</acronym>, " @@ -25824,7 +25827,7 @@ msgstr "" "<acronym>IP</acronym> 位址可避免這個問題。" #. (itstool) path: listitem/para -#: book.translate.xml:17108 +#: book.translate.xml:17115 msgid "" "Most network printers understand print jobs sent with the <acronym>LPD</" "acronym> protocol. A print queue name can also be specified. Some printers " @@ -25838,12 +25841,12 @@ msgstr "" "<literal>text</literal> 佇列則會在純文字上增加換行符號 (Carriage return)。" #. (itstool) path: listitem/para -#: book.translate.xml:17116 +#: book.translate.xml:17123 msgid "Many network printers can also print data sent directly to port 9100." msgstr "大部份網路印表機也可列印直接傳送到埠號 9100 的資料。" #. (itstool) path: sect2/para -#: book.translate.xml:17125 +#: book.translate.xml:17132 msgid "" "Wired network connections are usually the easiest to set up and give the " "fastest printing. For direct connection to the computer, <acronym>USB</" @@ -25859,12 +25862,12 @@ msgstr "" "式不同,且通訊參數如傳輸速率及同位檢查增加了複雜性,所幸序列印表機並不多。" #. (itstool) path: sect1/title -#: book.translate.xml:17138 +#: book.translate.xml:17145 msgid "Common Page Description Languages" msgstr "常見的頁面描述語言" #. (itstool) path: sect1/para -#: book.translate.xml:17140 +#: book.translate.xml:17147 msgid "" "Data sent to a printer must be in a language that the printer can " "understand. These languages are called Page Description Languages, or " @@ -25874,12 +25877,12 @@ msgstr "" "(Page Description Languages) 或 <acronym>PDL</acronym>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17146 +#: book.translate.xml:17153 msgid "<acronym>ASCII</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:17149 +#: book.translate.xml:17156 msgid "" "Plain <acronym>ASCII</acronym> text is the simplest way to send data to a " "printer. Characters correspond one to one with what will be printed: an " @@ -25897,7 +25900,7 @@ msgstr "" "至不需要編碼或轉譯,列印的結果可直接對應傳送的內容。" #. (itstool) path: listitem/para -#: book.translate.xml:17160 +#: book.translate.xml:17167 msgid "" "Some inexpensive printers cannot print plain <acronym>ASCII</acronym> text. " "This makes them more difficult to set up, but it is usually still possible." @@ -25906,12 +25909,12 @@ msgstr "" "定。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17168 +#: book.translate.xml:17175 msgid "<trademark class=\"registered\">PostScript</trademark>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:17171 +#: book.translate.xml:17178 msgid "" "<trademark class=\"registered\">PostScript</trademark> is almost the " "opposite of <acronym>ASCII</acronym>. Rather than simple text, a <trademark " @@ -25928,7 +25931,7 @@ msgstr "" "通常這個程式語言會由應用程式產生,所以使用者是看不到的。" #. (itstool) path: listitem/para -#: book.translate.xml:17180 +#: book.translate.xml:17187 msgid "" "Inexpensive printers sometimes leave out <trademark class=\"registered" "\">PostScript</trademark> compatibility as a cost-saving measure." @@ -25937,12 +25940,12 @@ msgstr "" "trademark> 的相容性來節省成本。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17186 +#: book.translate.xml:17193 msgid "<acronym>PCL</acronym> (Printer Command Language)" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:17189 +#: book.translate.xml:17196 msgid "" "<acronym>PCL</acronym> is an extension of <acronym>ASCII</acronym>, adding " "escape sequences for formatting, font selection, and printing graphics. Many " @@ -25957,12 +25960,12 @@ msgstr "" "(Superset),並可以提供更快的列印速度。" #. (itstool) path: varlistentry/term -#: book.translate.xml:17201 +#: book.translate.xml:17208 msgid "Host-Based" msgstr "以主機為基礎 (Host-Based)" #. (itstool) path: listitem/para -#: book.translate.xml:17204 +#: book.translate.xml:17211 msgid "" "Manufacturers can reduce the cost of a printer by giving it a simple " "processor and very little memory. These printers are not capable of printing " @@ -25975,7 +25978,7 @@ msgstr "" "稱為<emphasis>以主機為基礎 (Host-based)</emphasis> 的印表機。" #. (itstool) path: listitem/para -#: book.translate.xml:17212 +#: book.translate.xml:17219 msgid "" "Communication between the driver and a host-based printer is often through " "proprietary or undocumented protocols, making them functional only on the " @@ -25985,7 +25988,7 @@ msgstr "" "印表機只能在最常用的作業系統上運作。" #. (itstool) path: sect2/title -#: book.translate.xml:17221 +#: book.translate.xml:17228 msgid "" "Converting <trademark class=\"registered\">PostScript</trademark> to Other " "<acronym>PDL</acronym>s" @@ -25994,7 +25997,7 @@ msgstr "" "<acronym>PDL</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:17224 +#: book.translate.xml:17231 msgid "" "Many applications from the Ports Collection and FreeBSD utilities produce " "<trademark class=\"registered\">PostScript</trademark> output. This table " @@ -26007,32 +26010,32 @@ msgstr "" "acronym> 的工具:" #. (itstool) path: table/title -#: book.translate.xml:17230 +#: book.translate.xml:17237 msgid "Output <acronym>PDL</acronym>s" msgstr "輸出 <acronym>PDL</acronym> 格式" #. (itstool) path: row/entry -#: book.translate.xml:17235 +#: book.translate.xml:17242 msgid "Output <acronym>PDL</acronym>" msgstr "輸出 <acronym>PDL</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17237 +#: book.translate.xml:17244 msgid "Generated By" msgstr "產生由" #. (itstool) path: row/entry -#: book.translate.xml:17244 +#: book.translate.xml:17251 msgid "<acronym>PCL</acronym> or <acronym>PCL5</acronym>" msgstr "<acronym>PCL</acronym> 或 <acronym>PCL5</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17246 book.translate.xml:17254 book.translate.xml:17262 +#: book.translate.xml:17253 book.translate.xml:17261 book.translate.xml:17269 msgid "<package role=\"port\">print/ghostscript9</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17247 +#: book.translate.xml:17254 msgid "" "<literal>-sDEVICE=ljet4</literal> for monochrome, <literal>-sDEVICE=cljet5</" "literal> for color" @@ -26041,12 +26044,12 @@ msgstr "" "sDEVICE=cljet5</literal>" #. (itstool) path: row/entry -#: book.translate.xml:17252 +#: book.translate.xml:17259 msgid "<acronym>PCLXL</acronym> or <acronym>PCL6</acronym>" msgstr "<acronym>PCLXL</acronym> 或 <acronym>PCL6</acronym>" #. (itstool) path: row/entry -#: book.translate.xml:17255 +#: book.translate.xml:17262 msgid "" "<literal>-sDEVICE=pxlmono</literal> for monochrome, <literal>-" "sDEVICE=pxlcolor</literal> for color" @@ -26055,27 +26058,27 @@ msgstr "" "sDEVICE=pxlcolor</literal>" #. (itstool) path: row/entry -#: book.translate.xml:17261 +#: book.translate.xml:17268 msgid "<acronym>ESC/P2</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17263 +#: book.translate.xml:17270 msgid "<literal>-sDEVICE=uniprint</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17267 +#: book.translate.xml:17274 msgid "<acronym>XQX</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:17268 +#: book.translate.xml:17275 msgid "<package role=\"port\">print/foo2zjs</package>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17279 +#: book.translate.xml:17286 msgid "" "For the easiest printing, choose a printer that supports <trademark class=" "\"registered\">PostScript</trademark>. Printers that support <acronym>PCL</" @@ -26095,7 +26098,7 @@ msgstr "" "字檔案。" #. (itstool) path: sect2/para -#: book.translate.xml:17289 +#: book.translate.xml:17296 msgid "" "Line-based printers like typical inkjets usually do not support <trademark " "class=\"registered\">PostScript</trademark> or <acronym>PCL</acronym>. They " @@ -26113,7 +26116,7 @@ msgstr "" "料並列印。" #. (itstool) path: sect2/para -#: book.translate.xml:17298 +#: book.translate.xml:17305 msgid "" "Host-based printers are often more difficult to set up. Some cannot be used " "at all because of proprietary <acronym>PDL</acronym>s. Avoid these printers " @@ -26123,7 +26126,7 @@ msgstr "" "acronym> 而無法使用,盡可能避免使用這類的印表機。" #. (itstool) path: sect2/para -#: book.translate.xml:17303 +#: book.translate.xml:17310 msgid "" "Descriptions of many <acronym>PDL</acronym>s can be found at <link xlink:" "href=\"http://www.undocprint.org/formats/page_description_languages\"/>. The " @@ -26136,12 +26139,12 @@ msgstr "" "org/printers\"/> 查詢。" #. (itstool) path: sect1/title -#: book.translate.xml:17311 +#: book.translate.xml:17318 msgid "Direct Printing" msgstr "直接列印" #. (itstool) path: sect1/para -#: book.translate.xml:17313 +#: book.translate.xml:17320 msgid "" "For occasional printing, files can be sent directly to a printer device " "without any setup. For example, a file called <filename>sample.txt</" @@ -26152,13 +26155,13 @@ msgstr "" "機:" #. (itstool) path: sect1/screen -#: book.translate.xml:17318 +#: book.translate.xml:17325 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp sample.txt /dev/unlpt0</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:17320 +#: book.translate.xml:17327 msgid "" "Direct printing to network printers depends on the abilities of the printer, " "but most accept print jobs on port 9100, and " @@ -26173,18 +26176,18 @@ msgstr "" "<replaceable>netlaser</replaceable> 的印表機列印與上述相同的檔案可:" #. (itstool) path: sect1/screen -#: book.translate.xml:17326 +#: book.translate.xml:17333 #, no-wrap msgid "<prompt>#</prompt> <userinput>nc <replaceable>netlaser</replaceable> 9100 < sample.txt</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:17330 +#: book.translate.xml:17337 msgid "<acronym>LPD</acronym> (Line Printer Daemon)" msgstr "<acronym>LPD</acronym> (行列式印表機 Daemon)" #. (itstool) path: sect1/para -#: book.translate.xml:17332 +#: book.translate.xml:17339 msgid "" "Printing a file in the background is called <emphasis>spooling</emphasis>. A " "spooler allows the user to continue with other programs on the computer " @@ -26194,7 +26197,7 @@ msgstr "" "用者能夠繼續執行電腦的其他程式而不需要等候印表機緩慢的完成列印工作。" #. (itstool) path: sect1/para -#: book.translate.xml:17337 +#: book.translate.xml:17344 msgid "" "FreeBSD includes a spooler called <citerefentry><refentrytitle>lpd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Print jobs are " @@ -26207,12 +26210,12 @@ msgstr "" "citerefentry> 來提交。" #. (itstool) path: sect2/title -#: book.translate.xml:17341 book.translate.xml:28859 +#: book.translate.xml:17348 book.translate.xml:28866 msgid "Initial Setup" msgstr "初始設定" #. (itstool) path: sect2/para -#: book.translate.xml:17343 +#: book.translate.xml:17350 msgid "" "A directory for storing print jobs is created, ownership is set, and the " "permissions are set to prevent other users from viewing the contents of " @@ -26222,7 +26225,7 @@ msgstr "" "些檔案的內容:" #. (itstool) path: sect2/para -#: book.translate.xml:17351 +#: book.translate.xml:17358 msgid "" "Printers are defined in <filename>/etc/printcap</filename>. An entry for " "each printer includes details like a name, the port where it is attached, " @@ -26234,7 +26237,7 @@ msgstr "" "filename> 使用以下內容:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17357 +#: book.translate.xml:17364 #, no-wrap msgid "" "lp:\\\t\t\t\t<co xml:id=\"printing-lpd-co-name\"/>\n" @@ -26246,7 +26249,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:17366 +#: book.translate.xml:17373 msgid "" "The name of this printer. <citerefentry><refentrytitle>lpr</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> sends print jobs to " @@ -26260,30 +26263,30 @@ msgstr "" "<literal>lp</literal>。" #. (itstool) path: callout/para -#: book.translate.xml:17374 +#: book.translate.xml:17381 msgid "" "The device where the printer is connected. Replace this line with the " "appropriate one for the connection type shown here." msgstr "印表機所連接到裝置。替換此行為正確的連線類型,如此處所示。" #. (itstool) path: row/entry -#: book.translate.xml:17382 +#: book.translate.xml:17389 msgid "Connection Type" msgstr "連線類型" #. (itstool) path: row/entry -#: book.translate.xml:17383 +#: book.translate.xml:17390 msgid "Device Entry in <filename>/etc/printcap</filename>" msgstr "在 <filename>/etc/printcap</filename> 的裝置項目" #. (itstool) path: entry/programlisting -#: book.translate.xml:17391 +#: book.translate.xml:17398 #, no-wrap msgid ":lp=/dev/unlpt0:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17393 +#: book.translate.xml:17400 msgid "" "This is the <emphasis>non-resetting</emphasis> <acronym>USB</acronym> " "printer device. If problems are experienced, use <filename>ulpt0</filename> " @@ -26294,28 +26297,28 @@ msgstr "" "<acronym>USB</acronym> 埠。" #. (itstool) path: row/entry -#: book.translate.xml:17403 +#: book.translate.xml:17410 msgid "Parallel" msgstr "並列" #. (itstool) path: entry/para -#: book.translate.xml:17410 +#: book.translate.xml:17417 msgid "For a printer supporting the <acronym>LPD</acronym> protocol:" msgstr "針對支援 <acronym>LPD</acronym> 通訊協定的印表機:" #. (itstool) path: entry/para -#: book.translate.xml:17415 +#: book.translate.xml:17422 msgid "For printers supporting port 9100 printing:" msgstr "針對支援使用埠號 9100 列印的印表機:" #. (itstool) path: entry/programlisting -#: book.translate.xml:17418 +#: book.translate.xml:17425 #, no-wrap msgid ":lp=9100@<replaceable>network-printer-name</replaceable>:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17420 +#: book.translate.xml:17427 msgid "" "For both types, replace <replaceable>network-printer-name</replaceable> with " "the <acronym>DNS</acronym> host name of the network printer." @@ -26324,18 +26327,18 @@ msgstr "" "replaceable> 為網路印表機的 <acronym>DNS</acronym> 主機名稱。" #. (itstool) path: row/entry -#: book.translate.xml:17427 +#: book.translate.xml:17434 msgid "Serial" msgstr "序列" #. (itstool) path: entry/programlisting -#: book.translate.xml:17428 +#: book.translate.xml:17435 #, no-wrap msgid ":lp=/dev/cuau0:br=9600:pa=none:\\" msgstr "" #. (itstool) path: entry/para -#: book.translate.xml:17430 +#: book.translate.xml:17437 msgid "" "These values are for a typical serial printer connected to a motherboard " "serial port. The baud rate is 9600, and no parity is used." @@ -26344,17 +26347,17 @@ msgstr "" "9600 且無同位檢查 (No Parity)。" #. (itstool) path: callout/para -#: book.translate.xml:17441 +#: book.translate.xml:17448 msgid "Suppress the printing of a header page at the start of a print job." msgstr "在列印工作開始時不列印首頁。" #. (itstool) path: callout/para -#: book.translate.xml:17446 +#: book.translate.xml:17453 msgid "Do not limit the maximum size of a print job." msgstr "不限制列印工作的最大尺寸。" #. (itstool) path: callout/para -#: book.translate.xml:17450 +#: book.translate.xml:17457 msgid "" "The path to the spooling directory for this printer. Each printer uses its " "own spooling directory." @@ -26363,12 +26366,12 @@ msgstr "" "(Spooling) 目錄。" #. (itstool) path: callout/para -#: book.translate.xml:17455 +#: book.translate.xml:17462 msgid "The log file where errors on this printer will be reported." msgstr "回報此印表機的錯誤的日誌檔。" #. (itstool) path: sect2/para -#: book.translate.xml:17460 +#: book.translate.xml:17467 msgid "" "After creating <filename>/etc/printcap</filename>, use " "<citerefentry><refentrytitle>chkprintcap</refentrytitle><manvolnum>8</" @@ -26379,18 +26382,18 @@ msgstr "" "manvolnum></citerefentry> 測試印表機是否有錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:17463 +#: book.translate.xml:17470 #, no-wrap msgid "<prompt>#</prompt> <userinput>chkprintcap</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17465 +#: book.translate.xml:17472 msgid "Fix any reported problems before continuing." msgstr "在繼續之前修正任何回報的問題。" #. (itstool) path: sect2/para -#: book.translate.xml:17467 +#: book.translate.xml:17474 msgid "" "Enable <citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> in <filename>/etc/rc.conf</filename>:" @@ -26400,13 +26403,13 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:17474 +#: book.translate.xml:17481 #, no-wrap msgid "<prompt>#</prompt> <userinput>service lpd start</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17478 +#: book.translate.xml:17485 msgid "" "Printing with <citerefentry><refentrytitle>lpr</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>" @@ -26415,7 +26418,7 @@ msgstr "" "manvolnum></citerefentry> 列印" #. (itstool) path: sect2/para -#: book.translate.xml:17480 +#: book.translate.xml:17487 msgid "" "Documents are sent to the printer with <command>lpr</command>. A file to be " "printed can be named on the command line or piped into <command>lpr</" @@ -26424,7 +26427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:17486 +#: book.translate.xml:17493 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpr doc.txt</userinput>\n" @@ -26432,25 +26435,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17489 +#: book.translate.xml:17496 msgid "" "Printers can be selected with <option>-P</option>. To print to a printer " "called <replaceable>laser</replaceable>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:17493 +#: book.translate.xml:17500 #, no-wrap msgid "<prompt>%</prompt> <userinput>lpr -Plaser doc.txt</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17497 +#: book.translate.xml:17504 msgid "Filters" msgstr "過濾器" #. (itstool) path: sect2/para -#: book.translate.xml:17499 +#: book.translate.xml:17506 msgid "" "The examples shown so far have sent the contents of a text file directly to " "the printer. As long as the printer understands the content of those files, " @@ -26458,14 +26461,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17504 +#: book.translate.xml:17511 msgid "" "Some printers are not capable of printing plain text, and the input file " "might not even be plain text." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17507 +#: book.translate.xml:17514 msgid "" "<emphasis>Filters</emphasis> allow files to be translated or processed. The " "typical use is to translate one type of input, like plain text, into a form " @@ -26476,7 +26479,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17515 +#: book.translate.xml:17522 msgid "" "The filters discussed here are <emphasis>input filters</emphasis> or " "<emphasis>text filters</emphasis>. These filters convert the incoming file " @@ -26486,7 +26489,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17522 +#: book.translate.xml:17529 msgid "" "Filters are specified in <filename>/etc/printcap</filename> with the " "<literal>if=</literal> identifier. To use <filename>/usr/local/libexec/" @@ -26495,7 +26498,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17528 +#: book.translate.xml:17535 #, no-wrap msgid "" "lp:\\\n" @@ -26508,14 +26511,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:17538 +#: book.translate.xml:17545 msgid "" "<literal>if=</literal> identifies the <emphasis>input filter</emphasis> that " "will be used on incoming text." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:17545 +#: book.translate.xml:17552 msgid "" "The backslash <emphasis>line continuation</emphasis> characters at the end " "of the lines in <filename>printcap</filename> entries reveal that an entry " @@ -26525,18 +26528,18 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:17552 +#: book.translate.xml:17559 #, no-wrap msgid "lp:lp=/dev/unlpt0:sh:mx#0:sd=/var/spool/lpd/lp:if=/usr/local/libexec/lf2crlf:lf=/var/log/lpd-errs:" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17556 +#: book.translate.xml:17563 msgid "Preventing Stairstepping on Plain Text Printers" msgstr "避免在純文字印表機階梯狀列印" #. (itstool) path: sect3/para -#: book.translate.xml:17558 +#: book.translate.xml:17565 msgid "" "Typical FreeBSD text files contain only a single line feed character at the " "end of each line. These lines will <quote>stairstep</quote> on a standard " @@ -26544,7 +26547,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17562 +#: book.translate.xml:17569 #, no-wrap msgid "" "A printed file looks\n" @@ -26553,7 +26556,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17566 +#: book.translate.xml:17573 msgid "" "A filter can convert the newline characters into carriage returns and " "newlines. The carriage returns make the printer return to the left after " @@ -26562,7 +26565,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17572 +#: book.translate.xml:17579 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26571,37 +26574,37 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17576 book.translate.xml:17611 book.translate.xml:17643 -#: book.translate.xml:17697 +#: book.translate.xml:17583 book.translate.xml:17618 book.translate.xml:17650 +#: book.translate.xml:17704 msgid "Set the permissions and make it executable:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17578 +#: book.translate.xml:17585 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/lf2crlf</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17580 book.translate.xml:17615 +#: book.translate.xml:17587 book.translate.xml:17622 msgid "Modify <filename>/etc/printcap</filename> to use the new filter:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17583 +#: book.translate.xml:17590 #, no-wrap msgid ":if=/usr/local/libexec/lf2crlf:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17585 +#: book.translate.xml:17592 msgid "" "Test the filter by printing the same plain text file. The carriage returns " "will cause each line to start at the left side of the page." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17591 +#: book.translate.xml:17598 msgid "" "Fancy Plain Text on <trademark class=\"registered\">PostScript</trademark> " "Printers with <package>print/enscript</package>" @@ -26610,7 +26613,7 @@ msgstr "" "\">PostScript</trademark> 印表機美化純文字內容" #. (itstool) path: sect3/para -#: book.translate.xml:17594 +#: book.translate.xml:17601 msgid "" "<acronym>GNU</acronym> <application>Enscript</application> converts plain " "text files into nicely-formatted <trademark class=\"registered\">PostScript</" @@ -26623,13 +26626,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17605 +#: book.translate.xml:17612 msgid "" "Create <filename>/usr/local/libexec/enscript</filename> with these contents:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17608 +#: book.translate.xml:17615 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26637,24 +26640,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17613 +#: book.translate.xml:17620 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/enscript</userinput>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17618 +#: book.translate.xml:17625 #, no-wrap msgid ":if=/usr/local/libexec/enscript:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17620 +#: book.translate.xml:17627 msgid "Test the filter by printing a plain text file." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17624 +#: book.translate.xml:17631 msgid "" "Printing <trademark class=\"registered\">PostScript</trademark> to " "<acronym>PCL</acronym> Printers" @@ -26663,7 +26666,7 @@ msgstr "" "acronym> 印表機" #. (itstool) path: sect3/para -#: book.translate.xml:17627 +#: book.translate.xml:17634 msgid "" "Many programs produce <trademark class=\"registered\">PostScript</trademark> " "documents. However, inexpensive printers often only understand plain text or " @@ -26673,7 +26676,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17633 +#: book.translate.xml:17640 msgid "" "Install the Ghostscript <trademark class=\"registered\">PostScript</" "trademark> interpreter, <package role=\"port\">print/ghostscript9</package>, " @@ -26681,13 +26684,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17637 +#: book.translate.xml:17644 msgid "" "Create <filename>/usr/local/libexec/ps2pcl</filename> with these contents:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17640 +#: book.translate.xml:17647 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26695,13 +26698,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17645 +#: book.translate.xml:17652 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/ps2pcl</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17647 +#: book.translate.xml:17654 msgid "" "<trademark class=\"registered\">PostScript</trademark> input sent to this " "script will be rendered and converted to <acronym>PCL</acronym> before being " @@ -26709,25 +26712,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17651 book.translate.xml:17701 +#: book.translate.xml:17658 book.translate.xml:17708 msgid "Modify <filename>/etc/printcap</filename> to use this new input filter:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17654 +#: book.translate.xml:17661 #, no-wrap msgid ":if=/usr/local/libexec/ps2pcl:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17656 +#: book.translate.xml:17663 msgid "" "Test the filter by sending a small <trademark class=\"registered" "\">PostScript</trademark> program to it:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17659 +#: book.translate.xml:17666 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>printf \"%%\\!PS \\n /Helvetica findfont 18 scalefont setfont \\\n" @@ -26735,12 +26738,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17664 +#: book.translate.xml:17671 msgid "Smart Filters" msgstr "智慧過濾器" #. (itstool) path: sect3/para -#: book.translate.xml:17666 +#: book.translate.xml:17673 msgid "" "A filter that detects the type of input and automatically converts it to the " "correct format for the printer can be very convenient. The first two " @@ -26755,7 +26758,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17677 +#: book.translate.xml:17684 #, no-wrap msgid "" "#!/bin/sh\n" @@ -26780,31 +26783,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17699 +#: book.translate.xml:17706 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 555 /usr/local/libexec/psif</userinput>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17704 +#: book.translate.xml:17711 #, no-wrap msgid ":if=/usr/local/libexec/psif:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17706 +#: book.translate.xml:17713 msgid "" "Test the filter by printing <trademark class=\"registered\">PostScript</" "trademark> and plain text files." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17711 +#: book.translate.xml:17718 msgid "Other Smart Filters" msgstr "其他智慧過濾器" #. (itstool) path: sect3/para -#: book.translate.xml:17713 +#: book.translate.xml:17720 msgid "" "Writing a filter that detects many different types of input and formats them " "correctly is challenging. <package role=\"port\">print/apsfilter</package> " @@ -26815,12 +26818,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17725 +#: book.translate.xml:17732 msgid "Multiple Queues" msgstr "多序列" #. (itstool) path: sect2/para -#: book.translate.xml:17727 +#: book.translate.xml:17734 msgid "" "The entries in <filename>/etc/printcap</filename> are really definitions of " "<emphasis>queues</emphasis>. There can be more than one queue for a single " @@ -26829,7 +26832,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17733 +#: book.translate.xml:17740 msgid "" "As an example, consider a networked <trademark class=\"registered" "\">PostScript</trademark> laser printer in an office. Most users want to " @@ -26840,7 +26843,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:17739 +#: book.translate.xml:17746 #, no-wrap msgid "" "textprinter:\\\n" @@ -26860,7 +26863,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17754 +#: book.translate.xml:17761 msgid "" "Documents sent to <literal>textprinter</literal> will be formatted by the " "<filename>/usr/local/libexec/enscript</filename> filter shown in an earlier " @@ -26870,7 +26873,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17761 +#: book.translate.xml:17768 msgid "" "This multiple queue technique can be used to provide direct access to all " "kinds of printer features. A printer with a duplexer could use two queues, " @@ -26880,26 +26883,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17770 +#: book.translate.xml:17777 msgid "Monitoring and Controlling Printing" msgstr "監視與控制列印" #. (itstool) path: sect2/para -#: book.translate.xml:17772 +#: book.translate.xml:17779 msgid "" "Several utilities are available to monitor print jobs and check and control " "printer operation." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17776 +#: book.translate.xml:17783 msgid "" "<citerefentry><refentrytitle>lpq</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17778 +#: book.translate.xml:17785 msgid "" "<citerefentry><refentrytitle>lpq</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> shows the status of a user's print jobs. Print jobs from other " @@ -26907,12 +26910,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17781 +#: book.translate.xml:17788 msgid "Show the current user's pending jobs on a single printer:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17784 +#: book.translate.xml:17791 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq -P<replaceable>lp</replaceable></userinput>\n" @@ -26921,12 +26924,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17788 +#: book.translate.xml:17795 msgid "Show the current user's pending jobs on all printers:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17791 +#: book.translate.xml:17798 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq -a</userinput>\n" @@ -26940,14 +26943,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17802 +#: book.translate.xml:17809 msgid "" "<citerefentry><refentrytitle>lprm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17804 +#: book.translate.xml:17811 msgid "" "<citerefentry><refentrytitle>lprm</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> is used to remove print jobs. Normal users are only allowed to " @@ -26956,12 +26959,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17809 +#: book.translate.xml:17816 msgid "Remove all pending jobs from a printer:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17811 +#: book.translate.xml:17818 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lprm -P<replaceable>lp</replaceable> -</userinput>\n" @@ -26974,7 +26977,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17819 +#: book.translate.xml:17826 msgid "" "Remove a single job from a printer. <citerefentry><refentrytitle>lpq</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is used to find the " @@ -26982,7 +26985,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17822 +#: book.translate.xml:17829 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpq</userinput>\n" @@ -26994,14 +26997,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17831 +#: book.translate.xml:17838 msgid "" "<citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17833 +#: book.translate.xml:17840 msgid "" "<citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> is used to check and modify printer status. <literal>lpc</" @@ -27014,12 +27017,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17842 +#: book.translate.xml:17849 msgid "Show the status of all printers:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17844 +#: book.translate.xml:17851 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>lpc status all</userinput>\n" @@ -27036,14 +27039,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17856 +#: book.translate.xml:17863 msgid "" "Prevent a printer from accepting new jobs, then begin accepting new jobs " "again:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17859 +#: book.translate.xml:17866 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc disable <replaceable>lp</replaceable></userinput>\n" @@ -27055,13 +27058,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17866 +#: book.translate.xml:17873 msgid "" "Stop printing, but continue to accept new jobs. Then begin printing again:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17869 +#: book.translate.xml:17876 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc stop <replaceable>lp</replaceable></userinput>\n" @@ -27074,12 +27077,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17877 +#: book.translate.xml:17884 msgid "Restart a printer after some error condition:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17879 +#: book.translate.xml:17886 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc restart <replaceable>lp</replaceable></userinput>\n" @@ -27090,14 +27093,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17885 +#: book.translate.xml:17892 msgid "" "Turn the print queue off and disable printing, with a message to explain the " "problem to users:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17888 +#: book.translate.xml:17895 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc down <replaceable>lp</replaceable> Repair parts will arrive on Monday</userinput>\n" @@ -27107,12 +27110,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17893 +#: book.translate.xml:17900 msgid "Re-enable a printer that is down:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17895 +#: book.translate.xml:17902 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>lpc up <replaceable>lp</replaceable></userinput>\n" @@ -27122,31 +27125,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17900 +#: book.translate.xml:17907 msgid "" "See <citerefentry><refentrytitle>lpc</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for more commands and options." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17905 +#: book.translate.xml:17912 msgid "Shared Printers" msgstr "分享印表機" #. (itstool) path: sect2/para -#: book.translate.xml:17907 +#: book.translate.xml:17914 msgid "" "Printers are often shared by multiple users in businesses and schools. " "Additional features are provided to make sharing printers more convenient." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17912 +#: book.translate.xml:17919 msgid "Aliases" msgstr "別名" #. (itstool) path: sect3/para -#: book.translate.xml:17914 +#: book.translate.xml:17921 msgid "" "The printer name is set in the first line of the entry in <filename>/etc/" "printcap</filename>. Additional names, or <emphasis>aliases</emphasis>, can " @@ -27155,39 +27158,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:17920 +#: book.translate.xml:17927 #, no-wrap msgid "lp|<replaceable>repairsprinter</replaceable>|<replaceable>salesprinter</replaceable>:\\" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17922 +#: book.translate.xml:17929 msgid "" "Aliases can be used in place of the printer name. For example, users in the " "Sales department print to their printer with" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17926 +#: book.translate.xml:17933 #, no-wrap msgid "<prompt>%</prompt> <userinput>lpr -P<replaceable>salesprinter</replaceable> <replaceable>sales-report.txt</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17928 +#: book.translate.xml:17935 msgid "" "Users in the Repairs department print to <emphasis>their</emphasis> printer " "with" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:17931 +#: book.translate.xml:17938 #, no-wrap msgid "<prompt>%</prompt> <userinput>lpr -P<replaceable>repairsprinter</replaceable> <replaceable>repairs-report.txt</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17933 +#: book.translate.xml:17940 msgid "" "All of the documents print on that single printer. When the Sales department " "grows enough to need their own printer, the alias can be removed from the " @@ -27197,12 +27200,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:17942 +#: book.translate.xml:17949 msgid "Header Pages" msgstr "頁首" #. (itstool) path: sect3/para -#: book.translate.xml:17944 +#: book.translate.xml:17951 msgid "" "It can be difficult for users to locate their documents in the stack of " "pages produced by a busy shared printer. <emphasis>Header pages</emphasis> " @@ -27213,7 +27216,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17952 +#: book.translate.xml:17959 msgid "" "Enabling header pages differs depending on whether the printer is connected " "directly to the computer with a <acronym>USB</acronym>, parallel, or serial " @@ -27221,7 +27224,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17957 +#: book.translate.xml:17964 msgid "" "Header pages on directly-connected printers are enabled by removing the " "<literal>:sh:\\</literal> (Suppress Header) line from the entry in " @@ -27233,7 +27236,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:17967 +#: book.translate.xml:17974 msgid "" "Header pages for network printers must be configured on the printer itself. " "Header page entries in <filename>/etc/printcap</filename> are ignored. " @@ -27242,26 +27245,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17978 book.translate.xml:22789 +#: book.translate.xml:17985 book.translate.xml:22796 msgid "References" msgstr "參考文獻" #. (itstool) path: sect2/para -#: book.translate.xml:17980 +#: book.translate.xml:17987 msgid "" "Example files: <filename role=\"directory\">/usr/share/examples/printing/</" "filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17982 +#: book.translate.xml:17989 msgid "" "The <emphasis>4.3BSD Line Printer Spooler Manual</emphasis>, <filename>/usr/" "share/doc/smm/07.lpd/paper.ascii.gz</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:17986 +#: book.translate.xml:17993 msgid "" "Manual pages: <citerefentry><refentrytitle>printcap</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>, " @@ -27275,12 +27278,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:17992 +#: book.translate.xml:17999 msgid "Other Printing Systems" msgstr "其他列印系統" #. (itstool) path: sect1/para -#: book.translate.xml:17994 +#: book.translate.xml:18001 msgid "" "Several other printing systems are available in addition to the built-in " "<citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</manvolnum></" @@ -27289,14 +27292,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:17999 +#: book.translate.xml:18006 msgid "" "<acronym>CUPS</acronym> (Common <trademark class=\"registered\">UNIX</" "trademark> Printing System)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18002 +#: book.translate.xml:18009 msgid "" "<acronym>CUPS</acronym> is a popular printing system available on many " "operating systems. Using <acronym>CUPS</acronym> on FreeBSD is documented in " @@ -27305,12 +27308,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:18009 +#: book.translate.xml:18016 msgid "HPLIP" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18011 +#: book.translate.xml:18018 msgid "" "Hewlett Packard provides a printing system that supports many of their " "inkjet and laser printers. The port is <package role=\"port\">print/hplip</" @@ -27321,12 +27324,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:18020 +#: book.translate.xml:18027 msgid "LPRng" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18022 +#: book.translate.xml:18029 msgid "" "<application>LPRng</application> was developed as an enhanced alternative to " "<citerefentry><refentrytitle>lpd</refentrytitle><manvolnum>8</manvolnum></" @@ -27336,38 +27339,38 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:18040 +#: book.translate.xml:18047 msgid "<trademark class=\"registered\">Linux</trademark> Binary Compatibility" msgstr "<trademark class=\"registered\">Linux</trademark> Binary 相容性" #. (itstool) path: authorgroup/author -#: book.translate.xml:18043 +#: book.translate.xml:18050 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured and parts updated by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:18054 +#: book.translate.xml:18061 msgid "" "<personname> <firstname>Brian N.</firstname> <surname>Handy</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:18062 +#: book.translate.xml:18069 msgid "" "<personname> <firstname>Rich</firstname> <surname>Murphey</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:18074 +#: book.translate.xml:18081 msgid "<primary>Linux binary compatibility</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18082 +#: book.translate.xml:18089 msgid "" "FreeBSD provides binary compatibility with <trademark class=\"registered" "\">Linux</trademark>, allowing users to install and run most <trademark " @@ -27384,7 +27387,7 @@ msgstr "" "現比在 <trademark class=\"registered\">Linux</trademark> 好。" #. (itstool) path: sect1/para -#: book.translate.xml:18088 +#: book.translate.xml:18095 msgid "" "However, some <trademark class=\"registered\">Linux</trademark>-specific " "operating system features are not supported under FreeBSD. For example, " @@ -27398,7 +27401,7 @@ msgstr "" "擬 8086 模式,會無法在 FreeBSD 執行。" #. (itstool) path: note/para -#: book.translate.xml:18094 +#: book.translate.xml:18101 msgid "" "Support for 64-bit binary compatibility with <trademark class=\"registered" "\">Linux</trademark> was added in FreeBSD 10.3." @@ -27407,7 +27410,7 @@ msgstr "" "trademark> Binary 相容性。" #. (itstool) path: listitem/para -#: book.translate.xml:18102 +#: book.translate.xml:18109 msgid "" "How to enable <trademark class=\"registered\">Linux</trademark> binary " "compatibility on a FreeBSD system." @@ -27416,7 +27419,7 @@ msgstr "" "Binary 相容模式。" #. (itstool) path: listitem/para -#: book.translate.xml:18107 +#: book.translate.xml:18114 msgid "" "How to install additional <trademark class=\"registered\">Linux</trademark> " "shared libraries." @@ -27424,7 +27427,7 @@ msgstr "" "如何安裝其他的 <trademark class=\"registered\">Linux</trademark> 共用程式庫。" #. (itstool) path: listitem/para -#: book.translate.xml:18112 +#: book.translate.xml:18119 msgid "" "How to install <trademark class=\"registered\">Linux</trademark> " "applications on a FreeBSD system." @@ -27433,7 +27436,7 @@ msgstr "" "用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:18117 +#: book.translate.xml:18124 msgid "" "The implementation details of <trademark class=\"registered\">Linux</" "trademark> compatibility in FreeBSD." @@ -27442,26 +27445,26 @@ msgstr "" "細節。" #. (itstool) path: listitem/para -#: book.translate.xml:18126 +#: book.translate.xml:18133 msgid "" "Know how to install <link linkend=\"ports\">additional third-party software</" "link>." msgstr "知道如何安裝 <link linkend=\"ports\">其他的第三方軟體</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:18134 +#: book.translate.xml:18141 msgid "" "Configuring <trademark class=\"registered\">Linux</trademark> Binary " "Compatibility" msgstr "設定 <trademark class=\"registered\">Linux</trademark> Binary 相容性" #. (itstool) path: sect1/indexterm -#: book.translate.xml:18136 +#: book.translate.xml:18143 msgid "<primary>Ports Collection</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18138 +#: book.translate.xml:18145 msgid "" "By default, <trademark class=\"registered\">Linux</trademark> libraries are " "not installed and <trademark class=\"registered\">Linux</trademark> binary " @@ -27475,7 +27478,7 @@ msgstr "" "FreeBSD Port 套件集安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:18143 +#: book.translate.xml:18150 msgid "" "Before attempting to build the port, load the <trademark class=\"registered" "\">Linux</trademark> kernel module, otherwise the build will fail:" @@ -27484,29 +27487,29 @@ msgstr "" "核心模組,否則編譯會失敗:" #. (itstool) path: sect1/screen -#: book.translate.xml:18146 +#: book.translate.xml:18153 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload linux</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18148 +#: book.translate.xml:18155 msgid "For 64-bit compatibility:" -msgstr "" +msgstr "對 64-位元的相容性:" #. (itstool) path: sect1/screen -#: book.translate.xml:18150 +#: book.translate.xml:18157 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload linux64</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18152 +#: book.translate.xml:18159 msgid "To verify that the module is loaded:" msgstr "確認模組已載入:" #. (itstool) path: sect1/screen -#: book.translate.xml:18154 +#: book.translate.xml:18161 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>kldstat</userinput>\n" @@ -27516,7 +27519,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18159 +#: book.translate.xml:18166 msgid "" "The <package>emulators/linux_base-c6</package> package or port is the " "easiest way to install a base set of <trademark class=\"registered\">Linux</" @@ -27527,7 +27530,7 @@ msgstr "" "件或是 Port 。要安裝 Port:" #. (itstool) path: sect1/screen -#: book.translate.xml:18164 +#: book.translate.xml:18171 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>printf \"compat.linux.osrelease=2.6.18\\n\" >> /etc/sysctl.conf</userinput>\n" @@ -27536,7 +27539,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18168 +#: book.translate.xml:18175 msgid "" "For <trademark class=\"registered\">Linux</trademark> compatibility to be " "enabled at boot time, add this line to <filename>/etc/rc.conf</filename>:" @@ -27545,25 +27548,27 @@ msgstr "" "加入這行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:18171 +#: book.translate.xml:18178 #, no-wrap msgid "linux_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:18173 +#: book.translate.xml:18180 msgid "" "On 64-bit machines, <filename>/etc/rc.d/abi</filename> will automatically " "load the module for 64-bit emulation." msgstr "" +"在 64-位元的機器上,<filename>/etc/rc.d/abi</filename> 會自動載入用來做 64-位" +"元模擬的模組。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:18176 +#: book.translate.xml:18183 msgid "<primary>kernel options</primary> <secondary>COMPAT_LINUX</secondary>" msgstr "<primary>核心選項</primary> <secondary>COMPAT_LINUX</secondary>" #. (itstool) path: sect1/para -#: book.translate.xml:18181 +#: book.translate.xml:18188 msgid "" "Users who prefer to statically link <trademark class=\"registered\">Linux</" "trademark> binary compatibility into a custom kernel should add " @@ -27576,17 +27581,17 @@ msgstr "" "定檔。 編譯並安裝新核心的方法,如 <xref linkend=\"kernelconfig\"/> 所述。" #. (itstool) path: sect2/title -#: book.translate.xml:18188 +#: book.translate.xml:18195 msgid "Installing Additional Libraries Manually" msgstr "手動安裝其他程式庫" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18190 +#: book.translate.xml:18197 msgid "<primary>shared libraries</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18194 +#: book.translate.xml:18201 msgid "" "If a <trademark class=\"registered\">Linux</trademark> application complains " "about missing shared libraries after configuring <trademark class=" @@ -27600,7 +27605,7 @@ msgstr "" "Binary 需要哪個共用程式庫並手動安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:18199 +#: book.translate.xml:18206 msgid "" "From a <trademark class=\"registered\">Linux</trademark> system, " "<command>ldd</command> can be used to determine which shared libraries the " @@ -27616,7 +27621,7 @@ msgstr "" "個指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:18206 +#: book.translate.xml:18213 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ldd linuxdoom</userinput>\n" @@ -27626,12 +27631,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18211 +#: book.translate.xml:18218 msgid "<primary>symbolic links</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18215 +#: book.translate.xml:18222 msgid "" "Then, copy all the files in the last column of the output from the " "<trademark class=\"registered\">Linux</trademark> system into <filename>/" @@ -27645,7 +27650,7 @@ msgstr "" "FreeBSD 系統產生以下檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:18222 +#: book.translate.xml:18229 #, no-wrap msgid "" "/compat/linux/usr/X11/lib/libXt.so.3.1.0\n" @@ -27657,7 +27662,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18229 +#: book.translate.xml:18236 msgid "" "If a <trademark class=\"registered\">Linux</trademark> shared library " "already exists with a matching major revision number to the first column of " @@ -27672,12 +27677,12 @@ msgstr "" "只要符號連結指向新版的程式庫,舊版便可移除。" #. (itstool) path: sect2/para -#: book.translate.xml:18237 +#: book.translate.xml:18244 msgid "For example, these libraries already exist on the FreeBSD system:" msgstr "例如,以下程式庫已存在 FreeBSD 系統:" #. (itstool) path: sect2/screen -#: book.translate.xml:18240 +#: book.translate.xml:18247 #, no-wrap msgid "" "/compat/linux/lib/libc.so.4.6.27\n" @@ -27685,19 +27690,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18243 +#: book.translate.xml:18250 msgid "" "and <command>ldd</command> indicates that a binary requires a later version:" msgstr "且 <command>ldd</command> 顯示 Binary 需要使用較新的版本:" #. (itstool) path: sect2/screen -#: book.translate.xml:18246 +#: book.translate.xml:18253 #, no-wrap msgid "libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18248 +#: book.translate.xml:18255 msgid "" "Since the existing library is only one or two versions out of date in the " "last digit, the program should still work with the slightly older version. " @@ -27709,7 +27714,7 @@ msgstr "" "本:" #. (itstool) path: sect2/screen -#: book.translate.xml:18254 +#: book.translate.xml:18261 #, no-wrap msgid "" "/compat/linux/lib/libc.so.4.6.29\n" @@ -27717,7 +27722,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18257 +#: book.translate.xml:18264 msgid "" "Generally, one will need to look for the shared libraries that <trademark " "class=\"registered\">Linux</trademark> binaries depend on only the first few " @@ -27734,7 +27739,7 @@ msgstr "" "\"registered\">Linux</trademark> Binary,便不再需要額外的動作。" #. (itstool) path: sect2/title -#: book.translate.xml:18266 +#: book.translate.xml:18273 msgid "" "Installing <trademark class=\"registered\">Linux</trademark> <acronym>ELF</" "acronym> Binaries" @@ -27743,12 +27748,12 @@ msgstr "" "acronym> Binary" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18269 +#: book.translate.xml:18276 msgid "<primary>Linux</primary> <secondary>ELF binaries</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18274 +#: book.translate.xml:18281 msgid "" "<acronym>ELF</acronym> binaries sometimes require an extra step. When an " "unbranded <acronym>ELF</acronym> binary is executed, it will generate an " @@ -27758,7 +27763,7 @@ msgstr "" "的 <acronym>ELF</acronym> Binary,會產生錯誤訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:18278 +#: book.translate.xml:18285 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>./my-linux-elf-binary</userinput>\n" @@ -27767,7 +27772,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18282 +#: book.translate.xml:18289 msgid "" "To help the FreeBSD kernel distinguish between a FreeBSD <acronym>ELF</" "acronym> binary and a <trademark class=\"registered\">Linux</trademark> " @@ -27780,18 +27785,18 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:18286 +#: book.translate.xml:18293 #, no-wrap msgid "<prompt>%</prompt> <userinput>brandelf -t Linux my-linux-elf-binary</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:18288 +#: book.translate.xml:18295 msgid "<primary>GNU toolchain</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18292 +#: book.translate.xml:18299 msgid "" "Since the GNU toolchain places the appropriate branding information into " "<acronym>ELF</acronym> binaries automatically, this step is usually not " @@ -27801,7 +27806,7 @@ msgstr "" "不需要這個步驟。" #. (itstool) path: sect2/title -#: book.translate.xml:18298 +#: book.translate.xml:18305 msgid "" "Installing a <trademark class=\"registered\">Linux</trademark> <acronym>RPM</" "acronym> Based Application" @@ -27810,7 +27815,7 @@ msgstr "" "acronym> 為基礎的應用程式" #. (itstool) path: sect2/para -#: book.translate.xml:18301 +#: book.translate.xml:18308 msgid "" "To install a <trademark class=\"registered\">Linux</trademark> <acronym>RPM</" "acronym>-based application, first install the <package>archivers/rpm4</" @@ -27824,7 +27829,7 @@ msgstr "" "這個指令安裝 <filename>.rpm</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:18308 +#: book.translate.xml:18315 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /compat/linux</userinput>\n" @@ -27832,7 +27837,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18311 +#: book.translate.xml:18318 msgid "" "If necessary, <command>brandelf</command> the installed <acronym>ELF</" "acronym> binaries. Note that this will prevent a clean uninstall." @@ -27841,17 +27846,17 @@ msgstr "" "Binary。注意,這將會無法乾淨地解除安裝。" #. (itstool) path: sect2/title -#: book.translate.xml:18317 +#: book.translate.xml:18324 msgid "Configuring the Hostname Resolver" msgstr "設定主機名稱解析器" #. (itstool) path: sect2/para -#: book.translate.xml:18319 +#: book.translate.xml:18326 msgid "If <acronym>DNS</acronym> does not work or this error appears:" msgstr "如果 <acronym>DNS</acronym> 無法運作或出現這個錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:18322 +#: book.translate.xml:18329 #, no-wrap msgid "" "resolv+: \"bind\" is an invalid keyword resolv+:\n" @@ -27859,12 +27864,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18325 +#: book.translate.xml:18332 msgid "configure <filename>/compat/linux/etc/host.conf</filename> as follows:" msgstr "將 <filename>/compat/linux/etc/host.conf</filename> 設定如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:18328 +#: book.translate.xml:18335 #, no-wrap msgid "" "order hosts, bind\n" @@ -27872,7 +27877,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:18331 +#: book.translate.xml:18338 msgid "" "This specifies that <filename>/etc/hosts</filename> is searched first and " "<acronym>DNS</acronym> is searched second. When <filename>/compat/linux/etc/" @@ -27889,12 +27894,12 @@ msgstr "" "literal>。" #. (itstool) path: sect1/title -#: book.translate.xml:19166 book.translate.xml:40298 book.translate.xml:51337 +#: book.translate.xml:19173 book.translate.xml:40432 book.translate.xml:50958 msgid "Advanced Topics" msgstr "進階主題" #. (itstool) path: sect1/para -#: book.translate.xml:19168 +#: book.translate.xml:19175 msgid "" "This section describes how <trademark class=\"registered\">Linux</trademark> " "binary compatibility works and is based on an email written to <link xlink:" @@ -27905,12 +27910,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19173 +#: book.translate.xml:19180 msgid "<primary>execution class loader</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19175 +#: book.translate.xml:19182 msgid "" "FreeBSD has an abstraction called an <quote>execution class loader</quote>. " "This is a wedge into the <citerefentry><refentrytitle>execve</" @@ -27918,7 +27923,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19179 +#: book.translate.xml:19186 msgid "" "Historically, the <trademark class=\"registered\">UNIX</trademark> loader " "examined the magic number (generally the first 4 or 8 bytes of the file) to " @@ -27927,7 +27932,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19184 +#: book.translate.xml:19191 msgid "" "If it was not the binary type for the system, the " "<citerefentry><refentrytitle>execve</refentrytitle><manvolnum>2</manvolnum></" @@ -27937,7 +27942,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19190 +#: book.translate.xml:19197 msgid "" "Later, a hack was made for <citerefentry><refentrytitle>sh</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to examine the first " @@ -27947,7 +27952,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19194 +#: book.translate.xml:19201 msgid "" "FreeBSD has a list of loaders, instead of a single loader, with a fallback " "to the <literal>#!</literal> loader for running shell interpreters or shell " @@ -27955,17 +27960,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19198 +#: book.translate.xml:19205 msgid "<primary>ELF</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19202 book.translate.xml:53387 +#: book.translate.xml:19209 book.translate.xml:53008 msgid "<primary>Solaris</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19206 +#: book.translate.xml:19213 msgid "" "For the <trademark class=\"registered\">Linux</trademark> <acronym>ABI</" "acronym> support, FreeBSD sees the magic number as an ELF binary. The ELF " @@ -27975,7 +27980,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19212 +#: book.translate.xml:19219 msgid "" "For <trademark class=\"registered\">Linux</trademark> binaries to function, " "they must be <emphasis>branded</emphasis> as type <literal>Linux</literal> " @@ -27984,18 +27989,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:19216 +#: book.translate.xml:19223 #, no-wrap msgid "<prompt>#</prompt> <userinput>brandelf -t Linux file</userinput>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19218 +#: book.translate.xml:19225 msgid "<primary>ELF</primary> <secondary>branding</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19223 +#: book.translate.xml:19230 msgid "" "When the ELF loader sees the <literal>Linux</literal> brand, the loader " "replaces a pointer in the <literal>proc</literal> structure. All system " @@ -28006,7 +28011,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19231 +#: book.translate.xml:19238 msgid "" "The <trademark class=\"registered\">Linux</trademark> system call vector " "contains, among other things, a list of <literal>sysent[]</literal> entries " @@ -28014,7 +28019,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19235 +#: book.translate.xml:19242 msgid "" "When a system call is called by the <trademark class=\"registered\">Linux</" "trademark> binary, the trap code dereferences the system call function " @@ -28024,7 +28029,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19240 +#: book.translate.xml:19247 msgid "" "<trademark class=\"registered\">Linux</trademark> mode dynamically " "<emphasis>reroots</emphasis> lookups. This is, in effect, equivalent to the " @@ -28046,7 +28051,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19257 +#: book.translate.xml:19264 msgid "" "In effect, there is a <trademark class=\"registered\">Linux</trademark> " "kernel in the FreeBSD kernel. The various underlying functions that " @@ -28064,7 +28069,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19270 +#: book.translate.xml:19277 msgid "" "Technically, this is not really emulation, it is an <acronym>ABI</acronym> " "implementation. It is sometimes called <quote><trademark class=\"registered" @@ -28075,12 +28080,12 @@ msgid "" msgstr "" #. (itstool) path: part/title -#: book.translate.xml:19282 +#: book.translate.xml:19289 msgid "System Administration" msgstr "系統管理" #. (itstool) path: partintro/para -#: book.translate.xml:19285 +#: book.translate.xml:19292 msgid "" "The remaining chapters cover all aspects of FreeBSD system administration. " "Each chapter starts by describing what will be learned as a result of " @@ -28092,7 +28097,7 @@ msgstr "" "的一些背景知識。" #. (itstool) path: partintro/para -#: book.translate.xml:19291 +#: book.translate.xml:19298 msgid "" "These chapters are designed to be read as the information is needed. They do " "not need to be read in any particular order, nor must all of them be read " @@ -28102,43 +28107,43 @@ msgstr "" "要將這些章節全部過讀之後才開始用 FreeBSD。" #. (itstool) path: info/title -#: book.translate.xml:19306 +#: book.translate.xml:19313 msgid "Configuration and Tuning" msgstr "設定與調校" #. (itstool) path: authorgroup/author -#: book.translate.xml:19309 +#: book.translate.xml:19316 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:19319 +#: book.translate.xml:19326 msgid "" "<personname> <firstname>Mike</firstname> <surname>Smith</surname> </" "personname> <contrib>Based on a tutorial written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:19329 +#: book.translate.xml:19336 msgid "" "<personname> <firstname>Matt</firstname> <surname>Dillon</surname> </" "personname> <contrib>Also based on tuning(7) written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19342 +#: book.translate.xml:19349 msgid "<primary>system configuration</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19345 +#: book.translate.xml:19352 msgid "<primary>system optimization</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19349 +#: book.translate.xml:19356 msgid "" "One of the important aspects of FreeBSD is proper system configuration. This " "chapter explains much of the FreeBSD configuration process, including some " @@ -28148,7 +28153,7 @@ msgstr "" "紹 FreeBSD 的設定流程,包括一些可以調整 FreeBSD 效能的參數設定。" #. (itstool) path: listitem/para -#: book.translate.xml:19358 +#: book.translate.xml:19365 msgid "" "The basics of <filename>rc.conf</filename> configuration and <filename>/usr/" "local/etc/rc.d</filename> startup scripts." @@ -28157,23 +28162,23 @@ msgstr "" "filename> 啟動 Script。" #. (itstool) path: listitem/para -#: book.translate.xml:19364 +#: book.translate.xml:19371 msgid "How to configure and test a network card." msgstr "如何設定並測試網路卡。" #. (itstool) path: listitem/para -#: book.translate.xml:19368 +#: book.translate.xml:19375 msgid "How to configure virtual hosts on network devices." msgstr "如何在網路裝置上設定虛擬主機。" #. (itstool) path: listitem/para -#: book.translate.xml:19373 +#: book.translate.xml:19380 msgid "" "How to use the various configuration files in <filename>/etc</filename>." msgstr "如何使用在 <filename>/etc</filename> 中的各種設定檔。" #. (itstool) path: listitem/para -#: book.translate.xml:19378 +#: book.translate.xml:19385 msgid "" "How to tune FreeBSD using <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variables." @@ -28182,13 +28187,13 @@ msgstr "" "manvolnum></citerefentry> 變數調校 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:19382 +#: book.translate.xml:19389 msgid "How to tune disk performance and modify kernel limitations." msgstr "如何調校磁碟效能及修改核心限制。" #. (itstool) path: listitem/para -#: book.translate.xml:19391 book.translate.xml:29514 book.translate.xml:31261 -#: book.translate.xml:35082 book.translate.xml:46270 +#: book.translate.xml:19398 book.translate.xml:29521 book.translate.xml:31268 +#: book.translate.xml:35216 book.translate.xml:45891 msgid "" "Understand <trademark class=\"registered\">UNIX</trademark> and FreeBSD " "basics (<xref linkend=\"basics\"/>)." @@ -28197,24 +28202,24 @@ msgstr "" "linkend=\"basics\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:19396 +#: book.translate.xml:19403 msgid "" "Be familiar with the basics of kernel configuration and compilation (<xref " "linkend=\"kernelconfig\"/>)." msgstr "熟悉核心設定與編譯的基礎 (<xref linkend=\"kernelconfig\"/>)。" #. (itstool) path: info/title -#: book.translate.xml:19404 +#: book.translate.xml:19411 msgid "Starting Services" msgstr "啟動服務" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19417 +#: book.translate.xml:19424 msgid "<primary>services</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19421 +#: book.translate.xml:19428 msgid "" "Many users install third party software on FreeBSD from the Ports Collection " "and require the installed services to be started upon system initialization. " @@ -28229,7 +28234,7 @@ msgstr "" "將說明可用來啟動第三方軟體的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:19430 +#: book.translate.xml:19437 msgid "" "In FreeBSD, most included services, such as " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -28240,12 +28245,12 @@ msgstr "" "Script 來執行。" #. (itstool) path: sect2/title -#: book.translate.xml:19434 +#: book.translate.xml:19441 msgid "Extended Application Configuration" msgstr "延伸應用程式設定" #. (itstool) path: sect2/para -#: book.translate.xml:19436 +#: book.translate.xml:19443 msgid "" "Now that FreeBSD includes <filename>rc.d</filename>, configuration of " "application startup is easier and provides more features. Using the key " @@ -28261,7 +28266,7 @@ msgstr "" "Script 可能會如下例所示:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19445 +#: book.translate.xml:19452 #, no-wrap msgid "" "#!/bin/sh\n" @@ -28290,7 +28295,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19469 +#: book.translate.xml:19476 msgid "" "This script will ensure that the provided <literal>utility</literal> will be " "started after the <literal>DAEMON</literal> pseudo-service. It also provides " @@ -28301,20 +28306,20 @@ msgstr "" "<acronym>PID</acronym>) 的方法。" #. (itstool) path: sect2/para -#: book.translate.xml:19475 +#: book.translate.xml:19482 msgid "" "This application could then have the following line placed in <filename>/etc/" "rc.conf</filename>:" msgstr "接著此應用程式便可將下行放到 <filename>/etc/rc.conf</filename> 中:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19478 +#: book.translate.xml:19485 #, no-wrap msgid "utility_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19480 +#: book.translate.xml:19487 msgid "" "This method allows for easier manipulation of command line arguments, " "inclusion of the default functions provided in <filename>/etc/rc.subr</" @@ -28328,12 +28333,12 @@ msgstr "" "<filename>rc.conf</filename> 簡單的設定。" #. (itstool) path: sect2/title -#: book.translate.xml:19488 +#: book.translate.xml:19495 msgid "Using Services to Start Services" msgstr "使用服務來啟動其他服務" #. (itstool) path: sect2/para -#: book.translate.xml:19490 +#: book.translate.xml:19497 msgid "" "Other services can be started using <citerefentry><refentrytitle>inetd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Working with " @@ -28347,7 +28352,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 以及其設定的深入說明。" #. (itstool) path: sect2/para -#: book.translate.xml:19495 +#: book.translate.xml:19502 msgid "" "In some cases, it may make more sense to use " "<citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></" @@ -28366,7 +28371,7 @@ msgstr "" "序,所以這個方法有不少優點,這讓一般的使用者也可以啟動與維護自己的應用程式。" #. (itstool) path: sect2/para -#: book.translate.xml:19502 +#: book.translate.xml:19509 msgid "" "The <literal>@reboot</literal> feature of <citerefentry><refentrytitle>cron</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, may be used in place " @@ -28380,7 +28385,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 後執行。" #. (itstool) path: info/title -#: book.translate.xml:19511 +#: book.translate.xml:19518 msgid "" "Configuring <citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -28389,12 +28394,12 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:19524 +#: book.translate.xml:19531 msgid "<primary>cron</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19529 +#: book.translate.xml:19536 msgid "" "One of the most useful utilities in FreeBSD is <application>cron</" "application>. This utility runs in the background and regularly checks " @@ -28412,7 +28417,7 @@ msgstr "" "firstterm>。" #. (itstool) path: sect1/para -#: book.translate.xml:19539 +#: book.translate.xml:19546 msgid "" "Two different types of configuration files are used: the system crontab, " "which should not be modified, and user crontabs, which can be created and " @@ -28433,7 +28438,7 @@ msgstr "" "行指令,而在使用者 crontab,會以建立 crontab 的使用者來執行指令。" #. (itstool) path: sect1/para -#: book.translate.xml:19550 +#: book.translate.xml:19557 msgid "" "User crontabs allow individual users to schedule their own tasks. The " "<systemitem class=\"username\">root</systemitem> user can also have a user " @@ -28445,14 +28450,14 @@ msgstr "" "安排不在系統 <filename>crontab</filename> 中的工作。" #. (itstool) path: sect1/para -#: book.translate.xml:19556 +#: book.translate.xml:19563 msgid "" "Here is a sample entry from the system crontab, <filename>/etc/crontab</" "filename>:" msgstr "以下為系統 crontab <filename>/etc/crontab</filename> 的範例項目:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:19559 +#: book.translate.xml:19566 #, no-wrap msgid "" "# /etc/crontab - root's crontab for FreeBSD\n" @@ -28468,7 +28473,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:19572 +#: book.translate.xml:19579 msgid "" "Lines that begin with the <literal>#</literal> character are comments. A " "comment can be placed in the file as a reminder of what and why a desired " @@ -28481,7 +28486,7 @@ msgstr "" "新的一行,空白行則會被忽略掉。" #. (itstool) path: callout/para -#: book.translate.xml:19581 +#: book.translate.xml:19588 msgid "" "The equals (<literal>=</literal>) character is used to define any " "environment settings. In this example, it is used to define the " @@ -28496,7 +28501,7 @@ msgstr "" "若 <envar>PATH</envar> 被省略,則必須指定指令或 Script 的完整路徑才能執行。" #. (itstool) path: callout/para -#: book.translate.xml:19592 +#: book.translate.xml:19599 msgid "" "This line defines the seven fields used in a system crontab: " "<literal>minute</literal>, <literal>hour</literal>, <literal>mday</literal>, " @@ -28523,7 +28528,7 @@ msgstr "" "一個使用者來執行指令。最後一個欄位則是要執行的指令。" #. (itstool) path: callout/para -#: book.translate.xml:19611 +#: book.translate.xml:19618 msgid "" "This entry defines the values for this cron job. The <literal>*/5</literal>, " "followed by several more <literal>*</literal> characters, specifies that " @@ -28537,7 +28542,7 @@ msgstr "" "libexec/atrun</command>。" #. (itstool) path: callout/para -#: book.translate.xml:19619 +#: book.translate.xml:19626 msgid "" "Commands can include any number of switches. However, commands which extend " "to multiple lines need to be broken with the backslash <quote>\\</quote> " @@ -28547,25 +28552,25 @@ msgstr "" "字元換行。" #. (itstool) path: sect2/title -#: book.translate.xml:19627 +#: book.translate.xml:19634 msgid "Creating a User Crontab" msgstr "建立使用者的 Crontab" #. (itstool) path: sect2/para -#: book.translate.xml:19629 +#: book.translate.xml:19636 msgid "" "To create a user crontab, invoke <command>crontab</command> in editor mode:" msgstr "" "要建立一個使用者 crontab 可使用編輯模式執行 <command>crontab</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:19632 +#: book.translate.xml:19639 #, no-wrap msgid "<prompt>%</prompt> <userinput>crontab -e</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19634 +#: book.translate.xml:19641 msgid "" "This will open the user's crontab using the default text editor. The first " "time a user runs this command, it will open an empty file. Once a user " @@ -28576,7 +28581,7 @@ msgstr "" "編輯。" #. (itstool) path: sect2/para -#: book.translate.xml:19639 +#: book.translate.xml:19646 msgid "" "It is useful to add these lines to the top of the crontab file in order to " "set the environment variables and to remember the meanings of the fields in " @@ -28586,7 +28591,7 @@ msgstr "" "非常有用:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19643 +#: book.translate.xml:19650 #, no-wrap msgid "" "SHELL=/bin/sh\n" @@ -28596,7 +28601,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19648 +#: book.translate.xml:19655 msgid "" "Then add a line for each command or script to run, specifying the time to " "run the command. This example runs the specified custom Bourne shell script " @@ -28608,13 +28613,13 @@ msgstr "" "literal> 指定 Script 的路徑,所以必須給予完整的 Script 路徑:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19655 +#: book.translate.xml:19662 #, no-wrap msgid "0\t14\t*\t*\t*\t/usr/home/dru/bin/mycustomscript.sh" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:19658 +#: book.translate.xml:19665 msgid "" "Before using a custom script, make sure it is executable and test it with " "the limited set of environment variables set by cron. To replicate the " @@ -28624,13 +28629,13 @@ msgstr "" "境變數下測試。要複製一個用來執行上述 cron 項目的環境可以使用:" #. (itstool) path: tip/programlisting -#: book.translate.xml:19663 +#: book.translate.xml:19670 #, no-wrap msgid "env -i SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin HOME=/home/<replaceable>dru</replaceable> LOGNAME=<replaceable>dru</replaceable> <replaceable>/usr/home/dru/bin/mycustomscript.sh</replaceable>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:19665 +#: book.translate.xml:19672 msgid "" "The environment set by cron is discussed in " "<citerefentry><refentrytitle>crontab</refentrytitle><manvolnum>5</" @@ -28644,7 +28649,7 @@ msgstr "" "要。" #. (itstool) path: sect2/para -#: book.translate.xml:19671 +#: book.translate.xml:19678 msgid "" "When finished editing the crontab, save the file. It will automatically be " "installed and <application>cron</application> will read the crontab and run " @@ -28656,7 +28661,7 @@ msgstr "" "job。要列出 crontab 中有那一些 cron job 可以使用此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:19677 +#: book.translate.xml:19684 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>crontab -l</userinput>\n" @@ -28664,12 +28669,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19680 +#: book.translate.xml:19687 msgid "To remove all of the cron jobs in a user crontab:" msgstr "要移除使用在使用者 crontab 中的 cron job 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:19682 +#: book.translate.xml:19689 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>crontab -r</userinput>\n" @@ -28677,12 +28682,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:19689 +#: book.translate.xml:19696 msgid "Managing Services in FreeBSD" msgstr "管理 FreeBSD 中的服務" #. (itstool) path: sect1/para -#: book.translate.xml:19702 +#: book.translate.xml:19709 msgid "" "FreeBSD uses the <citerefentry><refentrytitle>rc</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> system of startup " @@ -28704,13 +28709,13 @@ msgstr "" "citerefentry>:" #. (itstool) path: sect1/screen -#: book.translate.xml:19710 +#: book.translate.xml:19717 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd restart</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19712 +#: book.translate.xml:19719 msgid "" "This procedure can be used to start services on a running system. Services " "will be started automatically at boot time as specified in " @@ -28727,13 +28732,13 @@ msgstr "" "manvolnum></citerefentry>,可入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:19718 +#: book.translate.xml:19725 #, no-wrap msgid "natd_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19720 +#: book.translate.xml:19727 msgid "" "If a <option>natd_enable=\"NO\"</option> line is already present, change the " "<literal>NO</literal> to <literal>YES</literal>. The " @@ -28747,7 +28752,7 @@ msgstr "" "相依的服務,詳細如下所述。" #. (itstool) path: sect1/para -#: book.translate.xml:19726 +#: book.translate.xml:19733 msgid "" "Since the <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> system is primarily intended to start and stop " @@ -28777,13 +28782,13 @@ msgstr "" "manvolnum></citerefentry> 可執行以下指令:" #. (itstool) path: sect1/screen -#: book.translate.xml:19742 +#: book.translate.xml:19749 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd onerestart</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19744 +#: book.translate.xml:19751 msgid "" "To check if a service is enabled in <filename>/etc/rc.conf</filename>, run " "the appropriate <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</" @@ -28799,7 +28804,7 @@ msgstr "" "citerefentry> 是否在 <filename>/etc/rc.conf</filename> 已經開啟:" #. (itstool) path: sect1/screen -#: book.translate.xml:19750 +#: book.translate.xml:19757 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sshd rcvar</userinput>\n" @@ -28810,7 +28815,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:19757 +#: book.translate.xml:19764 msgid "" "The <literal># sshd</literal> line is output from the above command, not a " "<systemitem class=\"username\">root</systemitem> console." @@ -28819,7 +28824,7 @@ msgstr "" "\"username\">root</systemitem> console。" #. (itstool) path: sect1/para -#: book.translate.xml:19762 +#: book.translate.xml:19769 msgid "" "To determine whether or not a service is running, use <option>status</" "option>. For instance, to verify that <citerefentry><refentrytitle>sshd</" @@ -28830,7 +28835,7 @@ msgstr "" "citerefentry> 是否正常在執行:" #. (itstool) path: sect1/screen -#: book.translate.xml:19766 +#: book.translate.xml:19773 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sshd status</userinput>\n" @@ -28838,7 +28843,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19769 +#: book.translate.xml:19776 msgid "" "In some cases, it is also possible to <option>reload</option> a service. " "This attempts to send a signal to an individual service, forcing the service " @@ -28851,7 +28856,7 @@ msgstr "" "是 <literal>SIGHUP</literal>。並不是每個服務都有支援此功能。" #. (itstool) path: sect1/para -#: book.translate.xml:19776 +#: book.translate.xml:19783 msgid "" "The <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> system is used for network services and it also contributes to " @@ -28863,20 +28868,20 @@ msgstr "" "<filename>/etc/rc.d/bgfsck</filename> Script 會列印出以下訊息:" #. (itstool) path: sect1/screen -#: book.translate.xml:19782 +#: book.translate.xml:19789 #, no-wrap msgid "Starting background file system checks in 60 seconds." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19784 +#: book.translate.xml:19791 msgid "" "This script is used for background file system checks, which occur only " "during system initialization." msgstr "這個 Script 用來在背景做檔案系統檢查,只有在系統初始化時要執行。" #. (itstool) path: sect1/para -#: book.translate.xml:19787 +#: book.translate.xml:19794 msgid "" "Many system services depend on other services to function properly. For " "example, <citerefentry><refentrytitle>yp</refentrytitle><manvolnum>8</" @@ -28900,7 +28905,7 @@ msgstr "" "要以什麼順序來執行系統服務以滿足相依。" #. (itstool) path: sect1/para -#: book.translate.xml:19798 +#: book.translate.xml:19805 msgid "" "The following key word must be included in all startup scripts as it is " "required by <citerefentry><refentrytitle>rc.subr</" @@ -28912,12 +28917,12 @@ msgstr "" "可 <quote>enable</quote> 啟動 Script:" #. (itstool) path: listitem/para -#: book.translate.xml:19804 +#: book.translate.xml:19811 msgid "<literal>PROVIDE</literal>: Specifies the services this file provides." msgstr "<literal>PROVIDE</literal>: 設定此檔案所提供的服務。" #. (itstool) path: sect1/para -#: book.translate.xml:19809 +#: book.translate.xml:19816 msgid "" "The following key words may be included at the top of each startup script. " "They are not strictly necessary, but are useful as hints to " @@ -28929,7 +28934,7 @@ msgstr "" "manvolnum></citerefentry> 是非常有用的提示:" #. (itstool) path: listitem/para -#: book.translate.xml:19815 +#: book.translate.xml:19822 msgid "" "<literal>REQUIRE</literal>: Lists services which are required for this " "service. The script containing this key word will run <emphasis>after</" @@ -28939,7 +28944,7 @@ msgstr "" "Script 會在指定服務啟動 <emphasis>之後</emphasis> 才執行。" #. (itstool) path: listitem/para -#: book.translate.xml:19822 +#: book.translate.xml:19829 msgid "" "<literal>BEFORE</literal>: Lists services which depend on this service. The " "script containing this key word will run <emphasis>before</emphasis> the " @@ -28949,7 +28954,7 @@ msgstr "" "指定的服務啟動 <emphasis>之前</emphasis> 執行。" #. (itstool) path: sect1/para -#: book.translate.xml:19829 +#: book.translate.xml:19836 msgid "" "By carefully setting these keywords for each startup script, an " "administrator has a fine-grained level of control of the startup order of " @@ -28961,7 +28966,7 @@ msgstr "" "業系統所使用的 <quote>runlevels</quote>。" #. (itstool) path: sect1/para -#: book.translate.xml:19835 +#: book.translate.xml:19842 msgid "" "Additional information can be found in <citerefentry><refentrytitle>rc</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> and " @@ -28979,19 +28984,19 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> Script 的操作說明。" #. (itstool) path: sect2/title -#: book.translate.xml:19841 +#: book.translate.xml:19848 msgid "Managing System-Specific Configuration" msgstr "管理系統特定的設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:19843 +#: book.translate.xml:19850 msgid "" "<primary>rc files</primary> <secondary><filename>rc.conf</filename></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19848 +#: book.translate.xml:19855 msgid "" "The principal location for system configuration information is <filename>/" "etc/rc.conf</filename>. This file contains a wide range of configuration " @@ -29004,7 +29009,7 @@ msgstr "" "filename> 檔案使用。" #. (itstool) path: sect2/para -#: book.translate.xml:19855 +#: book.translate.xml:19862 msgid "" "The entries in <filename>/etc/rc.conf</filename> override the default " "settings in <filename>/etc/defaults/rc.conf</filename>. The file containing " @@ -29016,7 +29021,7 @@ msgstr "" "系統特定的設定應到 <filename>/etc/rc.conf</filename> 所修改。" #. (itstool) path: sect2/para -#: book.translate.xml:19862 +#: book.translate.xml:19869 msgid "" "A number of strategies may be applied in clustered applications to separate " "site-wide configuration from system-specific configuration in order to " @@ -29031,7 +29036,7 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19871 +#: book.translate.xml:19878 #, no-wrap msgid "" "sshd_enable=\"YES\"\n" @@ -29040,14 +29045,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19875 +#: book.translate.xml:19882 msgid "" "Whereas these entries in <filename>/etc/rc.conf.local</filename> apply to " "this system only:" msgstr "而只套用到此系統的設定放在 <filename>/etc/rc.conf.local</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:19879 +#: book.translate.xml:19886 #, no-wrap msgid "" "hostname=\"node1.example.org\"\n" @@ -29055,7 +29060,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19882 +#: book.translate.xml:19889 msgid "" "Distribute <filename>/etc/rc.conf</filename> to every system using an " "application such as <application>rsync</application> or <application>puppet</" @@ -29066,7 +29071,7 @@ msgstr "" "保留自己的 <filename>/etc/rc.conf.local</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:19889 +#: book.translate.xml:19896 msgid "" "Upgrading the system will not overwrite <filename>/etc/rc.conf</filename>, " "so system configuration information will not be lost." @@ -29075,7 +29080,7 @@ msgstr "" "此遺失。" #. (itstool) path: tip/para -#: book.translate.xml:19894 +#: book.translate.xml:19901 msgid "" "Both <filename>/etc/rc.conf</filename> and <filename>/etc/rc.conf.local</" "filename> are parsed by <citerefentry><refentrytitle>sh</" @@ -29092,13 +29097,13 @@ msgstr "" "資訊。" #. (itstool) path: info/title -#: book.translate.xml:19906 +#: book.translate.xml:19913 msgid "Setting Up Network Interface Cards" msgstr "設定網路介面卡" #. (itstool) path: authorgroup/author -#: book.translate.xml:19909 book.translate.xml:32265 book.translate.xml:32567 -#: book.translate.xml:32950 +#: book.translate.xml:19916 book.translate.xml:32272 book.translate.xml:32701 +#: book.translate.xml:33084 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Contributed by </contrib>" @@ -29106,12 +29111,12 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:19919 book.translate.xml:20132 +#: book.translate.xml:19926 book.translate.xml:20139 msgid "<primary>network cards</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:19924 +#: book.translate.xml:19931 msgid "" "Adding and configuring a network interface card (<acronym>NIC</acronym>) is " "a common task for any FreeBSD administrator." @@ -29120,17 +29125,17 @@ msgstr "" "<acronym>NIC</acronym>) 會是一件常見的工作。" #. (itstool) path: sect2/title -#: book.translate.xml:19929 +#: book.translate.xml:19936 msgid "Locating the Correct Driver" msgstr "找到正確的驅動程式" #. (itstool) path: sect2/indexterm -#: book.translate.xml:19931 +#: book.translate.xml:19938 msgid "<primary>network cards</primary> <secondary>driver</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19936 +#: book.translate.xml:19943 msgid "" "First, determine the model of the <acronym>NIC</acronym> and the chip it " "uses. FreeBSD supports a wide variety of <acronym>NIC</acronym>s. Check the " @@ -29142,7 +29147,7 @@ msgstr "" "支援該 <acronym>NIC</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:19942 +#: book.translate.xml:19949 msgid "" "If the <acronym>NIC</acronym> is supported, determine the name of the " "FreeBSD driver for the <acronym>NIC</acronym>. Refer to <filename>/usr/src/" @@ -29160,7 +29165,7 @@ msgstr "" "驅動程式已知問題的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:19952 +#: book.translate.xml:19959 msgid "" "The drivers for common <acronym>NIC</acronym>s are already present in the " "<filename>GENERIC</filename> kernel, meaning the <acronym>NIC</acronym> " @@ -29179,7 +29184,7 @@ msgstr "" "citerefentry> 驅動程式:" #. (itstool) path: sect2/screen -#: book.translate.xml:19961 +#: book.translate.xml:19968 #, no-wrap msgid "" "dc0: <82c169 PNIC 10/100BaseTX> port 0xa000-0xa0ff mem 0xd3800000-0xd38\n" @@ -29199,7 +29204,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:19976 +#: book.translate.xml:19983 msgid "" "If the driver for the <acronym>NIC</acronym> is not present in " "<filename>GENERIC</filename>, but a driver is available, the driver will " @@ -29211,7 +29216,7 @@ msgstr "" "驅動程式,有兩種方式可以完成這件事:" #. (itstool) path: listitem/para -#: book.translate.xml:19984 +#: book.translate.xml:19991 msgid "" "The easiest way is to load a kernel module for the <acronym>NIC</acronym> " "using <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</" @@ -29226,7 +29231,7 @@ msgstr "" "模組使用。" #. (itstool) path: listitem/para -#: book.translate.xml:19994 +#: book.translate.xml:20001 msgid "" "Alternatively, statically compile support for the <acronym>NIC</acronym> " "into a custom kernel. Refer to <filename>/usr/src/sys/conf/NOTES</filename>, " @@ -29244,7 +29249,7 @@ msgstr "" "編譯核心。" #. (itstool) path: sect3/title -#: book.translate.xml:20007 +#: book.translate.xml:20014 msgid "" "Using <trademark class=\"registered\">Windows</trademark> <acronym>NDIS</" "acronym> Drivers" @@ -29253,24 +29258,24 @@ msgstr "" "acronym> 驅動程式" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20009 +#: book.translate.xml:20016 msgid "<primary><acronym>NDIS</acronym></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20012 +#: book.translate.xml:20019 msgid "<primary>NDISulator</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20015 +#: book.translate.xml:20022 msgid "" "<primary><trademark class=\"registered\">Windows</trademark> drivers</" "primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20018 +#: book.translate.xml:20025 msgid "" "<primary><trademark class=\"registered\">Microsoft</trademark> <trademark " "class=\"registered\">Windows</trademark></primary> <secondary>device " @@ -29278,12 +29283,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20022 +#: book.translate.xml:20029 msgid "<primary><acronym>KLD</acronym> (kernel loadable object)</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20030 +#: book.translate.xml:20037 msgid "" "Unfortunately, there are still many vendors that do not provide schematics " "for their drivers to the open source community because they regard such " @@ -29300,7 +29305,7 @@ msgstr "" "\">Windows</trademark> 平台用的驅動程式 Binary。" #. (itstool) path: sect3/para -#: book.translate.xml:20039 +#: book.translate.xml:20046 msgid "" "FreeBSD provides <quote>native</quote> support for the Network Driver " "Interface Specification (<acronym>NDIS</acronym>). It includes " @@ -29326,7 +29331,7 @@ msgstr "" "<acronym>USB</acronym> 裝置也都有支援。" #. (itstool) path: sect3/para -#: book.translate.xml:20049 +#: book.translate.xml:20056 msgid "" "To use <citerefentry><refentrytitle>ndisgen</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>, three things are needed:" @@ -29335,12 +29340,12 @@ msgstr "" "manvolnum></citerefentry> 需要三樣東西:" #. (itstool) path: listitem/para -#: book.translate.xml:20053 +#: book.translate.xml:20060 msgid "FreeBSD kernel sources." msgstr "FreeBSD 核心原始碼。" #. (itstool) path: listitem/para -#: book.translate.xml:20057 +#: book.translate.xml:20064 msgid "" "A <trademark class=\"registered\">Windows</trademark> XP driver binary with " "a <filename>.SYS</filename> extension." @@ -29349,7 +29354,7 @@ msgstr "" "\">Windows</trademark> XP 驅動程式 Binary。" #. (itstool) path: listitem/para -#: book.translate.xml:20062 +#: book.translate.xml:20069 msgid "" "A <trademark class=\"registered\">Windows</trademark> XP driver " "configuration file with a <filename>.INF</filename> extension." @@ -29358,7 +29363,7 @@ msgstr "" "\">Windows</trademark> XP 驅動程式設定檔。" #. (itstool) path: sect3/para -#: book.translate.xml:20067 +#: book.translate.xml:20074 msgid "" "Download the <filename>.SYS</filename> and <filename>.INF</filename> files " "for the specific <acronym>NIC</acronym>. Generally, these can be found on " @@ -29371,7 +29376,7 @@ msgstr "" "<filename>W32DRIVER.INF</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:20074 +#: book.translate.xml:20081 msgid "" "The driver bit width must match the version of FreeBSD. For FreeBSD/i386, " "use a <trademark class=\"registered\">Windows</trademark> 32-bit driver. For " @@ -29384,7 +29389,7 @@ msgstr "" "64-bit 驅動程式。" #. (itstool) path: sect3/para -#: book.translate.xml:20078 +#: book.translate.xml:20085 msgid "" "The next step is to compile the driver binary into a loadable kernel module. " "As <systemitem class=\"username\">root</systemitem>, use " @@ -29397,13 +29402,13 @@ msgstr "" "manvolnum></citerefentry>:" #. (itstool) path: sect3/screen -#: book.translate.xml:20083 +#: book.translate.xml:20090 #, no-wrap msgid "<prompt>#</prompt> <userinput>ndisgen <replaceable>/path/to/W32DRIVER.INF</replaceable> <replaceable>/path/to/W32DRIVER.SYS</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20085 +#: book.translate.xml:20092 msgid "" "This command is interactive and prompts for any extra information it " "requires. A new kernel module will be generated in the current directory. " @@ -29415,13 +29420,13 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 來載入新的模組:" #. (itstool) path: sect3/screen -#: book.translate.xml:20090 +#: book.translate.xml:20097 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload <replaceable>./W32DRIVER_SYS.ko</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20092 +#: book.translate.xml:20099 msgid "" "In addition to the generated kernel module, the <filename>ndis.ko</filename> " "and <filename>if_ndis.ko</filename> modules must be loaded. This should " @@ -29436,7 +29441,7 @@ msgstr "" "載入。若沒有自動載入,則需使用以下指令手動載入:" #. (itstool) path: sect3/screen -#: book.translate.xml:20099 +#: book.translate.xml:20106 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload ndis</userinput>\n" @@ -29444,7 +29449,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20102 +#: book.translate.xml:20109 msgid "" "The first command loads the <citerefentry><refentrytitle>ndis</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> miniport driver " @@ -29455,7 +29460,7 @@ msgstr "" "式,而第二個指令會載入產生的 <acronym>NIC</acronym> 驅動程式。" #. (itstool) path: sect3/para -#: book.translate.xml:20106 +#: book.translate.xml:20113 msgid "" "Check <citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to see if there were any load errors. If all went " @@ -29466,7 +29471,7 @@ msgstr "" "下所示:" #. (itstool) path: sect3/screen -#: book.translate.xml:20110 +#: book.translate.xml:20117 #, no-wrap msgid "" "ndis0: <Wireless-G PCI Adapter> mem 0xf4100000-0xf4101fff irq 3 at device 8.0 on pci1\n" @@ -29477,7 +29482,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20116 +#: book.translate.xml:20123 msgid "" "From here, <filename>ndis0</filename> can be configured like any other " "<acronym>NIC</acronym>." @@ -29486,7 +29491,7 @@ msgstr "" "定使用。" #. (itstool) path: sect3/para -#: book.translate.xml:20119 +#: book.translate.xml:20126 msgid "" "To configure the system to load the <citerefentry><refentrytitle>ndis</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> modules at boot time, " @@ -29500,18 +29505,18 @@ msgstr "" "然後加入下行到 <filename>/boot/loader.conf</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20125 +#: book.translate.xml:20132 #, no-wrap msgid "W32DRIVER_SYS_load=\"YES\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:20130 +#: book.translate.xml:20137 msgid "Configuring the Network Card" msgstr "設定網路卡" #. (itstool) path: sect2/para -#: book.translate.xml:20137 +#: book.translate.xml:20144 msgid "" "Once the right driver is loaded for the <acronym>NIC</acronym>, the card " "needs to be configured. It may have been configured at installation time by " @@ -29523,14 +29528,14 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 設定過了。" #. (itstool) path: sect2/para -#: book.translate.xml:20142 +#: book.translate.xml:20149 msgid "" "To display the <acronym>NIC</acronym> configuration, enter the following " "command:" msgstr "要查看 <acronym>NIC</acronym> 設定可輸入以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:20145 +#: book.translate.xml:20152 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig</userinput>\n" @@ -29555,27 +29560,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20165 +#: book.translate.xml:20172 msgid "In this example, the following devices were displayed:" msgstr "在這個例子中列出了以下裝置:" #. (itstool) path: listitem/para -#: book.translate.xml:20170 +#: book.translate.xml:20177 msgid "<filename>dc0</filename>: The first Ethernet interface." msgstr "<filename>dc0</filename>: 第一個乙太網路介面。" #. (itstool) path: listitem/para -#: book.translate.xml:20175 +#: book.translate.xml:20182 msgid "<filename>dc1</filename>: The second Ethernet interface." msgstr "<filename>dc1</filename>: 第二個乙太網路介面。" #. (itstool) path: listitem/para -#: book.translate.xml:20180 +#: book.translate.xml:20187 msgid "<filename>lo0</filename>: The loopback device." msgstr "<filename>lo0</filename>: Loopback 裝置。" #. (itstool) path: sect2/para -#: book.translate.xml:20185 +#: book.translate.xml:20192 msgid "" "FreeBSD uses the driver name followed by the order in which the card is " "detected at boot to name the <acronym>NIC</acronym>. For example, " @@ -29589,19 +29594,19 @@ msgstr "" "citerefentry> 驅動程式的第三個 <acronym>NIC</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:20192 +#: book.translate.xml:20199 msgid "" "In this example, <filename>dc0</filename> is up and running. The key " "indicators are:" msgstr "在此例中,<filename>dc0</filename> 已經上線並且執行中。主要的依據有:" #. (itstool) path: listitem/para -#: book.translate.xml:20197 +#: book.translate.xml:20204 msgid "<literal>UP</literal> means that the card is configured and ready." msgstr "<literal>UP</literal> 代表介面卡已設定好並且準備就緒。" #. (itstool) path: listitem/para -#: book.translate.xml:20202 +#: book.translate.xml:20209 msgid "" "The card has an Internet (<literal>inet</literal>) address, <systemitem " "class=\"ipaddress\">192.168.1.3</systemitem>." @@ -29610,7 +29615,7 @@ msgstr "" "\"ipaddress\">192.168.1.3</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20207 +#: book.translate.xml:20214 msgid "" "It has a valid subnet mask (<literal>netmask</literal>), where <systemitem " "class=\"netmask\">0xffffff00</systemitem> is the same as <systemitem class=" @@ -29621,7 +29626,7 @@ msgstr "" "\">255.255.255.0</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20214 +#: book.translate.xml:20221 msgid "" "It has a valid broadcast address, <systemitem class=\"ipaddress" "\">192.168.1.255</systemitem>." @@ -29630,7 +29635,7 @@ msgstr "" "systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20218 +#: book.translate.xml:20225 msgid "" "The <acronym>MAC</acronym> address of the card (<literal>ether</literal>) is " "<systemitem class=\"etheraddress\">00:a0:cc:da:da:da</systemitem>." @@ -29639,7 +29644,7 @@ msgstr "" "<systemitem class=\"etheraddress\">00:a0:cc:da:da:da</systemitem>。" #. (itstool) path: listitem/para -#: book.translate.xml:20223 +#: book.translate.xml:20230 msgid "" "The physical media selection is on autoselection mode (<literal>media: " "Ethernet autoselect (100baseTX <full-duplex>)</literal>). In this " @@ -29653,7 +29658,7 @@ msgstr "" "請參考操作手冊。" #. (itstool) path: listitem/para -#: book.translate.xml:20233 +#: book.translate.xml:20240 msgid "" "The status of the link (<literal>status</literal>) is <literal>active</" "literal>, indicating that the carrier signal is detected. For <filename>dc1</" @@ -29665,7 +29670,7 @@ msgstr "" "面卡未插入乙太網路線則狀態為 <literal>status: no carrier</literal> 是正常的。" #. (itstool) path: sect2/para -#: book.translate.xml:20242 +#: book.translate.xml:20249 msgid "" "If the <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> output had shown something similar to:" @@ -29674,7 +29679,7 @@ msgstr "" "manvolnum></citerefentry> 的輸出結果如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:20245 +#: book.translate.xml:20252 #, no-wrap msgid "" "dc0: flags=8843<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500\n" @@ -29685,12 +29690,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20251 +#: book.translate.xml:20258 msgid "it would indicate the card has not been configured." msgstr "則代表尚未設定介面卡。" #. (itstool) path: sect2/para -#: book.translate.xml:20253 +#: book.translate.xml:20260 msgid "" "The card must be configured as <systemitem class=\"username\">root</" "systemitem>. The <acronym>NIC</acronym> configuration can be performed from " @@ -29708,19 +29713,19 @@ msgstr "" "器,則只需加入此行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20262 +#: book.translate.xml:20269 #, no-wrap msgid "ifconfig_dc0=\"DHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20264 +#: book.translate.xml:20271 msgid "" "Replace <replaceable>dc0</replaceable> with the correct value for the system." msgstr "替換 <replaceable>dc0</replaceable> 為該系統的正確值。" #. (itstool) path: sect2/para -#: book.translate.xml:20267 +#: book.translate.xml:20274 msgid "" "The line added, then, follow the instructions given in <xref linkend=" "\"config-network-testing\"/>." @@ -29728,7 +29733,7 @@ msgstr "" "加入這行之後,接著依據 <xref linkend=\"config-network-testing\"/> 指示操作。" #. (itstool) path: note/para -#: book.translate.xml:20271 +#: book.translate.xml:20278 msgid "" "If the network was configured during installation, some entries for the " "<acronym>NIC</acronym>(s) may be already present. Double check <filename>/" @@ -29738,7 +29743,7 @@ msgstr "" "任何設定前請再次檢查 <filename>/etc/rc.conf</filename>。 " #. (itstool) path: sect2/para -#: book.translate.xml:20277 +#: book.translate.xml:20284 msgid "" "In the case, there is no <acronym>DHCP</acronym> server, the <acronym>NIC</" "acronym>(s) have to be configured manually. Add a line for each " @@ -29748,7 +29753,7 @@ msgstr "" "acronym>。提每一個在系統上的 <acronym>NIC</acronym> 加入一行設定,如此例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20282 +#: book.translate.xml:20289 #, no-wrap msgid "" "ifconfig_dc0=\"inet 192.168.1.3 netmask 255.255.255.0\"\n" @@ -29756,7 +29761,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20285 +#: book.translate.xml:20292 msgid "" "Replace <filename>dc0</filename> and <filename>dc1</filename> and the " "<acronym>IP</acronym> address information with the correct values for the " @@ -29774,7 +29779,7 @@ msgstr "" "及 <filename>/etc/rc.conf</filename> 的語法。" #. (itstool) path: sect2/para -#: book.translate.xml:20292 +#: book.translate.xml:20299 msgid "" "If the network is not using <acronym>DNS</acronym>, edit <filename>/etc/" "hosts</filename> to add the names and <acronym>IP</acronym> addresses of the " @@ -29790,7 +29795,7 @@ msgstr "" "share/examples/etc/hosts</filename>。" #. (itstool) path: note/para -#: book.translate.xml:20300 +#: book.translate.xml:20307 msgid "" "If there is no <acronym>DHCP</acronym> server and access to the Internet is " "needed, manually configure the default gateway and the nameserver:" @@ -29799,7 +29804,7 @@ msgstr "" "閘道及名稱伺服器:" #. (itstool) path: note/screen -#: book.translate.xml:20304 +#: book.translate.xml:20311 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>echo 'defaultrouter=\"<replaceable>your_default_router</replaceable>\"' >> /etc/rc.conf</userinput>\n" @@ -29807,12 +29812,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:20310 +#: book.translate.xml:20317 msgid "Testing and Troubleshooting" msgstr "測試與疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:20312 +#: book.translate.xml:20319 msgid "" "Once the necessary changes to <filename>/etc/rc.conf</filename> are saved, a " "reboot can be used to test the network configuration and to verify that the " @@ -29825,13 +29830,13 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:20319 book.translate.xml:62557 +#: book.translate.xml:20326 book.translate.xml:62184 #, no-wrap msgid "<prompt>#</prompt> <userinput>service netif restart</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:20322 +#: book.translate.xml:20329 msgid "" "If a default gateway has been set in <filename>/etc/rc.conf</filename>, also " "issue this command:" @@ -29839,30 +29844,30 @@ msgstr "" "若預設的通訊閘已設定於 <filename>/etc/rc.conf</filename> 也同樣要下這個指令:" #. (itstool) path: note/screen -#: book.translate.xml:20326 +#: book.translate.xml:20333 #, no-wrap msgid "<prompt>#</prompt> <userinput>service routing restart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20329 +#: book.translate.xml:20336 msgid "" "Once the networking system has been relaunched, test the <acronym>NIC</" "acronym>s." msgstr "網路系統重新啟動後,便可接著測試 <acronym>NIC</acronym>。" #. (itstool) path: sect3/title -#: book.translate.xml:20333 +#: book.translate.xml:20340 msgid "Testing the Ethernet Card" msgstr "測試乙太網路卡" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20335 +#: book.translate.xml:20342 msgid "<primary>network cards</primary> <secondary>testing</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20340 +#: book.translate.xml:20347 msgid "" "To verify that an Ethernet card is configured correctly, " "<citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</manvolnum></" @@ -29876,7 +29881,7 @@ msgstr "" "citerefentry> 其他於 <acronym>LAN</acronym> 上的主機:" #. (itstool) path: sect3/screen -#: book.translate.xml:20344 +#: book.translate.xml:20351 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ping -c5 192.168.1.3</userinput>\n" @@ -29893,7 +29898,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20356 +#: book.translate.xml:20363 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ping -c5 192.168.1.2</userinput>\n" @@ -29910,7 +29915,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20368 +#: book.translate.xml:20375 msgid "" "To test network resolution, use the host name instead of the <acronym>IP</" "acronym> address. If there is no <acronym>DNS</acronym> server on the " @@ -29930,12 +29935,12 @@ msgstr "" "citerefentry> 及 <filename>/usr/share/examples/etc/hosts</filename>。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:20383 +#: book.translate.xml:20390 msgid "<primary>network cards</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20388 +#: book.translate.xml:20395 msgid "" "When troubleshooting hardware and software configurations, check the simple " "things first. Is the network cable plugged in? Are the network services " @@ -29950,7 +29955,7 @@ msgstr "" "STABLE 版本、檢查郵遞論壇封存記錄以及上網查詢。" #. (itstool) path: sect3/para -#: book.translate.xml:20397 +#: book.translate.xml:20404 msgid "" "If the card works, yet performance is poor, read through " "<citerefentry><refentrytitle>tuning</refentrytitle><manvolnum>7</manvolnum></" @@ -29962,7 +29967,7 @@ msgstr "" "因為不正確的網路設定會造成連線速度緩慢。" #. (itstool) path: sect3/para -#: book.translate.xml:20402 +#: book.translate.xml:20409 msgid "" "Some users experience one or two <errorname>device timeout</errorname> " "messages, which is normal for some cards. If they continue, or are " @@ -29974,7 +29979,7 @@ msgstr "" "次檢查網路線,或考慮使用其他介面卡。" #. (itstool) path: sect3/para -#: book.translate.xml:20409 +#: book.translate.xml:20416 msgid "" "To resolve <errorname>watchdog timeout</errorname> errors, first check the " "network cable. Many cards require a <acronym>PCI</acronym> slot which " @@ -29988,7 +29993,7 @@ msgstr "" "<acronym>NIC</acronym> 以及主機板說明文件來確定是否為此問題。" #. (itstool) path: sect3/para -#: book.translate.xml:20418 +#: book.translate.xml:20425 msgid "" "<errorname>No route to host</errorname> messages occur if the system is " "unable to route a packet to the destination host. This can happen if no " @@ -30002,7 +30007,7 @@ msgstr "" "有,請閱讀 <xref linkend=\"network-routing\"/>。" #. (itstool) path: sect3/para -#: book.translate.xml:20426 +#: book.translate.xml:20433 msgid "" "<errorname>ping: sendto: Permission denied</errorname> error messages are " "often caused by a misconfigured firewall. If a firewall is enabled on " @@ -30018,7 +30023,7 @@ msgstr "" "\"firewalls\"/> 取得更多資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:20433 +#: book.translate.xml:20440 msgid "" "Sometimes performance of the card is poor or below average. In these cases, " "try setting the media selection mode from <literal>autoselect</literal> to " @@ -30034,22 +30039,22 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:20445 +#: book.translate.xml:20452 msgid "Virtual Hosts" msgstr "虛擬主機" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20447 +#: book.translate.xml:20454 msgid "<primary>virtual hosts</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20448 +#: book.translate.xml:20455 msgid "<primary><acronym>IP</acronym> aliases</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20451 +#: book.translate.xml:20458 msgid "" "A common use of FreeBSD is virtual site hosting, where one server appears to " "the network as many servers. This is achieved by assigning multiple network " @@ -30059,7 +30064,7 @@ msgstr "" "器,這可以透過指定多個網路位置到一個網路介面來做到。" #. (itstool) path: sect1/para -#: book.translate.xml:20456 +#: book.translate.xml:20463 msgid "" "A given network interface has one <quote>real</quote> address, and may have " "any number of <quote>alias</quote> addresses. These aliases are normally " @@ -30071,13 +30076,13 @@ msgstr "" "名項目來增加別名,如下例:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20462 +#: book.translate.xml:20469 #, no-wrap msgid "ifconfig_fxp0_alias0=\"inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20464 +#: book.translate.xml:20471 msgid "" "Alias entries must start with <literal>alias<replaceable>0</replaceable></" "literal> using a sequential number such as <literal>alias0</literal>, " @@ -30089,7 +30094,7 @@ msgstr "" "推,設定程序會在第一個遇到缺號的地方中止。" #. (itstool) path: sect1/para -#: book.translate.xml:20471 +#: book.translate.xml:20478 msgid "" "The calculation of alias netmasks is important. For a given interface, there " "must be one address which correctly represents the network's netmask. Any " @@ -30104,7 +30109,7 @@ msgstr "" "<systemitem class=\"netmask\">0xffffffff</systemitem> 來表示。" #. (itstool) path: sect1/para -#: book.translate.xml:20479 +#: book.translate.xml:20486 msgid "" "For example, consider the case where the <filename>fxp0</filename> interface " "is connected to two networks: <systemitem class=\"ipaddress\">10.1.1.0</" @@ -30139,7 +30144,7 @@ msgstr "" "罩。" #. (itstool) path: sect1/para -#: book.translate.xml:20501 +#: book.translate.xml:20508 msgid "" "The following <filename>/etc/rc.conf</filename> entries configure the " "adapter correctly for this scenario:" @@ -30148,7 +30153,7 @@ msgstr "" "目:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20504 +#: book.translate.xml:20511 #, no-wrap msgid "" "ifconfig_fxp0=\"inet 10.1.1.1 netmask 255.255.255.0\"\n" @@ -30163,7 +30168,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20514 +#: book.translate.xml:20521 msgid "" "A simpler way to express this is with a space-separated list of <acronym>IP</" "acronym> address ranges. The first address will be given the indicated " @@ -30175,43 +30180,43 @@ msgstr "" "<literal>255.255.255.255</literal> 的子網路遮罩。" #. (itstool) path: sect1/programlisting -#: book.translate.xml:20520 +#: book.translate.xml:20527 #, no-wrap msgid "ifconfig_fxp0_aliases=\"inet 10.1.1.1-5/24 inet 202.0.75.17-20/28\"" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:20525 +#: book.translate.xml:20532 msgid "Configuring System Logging" msgstr "設定系統日誌" #. (itstool) path: authorgroup/author -#: book.translate.xml:20528 +#: book.translate.xml:20535 msgid "" "<personname> <firstname>Niclas</firstname> <surname>Zeising</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20538 +#: book.translate.xml:20545 msgid "<primary>system logging</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:20541 book.translate.xml:57274 +#: book.translate.xml:20548 book.translate.xml:56895 msgid "<primary>syslog</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:20544 +#: book.translate.xml:20551 msgid "" "<primary><citerefentry><refentrytitle>syslogd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:20548 +#: book.translate.xml:20555 msgid "" "Generating and reading system logs is an important aspect of system " "administration. The information in system logs can be used to detect " @@ -30226,7 +30231,7 @@ msgstr "" "生日誌項目。" #. (itstool) path: sect1/para -#: book.translate.xml:20556 +#: book.translate.xml:20563 msgid "" "FreeBSD provides a system logger, <application>syslogd</application>, to " "manage logging. By default, <application>syslogd</application> is started " @@ -30246,7 +30251,7 @@ msgstr "" "manvolnum></citerefentry> 來取得更多可用參數的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:20567 +#: book.translate.xml:20574 msgid "" "This section describes how to configure the FreeBSD system logger for both " "local and remote logging and how to perform log rotation and log management." @@ -30255,17 +30260,17 @@ msgstr "" "誌翻轉 (Log rotation) 與日誌管理。" #. (itstool) path: sect2/title -#: book.translate.xml:20572 +#: book.translate.xml:20579 msgid "Configuring Local Logging" msgstr "設定本地日誌" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20574 +#: book.translate.xml:20581 msgid "<primary>syslog.conf</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20576 +#: book.translate.xml:20583 msgid "" "The configuration file, <filename>/etc/syslog.conf</filename>, controls what " "<application>syslogd</application> does with log entries as they are " @@ -30286,7 +30291,7 @@ msgstr "" "名稱來決定後續處置的動作。" #. (itstool) path: sect2/para -#: book.translate.xml:20591 +#: book.translate.xml:20598 msgid "" "This configuration file contains one line per action, where the syntax for " "each line is a selector field followed by an action field. The syntax of the " @@ -30310,7 +30315,7 @@ msgstr "" "以下為 FreeBSD 預設的 <filename>syslog.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20606 +#: book.translate.xml:20613 #, no-wrap msgid "" "# $FreeBSD$\n" @@ -30351,12 +30356,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20642 +#: book.translate.xml:20649 msgid "In this example:" msgstr "在這個範例中:" #. (itstool) path: listitem/para -#: book.translate.xml:20646 +#: book.translate.xml:20653 msgid "" "Line 8 matches all messages with a level of <literal>err</literal> or " "higher, as well as <literal>kern.warning</literal>, <literal>auth.notice</" @@ -30369,7 +30374,7 @@ msgstr "" "(<filename>/dev/console</filename>)。" #. (itstool) path: listitem/para -#: book.translate.xml:20656 +#: book.translate.xml:20663 msgid "" "Line 12 matches all messages from the <literal>mail</literal> facility at " "level <literal>info</literal> or above and logs the messages to <filename>/" @@ -30380,7 +30385,7 @@ msgstr "" "filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:20663 +#: book.translate.xml:20670 msgid "" "Line 17 uses a comparison flag (<literal>=</literal>) to only match messages " "at level <literal>debug</literal> and logs them to <filename>/var/log/debug." @@ -30390,7 +30395,7 @@ msgstr "" "literal> 層級的訊息,並將訊息記錄至 <filename>/var/log/debug.log</filename>。" #. (itstool) path: listitem/para -#: book.translate.xml:20670 +#: book.translate.xml:20677 msgid "" "Line 33 is an example usage of a program specification. This makes the rules " "following it only valid for the specified program. In this case, only the " @@ -30402,7 +30407,7 @@ msgstr "" "<filename>/var/log/ppp.log</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:20678 +#: book.translate.xml:20685 msgid "" "The available levels, in order from most to least critical are " "<literal>emerg</literal>, <literal>alert</literal>, <literal>crit</literal>, " @@ -30415,7 +30420,7 @@ msgstr "" "literal> 以及 <literal>debug</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:20685 +#: book.translate.xml:20692 msgid "" "The facilities, in no particular order, are <literal>auth</literal>, " "<literal>authpriv</literal>, <literal>console</literal>, <literal>cron</" @@ -30436,7 +30441,7 @@ msgstr "" "統的設施可能會不同。" #. (itstool) path: sect2/para -#: book.translate.xml:20697 +#: book.translate.xml:20704 msgid "" "To log everything of level <literal>notice</literal> and higher to " "<filename>/var/log/daemon.log</filename>, add the following entry:" @@ -30445,13 +30450,13 @@ msgstr "" "log/daemon.log</filename> 可加入以下項目:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20701 +#: book.translate.xml:20708 #, no-wrap msgid "daemon.notice /var/log/daemon.log" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20703 +#: book.translate.xml:20710 msgid "" "For more information about the different levels and facilities, refer to " "<citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></" @@ -30470,32 +30475,32 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:20711 +#: book.translate.xml:20718 msgid "Log Management and Rotation" msgstr "日誌管理與翻轉" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20713 +#: book.translate.xml:20720 msgid "<primary>newsyslog</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20714 +#: book.translate.xml:20721 msgid "<primary>newsyslog.conf</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20715 +#: book.translate.xml:20722 msgid "<primary>log rotation</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:20716 +#: book.translate.xml:20723 msgid "<primary>log management</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20718 +#: book.translate.xml:20725 msgid "" "Log files can grow quickly, taking up disk space and making it more " "difficult to locate useful information. Log management attempts to mitigate " @@ -30520,7 +30525,7 @@ msgstr "" "次。" #. (itstool) path: sect2/para -#: book.translate.xml:20731 +#: book.translate.xml:20738 msgid "" "To know which actions to take, <application>newsyslog</application> reads " "its configuration file, <filename>/etc/newsyslog.conf</filename>. This file " @@ -30537,7 +30542,7 @@ msgstr "" "知的程式。以下為 FreeBSD 的預設設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:20741 +#: book.translate.xml:20748 #, no-wrap msgid "" "# configuration file for newsyslog\n" @@ -30582,7 +30587,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20781 +#: book.translate.xml:20788 msgid "" "Each line starts with the name of the log to be rotated, optionally followed " "by an owner and group for both rotated and newly created files. The " @@ -30611,7 +30616,7 @@ msgstr "" "信號 (Signal) 編號。" #. (itstool) path: sect2/para -#: book.translate.xml:20799 +#: book.translate.xml:20806 msgid "" "For more information on all fields, valid flags, and how to specify the " "rotation time, refer to <citerefentry><refentrytitle>newsyslog.conf</" @@ -30631,12 +30636,12 @@ msgstr "" "頻繁的執行翻轉檔案。" #. (itstool) path: info/title -#: book.translate.xml:20808 +#: book.translate.xml:20815 msgid "Configuring Remote Logging" msgstr "設定遠端日誌" #. (itstool) path: sect2/para -#: book.translate.xml:20821 +#: book.translate.xml:20828 msgid "" "Monitoring the log files of multiple hosts can become unwieldy as the number " "of systems increases. Configuring centralized logging can reduce some of the " @@ -30644,7 +30649,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:20826 +#: book.translate.xml:20833 msgid "" "In FreeBSD, centralized log file aggregation, merging, and rotation can be " "configured using <application>syslogd</application> and " @@ -30657,12 +30662,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20838 +#: book.translate.xml:20845 msgid "Log Server Configuration" msgstr "日誌伺服器設定" #. (itstool) path: sect3/para -#: book.translate.xml:20840 +#: book.translate.xml:20847 msgid "" "A log server is a system that has been configured to accept logging " "information from other hosts. Before configuring a log server, check the " @@ -30670,7 +30675,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:20846 +#: book.translate.xml:20853 msgid "" "If there is a firewall between the logging server and any logging clients, " "ensure that the firewall ruleset allows <acronym>UDP</acronym> port 514 for " @@ -30678,7 +30683,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:20853 +#: book.translate.xml:20860 msgid "" "The logging server and all client machines must have forward and reverse " "entries in the local <acronym>DNS</acronym>. If the network does not have a " @@ -30688,7 +30693,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20863 +#: book.translate.xml:20870 msgid "" "On the log server, edit <filename>/etc/syslog.conf</filename> to specify the " "name of the client to receive log entries from, the logging facility to be " @@ -30698,12 +30703,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:20873 +#: book.translate.xml:20880 msgid "Sample Log Server Configuration" msgstr "日誌伺服器設定範例" #. (itstool) path: example/programlisting -#: book.translate.xml:20875 +#: book.translate.xml:20882 #, no-wrap msgid "" "+logclient.example.com\n" @@ -30711,7 +30716,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20879 +#: book.translate.xml:20886 msgid "" "When adding multiple log clients, add a similar two-line entry for each " "client. More information about the available facilities may be found in " @@ -30720,12 +30725,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20883 +#: book.translate.xml:20890 msgid "Next, configure <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20886 +#: book.translate.xml:20893 #, no-wrap msgid "" "syslogd_enable=\"YES\"\n" @@ -30733,7 +30738,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20889 +#: book.translate.xml:20896 msgid "" "The first entry starts <application>syslogd</application> at system boot. " "The second entry allows log entries from the specified client. The <option>-" @@ -30743,7 +30748,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20897 +#: book.translate.xml:20904 msgid "" "Multiple <option>-a</option> options may be specified to allow logging from " "multiple clients. <acronym>IP</acronym> addresses and whole netblocks may " @@ -30753,25 +30758,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20903 +#: book.translate.xml:20910 msgid "Finally, create the log file:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20905 +#: book.translate.xml:20912 #, no-wrap msgid "<prompt>#</prompt> <userinput>touch /var/log/logclient.log</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20907 +#: book.translate.xml:20914 msgid "" "At this point, <application>syslogd</application> should be restarted and " "verified:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20910 +#: book.translate.xml:20917 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service syslogd restart</userinput>\n" @@ -30779,7 +30784,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20913 +#: book.translate.xml:20920 msgid "" "If a <acronym>PID</acronym> is returned, the server restarted successfully, " "and client configuration can begin. If the server did not restart, consult " @@ -30787,26 +30792,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20920 +#: book.translate.xml:20927 msgid "Log Client Configuration" msgstr "日誌客戶端設定" #. (itstool) path: sect3/para -#: book.translate.xml:20922 +#: book.translate.xml:20929 msgid "" "A logging client sends log entries to a logging server on the network. The " "client also keeps a local copy of its own logs." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20926 +#: book.translate.xml:20933 msgid "" "Once a logging server has been configured, edit <filename>/etc/rc.conf</" "filename> on the logging client:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20930 +#: book.translate.xml:20937 #, no-wrap msgid "" "syslogd_enable=\"YES\"\n" @@ -30814,7 +30819,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20933 +#: book.translate.xml:20940 msgid "" "The first entry enables <application>syslogd</application> on boot up. The " "second entry prevents logs from being accepted by this client from other " @@ -30822,7 +30827,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20939 +#: book.translate.xml:20946 msgid "" "Next, define the logging server in the client's <filename>/etc/syslog.conf</" "filename>. In this example, all logged facilities are sent to a remote " @@ -30831,26 +30836,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20945 +#: book.translate.xml:20952 #, no-wrap msgid "*.*\t\t@logserv.example.com" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20947 +#: book.translate.xml:20954 msgid "" "After saving the edit, restart <application>syslogd</application> for the " "changes to take effect:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20951 book.translate.xml:20995 +#: book.translate.xml:20958 book.translate.xml:21002 #, no-wrap msgid "<prompt>#</prompt> <userinput>service syslogd restart</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20953 +#: book.translate.xml:20960 msgid "" "To test that log messages are being sent across the network, use " "<citerefentry><refentrytitle>logger</refentrytitle><manvolnum>1</manvolnum></" @@ -30859,13 +30864,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:20957 +#: book.translate.xml:20964 #, no-wrap msgid "<prompt>#</prompt> <userinput>logger \"<replaceable>Test message from logclient</replaceable>\"</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20959 +#: book.translate.xml:20966 msgid "" "This message should now exist both in <filename>/var/log/messages</filename> " "on the client and <filename>/var/log/logclient.log</filename> on the log " @@ -30873,12 +30878,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:20966 +#: book.translate.xml:20973 msgid "Debugging Log Servers" msgstr "日誌伺服器除錯" #. (itstool) path: sect3/para -#: book.translate.xml:20968 +#: book.translate.xml:20975 msgid "" "If no messages are being received on the log server, the cause is most " "likely a network connectivity issue, a hostname resolution issue, or a typo " @@ -30892,7 +30897,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20982 +#: book.translate.xml:20989 msgid "" "If the <command>ping</command> succeeds on both hosts but log messages are " "still not being received, temporarily increase logging verbosity to narrow " @@ -30904,20 +30909,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:20993 +#: book.translate.xml:21000 #, no-wrap msgid "syslogd_flags=\"-d -a logclient.example.com -v -v\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:20997 +#: book.translate.xml:21004 msgid "" "Debugging data similar to the following will flash on the console " "immediately after the restart:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:21000 +#: book.translate.xml:21007 #, no-wrap msgid "" "logmsg: pri 56, flags 4, from logserv.example.com, msg syslogd: restart\n" @@ -30931,7 +30936,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21009 +#: book.translate.xml:21016 msgid "" "In this example, the log messages are being rejected due to a typo which " "results in a hostname mismatch. The client's hostname should be " @@ -30940,7 +30945,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:21015 +#: book.translate.xml:21022 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service syslogd restart</userinput>\n" @@ -30959,7 +30964,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21029 +#: book.translate.xml:21036 msgid "" "At this point, the messages are being properly received and placed in the " "correct file." @@ -30967,12 +30972,12 @@ msgstr "" #. (itstool) path: sect3/title #. (itstool) path: sect2/title -#: book.translate.xml:21034 book.translate.xml:52811 +#: book.translate.xml:21041 book.translate.xml:52432 msgid "Security Considerations" msgstr "安全注意事項" #. (itstool) path: sect3/para -#: book.translate.xml:21036 +#: book.translate.xml:21043 msgid "" "As with any network service, security requirements should be considered " "before implementing a logging server. Log files may contain sensitive data " @@ -30984,7 +30989,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21046 +#: book.translate.xml:21053 msgid "" "Local security is also an issue. Log files are not encrypted during use or " "after log rotation. Local users may access log files to gain additional " @@ -30998,44 +31003,44 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21064 +#: book.translate.xml:21071 msgid "<filename>/etc</filename> Layout" msgstr "<filename>/etc</filename> 配置" #. (itstool) path: sect2/para -#: book.translate.xml:21067 +#: book.translate.xml:21074 msgid "" "There are a number of directories in which configuration information is " "kept. These include:" msgstr "有數個目錄中儲存著設定資訊,這些目錄有:" #. (itstool) path: row/entry -#: book.translate.xml:21077 +#: book.translate.xml:21084 msgid "<filename>/etc</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21078 +#: book.translate.xml:21085 msgid "Generic system-specific configuration information." msgstr "通用系統特定的設定資訊。" #. (itstool) path: row/entry -#: book.translate.xml:21083 +#: book.translate.xml:21090 msgid "<filename>/etc/defaults</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21084 +#: book.translate.xml:21091 msgid "Default versions of system configuration files." msgstr "系統設定檔的預設版本。" #. (itstool) path: row/entry -#: book.translate.xml:21089 +#: book.translate.xml:21096 msgid "<filename>/etc/mail</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21090 +#: book.translate.xml:21097 msgid "" "Extra <citerefentry><refentrytitle>sendmail</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> configuration and other <acronym>MTA</acronym> " @@ -31045,22 +31050,22 @@ msgstr "" "manvolnum></citerefentry> 額外的設定以及其他 <acronym>MTA</acronym> 設定檔。" #. (itstool) path: row/entry -#: book.translate.xml:21095 +#: book.translate.xml:21102 msgid "<filename>/etc/ppp</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21096 +#: book.translate.xml:21103 msgid "Configuration for both user- and kernel-ppp programs." msgstr "user- 及 kernel-ppp 程式的設定。" #. (itstool) path: row/entry -#: book.translate.xml:21101 book.translate.xml:55587 +#: book.translate.xml:21108 book.translate.xml:55208 msgid "<filename>/etc/namedb</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21102 +#: book.translate.xml:21109 msgid "" "Default location for <citerefentry><refentrytitle>named</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> data. Normally " @@ -31071,24 +31076,24 @@ msgstr "" "檔案正常會儲存在此處。" #. (itstool) path: row/entry -#: book.translate.xml:21108 +#: book.translate.xml:21115 msgid "<filename>/usr/local/etc</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21109 +#: book.translate.xml:21116 msgid "" "Configuration files for installed applications. May contain per-application " "subdirectories." msgstr "已安裝應用程式的設定檔,可能會有以應用程式區分的子目錄。" #. (itstool) path: row/entry -#: book.translate.xml:21114 +#: book.translate.xml:21121 msgid "<filename>/usr/local/etc/rc.d</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21115 +#: book.translate.xml:21122 msgid "" "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> scripts for installed applications." @@ -31097,12 +31102,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> Script。" #. (itstool) path: row/entry -#: book.translate.xml:21120 +#: book.translate.xml:21127 msgid "<filename>/var/db</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21121 +#: book.translate.xml:21128 msgid "" "Automatically generated system-specific database files, such as the package " "database and the <citerefentry><refentrytitle>locate</" @@ -31113,34 +31118,34 @@ msgstr "" "citerefentry> 資料庫。" #. (itstool) path: sect2/title -#: book.translate.xml:21131 +#: book.translate.xml:21138 msgid "Hostnames" msgstr "主機名稱" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21133 +#: book.translate.xml:21140 msgid "<primary>hostname</primary>" msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:21134 book.translate.xml:49464 book.translate.xml:50566 -#: book.translate.xml:51452 book.translate.xml:55297 +#: book.translate.xml:21141 book.translate.xml:49085 book.translate.xml:50187 +#: book.translate.xml:51073 book.translate.xml:54918 msgid "<primary>DNS</primary>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21137 +#: book.translate.xml:21144 msgid "<filename>/etc/resolv.conf</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21139 +#: book.translate.xml:21146 msgid "<primary><filename>resolv.conf</filename></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21143 +#: book.translate.xml:21150 msgid "" "How a FreeBSD system accesses the Internet Domain Name System (<acronym>DNS</" "acronym>) is controlled by <citerefentry><refentrytitle>resolv.conf</" @@ -31151,17 +31156,17 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 來控制。" #. (itstool) path: sect3/para -#: book.translate.xml:21147 +#: book.translate.xml:21154 msgid "The most common entries to <filename>/etc/resolv.conf</filename> are:" msgstr "<filename>/etc/resolv.conf</filename> 中最常用的項目為:" #. (itstool) path: row/entry -#: book.translate.xml:21157 +#: book.translate.xml:21164 msgid "<literal>nameserver</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21158 +#: book.translate.xml:21165 msgid "" "The <acronym>IP</acronym> address of a name server the resolver should " "query. The servers are queried in the order listed with a maximum of three." @@ -31170,34 +31175,34 @@ msgstr "" "會依所列的順序來查詢,最多可以有三個。" #. (itstool) path: row/entry -#: book.translate.xml:21165 +#: book.translate.xml:21172 msgid "<literal>search</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21166 +#: book.translate.xml:21173 msgid "" "Search list for hostname lookup. This is normally determined by the domain " "of the local hostname." msgstr "主機名稱查詢使用的搜尋清單。這通常會使用本機主機名稱所在的網域。" #. (itstool) path: row/entry -#: book.translate.xml:21172 +#: book.translate.xml:21179 msgid "<literal>domain</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:21173 +#: book.translate.xml:21180 msgid "The local domain name." msgstr "本地網域名稱。" #. (itstool) path: sect3/para -#: book.translate.xml:21179 +#: book.translate.xml:21186 msgid "A typical <filename>/etc/resolv.conf</filename> looks like this:" msgstr "典型的 <filename>/etc/resolv.conf</filename> 會如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21182 +#: book.translate.xml:21189 #, no-wrap msgid "" "search example.com\n" @@ -31206,7 +31211,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:21187 +#: book.translate.xml:21194 msgid "" "Only one of the <literal>search</literal> and <literal>domain</literal> " "options should be used." @@ -31214,7 +31219,7 @@ msgstr "" "<literal>search</literal> 與 <literal>domain</literal> 選項應擇一使用。" #. (itstool) path: sect3/para -#: book.translate.xml:21191 +#: book.translate.xml:21198 msgid "" "When using <acronym>DHCP</acronym>, <citerefentry><refentrytitle>dhclient</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> usually rewrites " @@ -31227,17 +31232,17 @@ msgstr "" "filename>。" #. (itstool) path: sect3/title -#: book.translate.xml:21198 +#: book.translate.xml:21205 msgid "<filename>/etc/hosts</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21200 +#: book.translate.xml:21207 msgid "<primary>hosts</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21202 +#: book.translate.xml:21209 msgid "" "<filename>/etc/hosts</filename> is a simple text database which works in " "conjunction with <acronym>DNS</acronym> and <acronym>NIS</acronym> to " @@ -31258,7 +31263,7 @@ msgstr "" "用名稱向外部 <acronym>DNS</acronym> 伺服器查詢的需求。" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21215 +#: book.translate.xml:21222 #, no-wrap msgid "" "# $FreeBSD$\n" @@ -31296,29 +31301,29 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21248 +#: book.translate.xml:21255 msgid "The format of <filename>/etc/hosts</filename> is as follows:" msgstr "<filename>/etc/hosts</filename> 的格式如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21251 +#: book.translate.xml:21258 #, no-wrap msgid "[Internet address] [official hostname] [alias1] [alias2] ..." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21253 +#: book.translate.xml:21260 msgid "For example:" msgstr "例如:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:21255 +#: book.translate.xml:21262 #, no-wrap msgid "10.0.0.1 myRealHostname.example.com myRealHostname foobar1 foobar2" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21257 +#: book.translate.xml:21264 msgid "" "Consult <citerefentry><refentrytitle>hosts</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information." @@ -31327,7 +31332,7 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: sect1/title -#: book.translate.xml:21263 +#: book.translate.xml:21270 msgid "" "Tuning with <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" @@ -31337,17 +31342,17 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:21265 book.translate.xml:21310 +#: book.translate.xml:21272 book.translate.xml:21317 msgid "<primary>sysctl</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:21266 +#: book.translate.xml:21273 msgid "<primary>tuning</primary> <secondary>with sysctl</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21271 +#: book.translate.xml:21278 msgid "" "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> is used to make changes to a running FreeBSD system. This " @@ -31364,7 +31369,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 來讀取與設定。" #. (itstool) path: sect1/para -#: book.translate.xml:21278 +#: book.translate.xml:21285 msgid "" "At its core, <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> serves two functions: " @@ -31374,23 +31379,23 @@ msgstr "" "citerefentry> 主要提供兩個功能:讀取與修改系統設定。" #. (itstool) path: sect1/para -#: book.translate.xml:21281 +#: book.translate.xml:21288 msgid "To view all readable variables:" msgstr "檢視所有可讀取的變數:" #. (itstool) path: sect1/screen -#: book.translate.xml:21283 +#: book.translate.xml:21290 #, no-wrap msgid "<prompt>%</prompt> <userinput>sysctl -a</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21285 +#: book.translate.xml:21292 msgid "To read a particular variable, specify its name:" msgstr "要讀取特定變數只要指定其名稱:" #. (itstool) path: sect1/screen -#: book.translate.xml:21287 +#: book.translate.xml:21294 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sysctl kern.maxproc</userinput>\n" @@ -31398,7 +31403,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21290 +#: book.translate.xml:21297 msgid "" "To set a particular variable, use the <replaceable>variable</" "replaceable>=<replaceable>value</replaceable> syntax:" @@ -31407,7 +31412,7 @@ msgstr "" "replaceable> 語法:" #. (itstool) path: sect1/screen -#: book.translate.xml:21294 +#: book.translate.xml:21301 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl kern.maxfiles=5000</userinput>\n" @@ -31415,7 +31420,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:21297 +#: book.translate.xml:21304 msgid "" "Settings of sysctl variables are usually either strings, numbers, or " "booleans, where a boolean is <literal>1</literal> for yes or <literal>0</" @@ -31425,7 +31430,7 @@ msgstr "" "表是,<literal>0</literal> 代表否。" #. (itstool) path: sect1/para -#: book.translate.xml:21301 +#: book.translate.xml:21308 msgid "" "To automatically set some variables each time the machine boots, add them to " "<filename>/etc/sysctl.conf</filename>. For more information, refer to " @@ -31438,17 +31443,17 @@ msgstr "" "\"configtuning-sysctlconf\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:21307 +#: book.translate.xml:21314 msgid "<filename>sysctl.conf</filename>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21309 +#: book.translate.xml:21316 msgid "<primary>sysctl.conf</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21312 +#: book.translate.xml:21319 msgid "" "The configuration file for <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, <filename>/etc/sysctl." @@ -31464,7 +31469,7 @@ msgstr "" "此模式設定。" #. (itstool) path: sect2/para -#: book.translate.xml:21319 +#: book.translate.xml:21326 msgid "" "For example, to turn off logging of fatal signal exits and prevent users " "from seeing processes started by other users, the following tunables can be " @@ -31474,7 +31479,7 @@ msgstr "" "行的程序,可加入以下設定到 <filename>/etc/sysctl.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:21324 +#: book.translate.xml:21331 #, no-wrap msgid "" "# Do not log fatal signal exits (e.g., sig 11)\n" @@ -31486,7 +31491,7 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:21334 +#: book.translate.xml:21341 msgid "" "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> Read-only" @@ -31495,7 +31500,7 @@ msgstr "" "manvolnum></citerefentry>" #. (itstool) path: sect2/para -#: book.translate.xml:21347 +#: book.translate.xml:21354 msgid "" "In some cases it may be desirable to modify read-only " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31506,7 +31511,7 @@ msgstr "" "動系統。" #. (itstool) path: sect2/para -#: book.translate.xml:21351 +#: book.translate.xml:21358 msgid "" "For instance, on some laptop models the " "<citerefentry><refentrytitle>cardbus</refentrytitle><manvolnum>4</" @@ -31518,7 +31523,7 @@ msgstr "" "圍而且會失效並有類似以下的錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:21355 +#: book.translate.xml:21362 #, no-wrap msgid "" "cbb0: Could not map register memory\n" @@ -31526,7 +31531,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21358 +#: book.translate.xml:21365 msgid "" "The fix requires the modification of a read-only " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31542,12 +31547,12 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry> 應可正常運作。" #. (itstool) path: sect1/title -#: book.translate.xml:21367 +#: book.translate.xml:21374 msgid "Tuning Disks" msgstr "調校磁碟" #. (itstool) path: sect1/para -#: book.translate.xml:21369 +#: book.translate.xml:21376 msgid "" "The following section will discuss various tuning mechanisms and options " "which may be applied to disk devices. In many cases, disks with mechanical " @@ -31570,22 +31575,22 @@ msgstr "" "<acronym>IO</acronym> 相關的有用資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:21383 +#: book.translate.xml:21390 msgid "Sysctl Variables" msgstr "Sysctl 變數" #. (itstool) path: sect3/title -#: book.translate.xml:21386 +#: book.translate.xml:21393 msgid "<varname>vfs.vmiodirenable</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21388 +#: book.translate.xml:21395 msgid "<primary><varname>vfs.vmiodirenable</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21392 +#: book.translate.xml:21399 msgid "" "The <varname>vfs.vmiodirenable</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31609,17 +31614,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21418 +#: book.translate.xml:21425 msgid "<varname>vfs.write_behind</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21420 +#: book.translate.xml:21427 msgid "<primary><varname>vfs.write_behind</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21424 +#: book.translate.xml:21431 msgid "" "The <varname>vfs.write_behind</varname> <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable defaults to " @@ -31631,17 +31636,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21436 +#: book.translate.xml:21443 msgid "<varname>vfs.hirunningspace</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21438 +#: book.translate.xml:21445 msgid "<primary><varname>vfs.hirunningspace</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21442 +#: book.translate.xml:21449 msgid "" "The <varname>vfs.hirunningspace</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31655,7 +31660,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21453 +#: book.translate.xml:21460 msgid "" "There are various other buffer cache and <acronym>VM</acronym> page cache " "related <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</" @@ -31665,17 +31670,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21461 +#: book.translate.xml:21468 msgid "<varname>vm.swap_idle_enabled</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21463 +#: book.translate.xml:21470 msgid "<primary><varname>vm.swap_idle_enabled</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21467 +#: book.translate.xml:21474 msgid "" "The <varname>vm.swap_idle_enabled</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -31695,17 +31700,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21488 +#: book.translate.xml:21495 msgid "<varname>hw.ata.wc</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21490 +#: book.translate.xml:21497 msgid "<primary><varname>hw.ata.wc</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21494 +#: book.translate.xml:21501 msgid "" "Turning off <acronym>IDE</acronym> write caching reduces write bandwidth to " "<acronym>IDE</acronym> disks, but may sometimes be necessary due to data " @@ -31723,24 +31728,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21512 +#: book.translate.xml:21519 msgid "" "For more information, refer to <citerefentry><refentrytitle>ata</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21516 +#: book.translate.xml:21523 msgid "<literal>SCSI_DELAY</literal> (<varname>kern.cam.scsi_delay</varname>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21519 +#: book.translate.xml:21526 msgid "<primary><varname>kern.cam.scsi_delay</varname></primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21523 +#: book.translate.xml:21530 msgid "" "<primary>kernel options</primary> <secondary><literal>SCSI DELAY</literal></" "secondary>" @@ -31749,7 +31754,7 @@ msgstr "" "secondary>" #. (itstool) path: sect3/para -#: book.translate.xml:21528 +#: book.translate.xml:21535 msgid "" "The <literal>SCSI_DELAY</literal> kernel configuration option may be used to " "reduce system boot times. The defaults are fairly high and can be " @@ -31762,24 +31767,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21544 +#: book.translate.xml:21551 msgid "Soft Updates" msgstr "軟更新" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21546 +#: book.translate.xml:21553 msgid "<primary>Soft Updates</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:21547 +#: book.translate.xml:21554 msgid "" "<primary><citerefentry><refentrytitle>tunefs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21549 +#: book.translate.xml:21556 msgid "" "To fine-tune a file system, use <citerefentry><refentrytitle>tunefs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This program has many " @@ -31787,7 +31792,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:21553 +#: book.translate.xml:21560 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>tunefs -n enable /filesystem</userinput>\n" @@ -31795,7 +31800,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21556 +#: book.translate.xml:21563 msgid "" "A file system cannot be modified with <citerefentry><refentrytitle>tunefs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> while it is mounted. A " @@ -31804,7 +31809,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21560 +#: book.translate.xml:21567 msgid "" "Soft Updates is recommended for <acronym>UFS</acronym> file systems as it " "drastically improves meta-data performance, mainly file creation and " @@ -31819,17 +31824,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21574 +#: book.translate.xml:21581 msgid "More Details About Soft Updates" msgstr "有關軟更新的更多詳細資訊" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21576 +#: book.translate.xml:21583 msgid "<primary>Soft Updates</primary> <secondary>details</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21581 +#: book.translate.xml:21588 msgid "" "Meta-data updates are updates to non-content data like inodes or " "directories. There are two traditional approaches to writing a file system's " @@ -31837,7 +31842,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21585 +#: book.translate.xml:21592 msgid "" "Historically, the default behavior was to write out meta-data updates " "synchronously. If a directory changed, the system waited until the change " @@ -31860,7 +31865,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21608 +#: book.translate.xml:21615 msgid "" "The second approach is to use asynchronous meta-data updates. This is the " "default for a <acronym>UFS</acronym> file system mounted with <command>mount " @@ -31886,7 +31891,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21635 +#: book.translate.xml:21642 msgid "" "The usual solution for this problem is to implement <emphasis>dirty region " "logging</emphasis>, which is also referred to as <emphasis>journaling</" @@ -31905,7 +31910,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21654 +#: book.translate.xml:21661 msgid "" "Kirk McKusick, the developer of Berkeley <acronym>FFS</acronym>, solved this " "problem with Soft Updates. All pending meta-data updates are kept in memory " @@ -31945,7 +31950,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21692 +#: book.translate.xml:21699 msgid "" "The advantage is that meta-data operations are nearly as fast as " "asynchronous updates and are faster than <emphasis>logging</emphasis>, which " @@ -31965,32 +31970,32 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:21714 +#: book.translate.xml:21721 msgid "Tuning Kernel Limits" msgstr "調校核心限制" #. (itstool) path: sect1/indexterm -#: book.translate.xml:21716 +#: book.translate.xml:21723 msgid "<primary>tuning</primary> <secondary>kernel limits</secondary>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21722 +#: book.translate.xml:21729 msgid "File/Process Limits" msgstr "檔案/程序限制" #. (itstool) path: sect3/title -#: book.translate.xml:21725 +#: book.translate.xml:21732 msgid "<varname>kern.maxfiles</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21727 +#: book.translate.xml:21734 msgid "<primary><varname>kern.maxfiles</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21731 +#: book.translate.xml:21738 msgid "" "The <varname>kern.maxfiles</varname> <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable can be raised " @@ -32003,7 +32008,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21739 +#: book.translate.xml:21746 msgid "" "Each open file, socket, or fifo uses one file descriptor. A large-scale " "production server may easily require many thousands of file descriptors, " @@ -32011,7 +32016,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21744 +#: book.translate.xml:21751 msgid "" "In older FreeBSD releases, the default value of <varname>kern.maxfiles</" "varname> is derived from <option>maxusers</option> in the kernel " @@ -32024,7 +32029,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21756 +#: book.translate.xml:21763 msgid "" "The read-only <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable <varname>kern." @@ -32043,7 +32048,7 @@ msgid "" msgstr "" #. (itstool) path: footnote/para -#: book.translate.xml:21778 +#: book.translate.xml:21785 msgid "" "The auto-tuning algorithm sets <literal>maxusers</literal> equal to the " "amount of memory in the system, with a minimum of <literal>32</literal>, and " @@ -32051,7 +32056,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21775 +#: book.translate.xml:21782 msgid "" "In older releases, the system will auto-tune <literal>maxusers</literal> if " "it is set to <literal>0</literal>. <_:footnote-1/>. When setting this " @@ -32074,7 +32079,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:21807 +#: book.translate.xml:21814 msgid "" "<literal>maxusers</literal> does <emphasis>not</emphasis> limit the number " "of users which can log into the machine. It instead sets various table sizes " @@ -32083,17 +32088,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21817 +#: book.translate.xml:21824 msgid "<varname>kern.ipc.soacceptqueue</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21819 +#: book.translate.xml:21826 msgid "<primary><varname>kern.ipc.soacceptqueue</varname></primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21823 +#: book.translate.xml:21830 msgid "" "The <varname>kern.ipc.soacceptqueue</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -32110,12 +32115,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21840 +#: book.translate.xml:21847 msgid "Network Limits" msgstr "網路限制" #. (itstool) path: sect2/para -#: book.translate.xml:21842 +#: book.translate.xml:21849 msgid "" "The <literal>NMBCLUSTERS</literal> kernel configuration option dictates the " "amount of network Mbufs available to the system. A heavily-trafficked server " @@ -32137,7 +32142,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21866 +#: book.translate.xml:21873 msgid "" "The <varname>kern.ipc.nmbclusters</varname> loader tunable should be used to " "tune this at boot time. Only older versions of FreeBSD will require the use " @@ -32147,7 +32152,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:21872 +#: book.translate.xml:21879 msgid "" "For busy servers that make extensive use of the " "<citerefentry><refentrytitle>sendfile</refentrytitle><manvolnum>2</" @@ -32166,7 +32171,7 @@ msgid "" msgstr "" #. (itstool) path: important/para -#: book.translate.xml:21886 +#: book.translate.xml:21893 msgid "" "Even though a socket has been marked as non-blocking, calling " "<citerefentry><refentrytitle>sendfile</refentrytitle><manvolnum>2</" @@ -32177,17 +32182,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21894 +#: book.translate.xml:21901 msgid "<varname>net.inet.ip.portrange.*</varname>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21896 +#: book.translate.xml:21903 msgid "<primary>net.inet.ip.portrange.*</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21900 +#: book.translate.xml:21907 msgid "" "The <varname>net.inet.ip.portrange.*</varname> " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -32214,19 +32219,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:21931 +#: book.translate.xml:21938 msgid "<literal>TCP</literal> Bandwidth Delay Product" msgstr "<literal>TCP</literal> 頻寬延遲乘積" #. (itstool) path: sect3/indexterm -#: book.translate.xml:21933 +#: book.translate.xml:21940 msgid "" "<primary><literal>TCP</literal> Bandwidth Delay Product Limiting</primary> " "<secondary><varname>net.inet.tcp.inflight.enable</varname></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21939 +#: book.translate.xml:21946 msgid "" "<literal>TCP</literal> bandwidth delay product limiting can be enabled by " "setting the <varname>net.inet.tcp.inflight.enable</varname> " @@ -32238,7 +32243,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21948 +#: book.translate.xml:21955 msgid "" "This feature is useful when serving data over modems, Gigabit Ethernet, high " "speed <literal>WAN</literal> links, or any other link with a high bandwidth " @@ -32258,7 +32263,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21968 +#: book.translate.xml:21975 msgid "" "Adjusting <varname>net.inet.tcp.inflight.stab</varname> is <emphasis>not</" "emphasis> recommended. This parameter defaults to <literal>20</literal>, " @@ -32275,17 +32280,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:21987 +#: book.translate.xml:21994 msgid "Virtual Memory" msgstr "虛擬記憶體" #. (itstool) path: sect3/title -#: book.translate.xml:21990 +#: book.translate.xml:21997 msgid "<varname>kern.maxvnodes</varname>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:21992 +#: book.translate.xml:21999 msgid "" "A vnode is the internal representation of a file or directory. Increasing " "the number of vnodes available to the operating system reduces disk I/O. " @@ -32296,12 +32301,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22002 +#: book.translate.xml:22009 msgid "To see the current number of vnodes in use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22004 +#: book.translate.xml:22011 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl vfs.numvnodes</userinput>\n" @@ -32309,12 +32314,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22007 +#: book.translate.xml:22014 msgid "To see the maximum vnodes:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22009 +#: book.translate.xml:22016 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl kern.maxvnodes</userinput>\n" @@ -32322,7 +32327,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22012 +#: book.translate.xml:22019 msgid "" "If the current vnode usage is near the maximum, try increasing <varname>kern." "maxvnodes</varname> by a value of <literal>1000</literal>. Keep an eye on " @@ -32334,12 +32339,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:22025 +#: book.translate.xml:22032 msgid "Adding Swap Space" msgstr "增加交換空間" #. (itstool) path: sect1/para -#: book.translate.xml:22027 +#: book.translate.xml:22034 msgid "" "Sometimes a system requires more swap space. This section describes two " "methods to increase swap space: adding swap to an existing partition or new " @@ -32350,7 +32355,7 @@ msgstr "" "交換檔。" #. (itstool) path: sect1/para -#: book.translate.xml:22032 +#: book.translate.xml:22039 msgid "" "For information on how to encrypt swap space, which options exist, and why " "it should be done, refer to <xref linkend=\"swap-encrypting\"/>." @@ -32359,12 +32364,12 @@ msgstr "" "考 <xref linkend=\"swap-encrypting\"/>。" #. (itstool) path: sect2/title -#: book.translate.xml:22036 +#: book.translate.xml:22043 msgid "Swap on a New Hard Drive or Existing Partition" msgstr "使用新硬碟或既有分割區增加交換空間" #. (itstool) path: sect2/para -#: book.translate.xml:22038 +#: book.translate.xml:22045 msgid "" "Adding a new hard drive for swap gives better performance than using a " "partition on an existing drive. Setting up partitions and hard drives is " @@ -32377,20 +32382,20 @@ msgstr "" "\"configtuning-initial\"/> 會討論到分割區的配置與交換分割區大小需考量的事項。" #. (itstool) path: sect2/para -#: book.translate.xml:22043 +#: book.translate.xml:22050 msgid "" "Use <command>swapon</command> to add a swap partition to the system. For " "example:" msgstr "使用 <command>swapon</command> 來增加交換分割區到系統,例:" #. (itstool) path: sect2/screen -#: book.translate.xml:22046 +#: book.translate.xml:22053 #, no-wrap msgid "<prompt>#</prompt> <userinput>swapon <replaceable>/dev/ada1s1b</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:22049 +#: book.translate.xml:22056 msgid "" "It is possible to use any partition not currently mounted, even if it " "already contains data. Using <command>swapon</command> on a partition that " @@ -32403,7 +32408,7 @@ msgstr "" "在執行 <command>swapon</command> 之前確認真的要使用該分割區增加交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:22057 +#: book.translate.xml:22064 msgid "" "To automatically add this swap partition on boot, add an entry to <filename>/" "etc/fstab</filename>:" @@ -32412,13 +32417,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:22060 +#: book.translate.xml:22067 #, no-wrap msgid "<replaceable>/dev/ada1s1b</replaceable>\tnone\tswap\tsw\t0\t0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22062 +#: book.translate.xml:22069 msgid "" "See <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for an explanation of the entries in <filename>/" @@ -32433,12 +32438,12 @@ msgstr "" "citerefentry> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:22069 +#: book.translate.xml:22076 msgid "Creating a Swap File" msgstr "建立交換檔" #. (itstool) path: sect2/para -#: book.translate.xml:22071 +#: book.translate.xml:22078 msgid "" "These examples create a 64M swap file called <filename>/usr/swap0</filename> " "instead of using a partition." @@ -32447,7 +32452,7 @@ msgstr "" "分割區建立交換空間。" #. (itstool) path: sect2/para -#: book.translate.xml:22075 +#: book.translate.xml:22082 msgid "" "Using swap files requires that the module needed by " "<citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</manvolnum></" @@ -32461,48 +32466,48 @@ msgstr "" "譯自訂核心的資訊。" #. (itstool) path: example/title -#: book.translate.xml:22082 +#: book.translate.xml:22089 msgid "" "Creating a Swap File on FreeBSD 10.<replaceable>X</replaceable> and Later" msgstr "建立交換檔於 FreeBSD 10.<replaceable>X</replaceable> 及以後版本" #. (itstool) path: step/para -#: book.translate.xml:22087 +#: book.translate.xml:22094 msgid "Create the swap file:" msgstr "建立交換檔:" #. (itstool) path: step/screen -#: book.translate.xml:22089 book.translate.xml:22127 +#: book.translate.xml:22096 book.translate.xml:22134 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>/usr/swap0</replaceable> bs=1m count=<replaceable>64</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:22093 +#: book.translate.xml:22100 msgid "Set the proper permissions on the new file:" msgstr "在新檔案設定適當的權限:" #. (itstool) path: step/screen -#: book.translate.xml:22095 book.translate.xml:22134 +#: book.translate.xml:22102 book.translate.xml:22141 #, no-wrap msgid "<prompt>#</prompt> <userinput>chmod 0600 <replaceable>/usr/swap0</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:22099 +#: book.translate.xml:22106 msgid "" "Inform the system about the swap file by adding a line to <filename>/etc/" "fstab</filename>:" msgstr "加入行到 <filename>/etc/fstab</filename> 以讓系統知道交換檔的資訊:" #. (itstool) path: step/programlisting -#: book.translate.xml:22102 +#: book.translate.xml:22109 #, no-wrap msgid "md99\tnone\tswap\tsw,file=/usr/swap0,late\t0\t0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:22104 +#: book.translate.xml:22111 msgid "" "The <citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</manvolnum></" "citerefentry> device <filename>md99</filename> is used, leaving lower device " @@ -32513,7 +32518,7 @@ msgstr "" "號供互動操作時使用。" #. (itstool) path: step/para -#: book.translate.xml:22110 +#: book.translate.xml:22117 msgid "" "Swap space will be added on system startup. To add swap space immediately, " "use <citerefentry><refentrytitle>swapon</refentrytitle><manvolnum>8</" @@ -32524,40 +32529,40 @@ msgstr "" "citerefentry>:" #. (itstool) path: step/screen -#: book.translate.xml:22113 +#: book.translate.xml:22120 #, no-wrap msgid "<prompt>#</prompt> <userinput>swapon -aL</userinput>" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:22119 +#: book.translate.xml:22126 msgid "" "Creating a Swap File on FreeBSD 9.<replaceable>X</replaceable> and Earlier" msgstr "建立交換檔於 FreeBSD 9.<replaceable>X</replaceable> 及先前版本" #. (itstool) path: step/para -#: book.translate.xml:22124 +#: book.translate.xml:22131 msgid "Create the swap file, <filename>/usr/swap0</filename>:" msgstr "建立交換檔 <filename>/usr/swap0</filename>:" #. (itstool) path: step/para -#: book.translate.xml:22131 +#: book.translate.xml:22138 msgid "Set the proper permissions on <filename>/usr/swap0</filename>:" msgstr "設定適當的權限於 <filename>/usr/swap0</filename>:" #. (itstool) path: step/para -#: book.translate.xml:22138 +#: book.translate.xml:22145 msgid "Enable the swap file in <filename>/etc/rc.conf</filename>:" msgstr "在 <filename>/etc/rc.conf</filename> 開啟交換檔:" #. (itstool) path: step/programlisting -#: book.translate.xml:22141 +#: book.translate.xml:22148 #, no-wrap msgid "swapfile=\"<replaceable>/usr/swap0</replaceable>\" # Set to name of swap file" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:22145 +#: book.translate.xml:22152 msgid "" "Swap space will be added on system startup. To enable the swap file " "immediately, specify a free memory device. Refer to <xref linkend=\"disks-" @@ -32567,32 +32572,32 @@ msgstr "" "置。請參考 <xref linkend=\"disks-virtual\"/> 取得更多有關記憶體裝置的資訊。" #. (itstool) path: step/screen -#: book.translate.xml:22150 +#: book.translate.xml:22157 #, no-wrap msgid "<prompt>#</prompt> <userinput>mdconfig -a -t vnode -f <replaceable>/usr/swap0</replaceable> -u <replaceable>0</replaceable> && swapon /dev/md<replaceable>0</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:22159 +#: book.translate.xml:22166 msgid "Power and Resource Management" msgstr "電源與資源管理" #. (itstool) path: authorgroup/author -#: book.translate.xml:22162 +#: book.translate.xml:22169 msgid "" "<personname> <firstname>Hiten</firstname> <surname>Pandya</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:22170 book.translate.xml:22650 +#: book.translate.xml:22177 book.translate.xml:22657 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22179 +#: book.translate.xml:22186 msgid "" "It is important to utilize hardware resources in an efficient manner. Power " "and resource management allows the operating system to monitor system limits " @@ -32620,7 +32625,7 @@ msgstr "" "取 <acronym>APM</acronym> 軟體介面才能夠管理電源等級。" #. (itstool) path: sect1/para -#: book.translate.xml:22198 +#: book.translate.xml:22205 msgid "" "There are four major problems in <acronym>APM</acronym>. First, power " "management is done by the vendor-specific <acronym>BIOS</acronym>, separate " @@ -32654,7 +32659,7 @@ msgstr "" "源管理政策或可良好適應主機用途的程式。" #. (itstool) path: sect1/para -#: book.translate.xml:22220 +#: book.translate.xml:22227 msgid "" "The Plug and Play <acronym>BIOS</acronym> (<acronym>PNPBIOS</acronym>) was " "unreliable in many situations. <acronym>PNPBIOS</acronym> is 16-bit " @@ -32673,17 +32678,17 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22230 +#: book.translate.xml:22237 msgid "<primary>ACPI</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22234 +#: book.translate.xml:22241 msgid "<primary>APM</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22238 +#: book.translate.xml:22245 msgid "" "The successor to <acronym>APM</acronym> is the Advanced Configuration and " "Power Interface (<acronym>ACPI</acronym>). <acronym>ACPI</acronym> is a " @@ -32700,7 +32705,7 @@ msgstr "" "Management)</emphasis> 關鍵的要素,提供了作業系統更多的控制方式與彈性。" #. (itstool) path: sect1/para -#: book.translate.xml:22247 +#: book.translate.xml:22254 msgid "" "This chapter demonstrates how to configure <acronym>ACPI</acronym> on " "FreeBSD. It then offers some tips on how to debug <acronym>ACPI</acronym> " @@ -32712,12 +32717,12 @@ msgstr "" "人員能夠診斷並修正 <acronym>ACPI</acronym> 的問題。" #. (itstool) path: sect2/title -#: book.translate.xml:22254 +#: book.translate.xml:22261 msgid "Configuring <acronym>ACPI</acronym>" msgstr "設定 <acronym>ACPI</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:22256 +#: book.translate.xml:22263 msgid "" "In FreeBSD the <citerefentry><refentrytitle>acpi</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver is loaded by " @@ -32738,7 +32743,7 @@ msgstr "" "如 <xref linkend=\"boot-loader\"/> 中的說明。" #. (itstool) path: note/para -#: book.translate.xml:22268 +#: book.translate.xml:22275 msgid "" "<acronym>ACPI</acronym> and <acronym>APM</acronym> cannot coexist and should " "be used separately. The last one to load will terminate if the driver " @@ -32748,7 +32753,7 @@ msgstr "" "若有偵測到有另一個正在執行,要載入的後者將會中斷。" #. (itstool) path: sect2/para -#: book.translate.xml:22274 +#: book.translate.xml:22281 msgid "" "<acronym>ACPI</acronym> can be used to put the system into a sleep mode with " "<command>acpiconf</command>, the <option>-s</option> flag, and a number from " @@ -32766,7 +32771,7 @@ msgstr "" "<command>halt -p</command> 一樣。" #. (itstool) path: sect2/para -#: book.translate.xml:22284 +#: book.translate.xml:22291 msgid "" "Other options are available using <command>sysctl</command>. Refer to " "<citerefentry><refentrytitle>acpi</refentrytitle><manvolnum>4</manvolnum></" @@ -32779,17 +32784,17 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 以取得更多資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:22290 +#: book.translate.xml:22297 msgid "Common Problems" msgstr "常見問題" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22292 +#: book.translate.xml:22299 msgid "<primary><acronym>ACPI</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22296 +#: book.translate.xml:22303 msgid "" "<acronym>ACPI</acronym> is present in all modern computers that conform to " "the ia32 (x86), ia64 (Itanium), and amd64 (<acronym>AMD</acronym>) " @@ -32803,7 +32808,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22308 +#: book.translate.xml:22315 msgid "" "An <acronym>ACPI</acronym>-compliant system has various components. The " "<acronym>BIOS</acronym> and chipset vendors provide various fixed tables, " @@ -32815,7 +32820,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22318 +#: book.translate.xml:22325 msgid "" "The <acronym>ACPI</acronym> driver must parse the fixed tables, implement an " "interpreter for the bytecode, and modify device drivers and the kernel to " @@ -32831,12 +32836,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22331 book.translate.xml:22659 book.translate.xml:22714 +#: book.translate.xml:22338 book.translate.xml:22666 book.translate.xml:22721 msgid "<primary>ACPI</primary> <secondary>problems</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22336 +#: book.translate.xml:22343 msgid "" "For <acronym>ACPI</acronym> to work correctly, all the parts have to work " "correctly. Here are some common problems, in order of frequency of " @@ -32846,12 +32851,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22344 +#: book.translate.xml:22351 msgid "Mouse Issues" msgstr "滑鼠問題" #. (itstool) path: sect3/para -#: book.translate.xml:22346 +#: book.translate.xml:22353 msgid "" "In some cases, resuming from a suspend operation will cause the mouse to " "fail. A known work around is to add <literal>hint.psm.0.flags=\"0x3000\"</" @@ -32859,12 +32864,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22353 +#: book.translate.xml:22360 msgid "Suspend/Resume" msgstr "待機/喚醒" #. (itstool) path: sect3/para -#: book.translate.xml:22355 +#: book.translate.xml:22362 msgid "" "<acronym>ACPI</acronym> has three suspend to <acronym>RAM</acronym> " "(<acronym>STR</acronym>) states, <literal>S1</literal>-<literal>S3</" @@ -32878,14 +32883,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22368 +#: book.translate.xml:22375 msgid "" "Use <command>sysctl hw.acpi</command> to check for the suspend-related " "items. These example results are from a Thinkpad:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22372 +#: book.translate.xml:22379 #, no-wrap msgid "" "hw.acpi.supported_sleep_state: S3 S4 S5\n" @@ -32893,7 +32898,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22375 +#: book.translate.xml:22382 msgid "" "Use <command>acpiconf -s</command> to test <literal>S3</literal>, " "<literal>S4</literal>, and <literal>S5</literal>. An <option>s4bios</option> " @@ -32902,7 +32907,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22382 +#: book.translate.xml:22389 msgid "" "When testing suspend/resume, start with <literal>S1</literal>, if supported. " "This state is most likely to work since it does not require much driver " @@ -32913,7 +32918,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22391 +#: book.translate.xml:22398 msgid "" "A common problem with suspend/resume is that many device drivers do not " "save, restore, or reinitialize their firmware, registers, or device memory " @@ -32921,7 +32926,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22396 +#: book.translate.xml:22403 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl debug.bootverbose=1</userinput>\n" @@ -32930,7 +32935,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22400 +#: book.translate.xml:22407 msgid "" "This test emulates the suspend/resume cycle of all device drivers without " "actually going into <literal>S3</literal> state. In some cases, problems " @@ -32942,7 +32947,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22410 +#: book.translate.xml:22417 msgid "" "Harder cases require additional hardware, such as a serial port and cable " "for debugging through a serial console, a Firewire port and cable for using " @@ -32951,7 +32956,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22415 +#: book.translate.xml:22422 msgid "" "To help isolate the problem, unload as many drivers as possible. If it " "works, narrow down which driver is the problem by loading drivers until it " @@ -32966,7 +32971,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22431 +#: book.translate.xml:22438 msgid "" "Try loading a recent <trademark class=\"registered\">Linux</trademark> " "distribution to see if suspend/resume works on the same hardware. If it " @@ -32983,7 +32988,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22443 +#: book.translate.xml:22450 msgid "" "Finally, try disabling <acronym>ACPI</acronym> and enabling <acronym>APM</" "acronym> instead. If suspend/resume works with <acronym>APM</acronym>, stick " @@ -32994,12 +32999,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22454 +#: book.translate.xml:22461 msgid "System Hangs" msgstr "系統無回應" #. (itstool) path: sect3/para -#: book.translate.xml:22456 +#: book.translate.xml:22463 msgid "" "Most system hangs are a result of lost interrupts or an interrupt storm. " "Chipsets may have problems based on boot, how the <acronym>BIOS</acronym> " @@ -33009,12 +33014,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:22463 +#: book.translate.xml:22470 msgid "<primary>interrupt storms</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22467 +#: book.translate.xml:22474 msgid "" "Interrupt storms can be distinguished from lost interrupts by checking the " "output of <command>vmstat -i</command> and looking at the line that has " @@ -33026,12 +33031,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:22480 +#: book.translate.xml:22487 msgid "<primary>APIC</primary> <secondary>disabling</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22485 +#: book.translate.xml:22492 msgid "" "When dealing with interrupt problems, try disabling <acronym>APIC</acronym> " "support with <literal>hint.apic.0.disabled=\"1\"</literal> in <filename>/" @@ -33039,12 +33044,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22492 +#: book.translate.xml:22499 msgid "Panics" msgstr "當機" #. (itstool) path: sect3/para -#: book.translate.xml:22494 +#: book.translate.xml:22501 msgid "" "Panics are relatively rare for <acronym>ACPI</acronym> and are the top " "priority to be fixed. The first step is to isolate the steps to reproduce " @@ -33057,7 +33062,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22505 +#: book.translate.xml:22512 msgid "" "Then, try to isolate the problem by booting with <acronym>ACPI</acronym> " "disabled. If that works, isolate the <acronym>ACPI</acronym> subsystem by " @@ -33067,12 +33072,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22513 +#: book.translate.xml:22520 msgid "System Powers Up After Suspend or Shutdown" msgstr "系統在待機或關機後仍開機" #. (itstool) path: sect3/para -#: book.translate.xml:22515 +#: book.translate.xml:22522 msgid "" "First, try setting <literal>hw.acpi.disable_on_poweroff=\"0\"</literal> in " "<filename>/boot/loader.conf</filename>. This keeps <acronym>ACPI</acronym> " @@ -33083,27 +33088,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:22526 +#: book.translate.xml:22533 msgid "BIOS Contains Buggy Bytecode" msgstr "BIOS 含有有問題的 Bytecode" #. (itstool) path: sect3/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22528 book.translate.xml:22559 +#: book.translate.xml:22535 book.translate.xml:22566 msgid "" "<primary><acronym>ACPI</acronym></primary> <secondary><acronym>ASL</" "acronym></secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22533 +#: book.translate.xml:22540 msgid "" "Some <acronym>BIOS</acronym> vendors provide incorrect or buggy bytecode. " "This is usually manifested by kernel console messages like this:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:22537 +#: book.translate.xml:22544 #, no-wrap msgid "" "ACPI-1287: *** Error: Method execution failed [\\\\_SB_.PCI0.LPC0.FIGD._STA] \\\\\n" @@ -33111,7 +33116,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:22540 +#: book.translate.xml:22547 msgid "" "Often, these problems may be resolved by updating the <acronym>BIOS</" "acronym> to the latest revision. Most console messages are harmless, but if " @@ -33120,12 +33125,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:22550 +#: book.translate.xml:22557 msgid "Overriding the Default <acronym>AML</acronym>" msgstr "覆蓋預設的 <acronym>AML</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:22552 +#: book.translate.xml:22559 msgid "" "The <acronym>BIOS</acronym> bytecode, known as <acronym>ACPI</acronym> " "Machine Language (<acronym>AML</acronym>), is compiled from a source " @@ -33135,7 +33140,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22564 +#: book.translate.xml:22571 msgid "" "The goal of FreeBSD is for everyone to have working <acronym>ACPI</acronym> " "without any user intervention. Workarounds are still being developed for " @@ -33152,7 +33157,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22579 +#: book.translate.xml:22586 msgid "" "To help identify buggy behavior and possibly fix it manually, a copy can be " "made of the system's <acronym>ASL</acronym>. To copy the system's " @@ -33162,13 +33167,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22587 +#: book.translate.xml:22594 #, no-wrap msgid "<prompt>#</prompt> <userinput>acpidump -td > <replaceable>my.asl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22589 +#: book.translate.xml:22596 msgid "" "Some <acronym>AML</acronym> versions assume the user is running <trademark " "class=\"registered\">Windows</trademark>. To override this, set <literal>hw." @@ -33179,7 +33184,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22596 +#: book.translate.xml:22603 msgid "" "Other workarounds may require <filename>my.asl</filename> to be customized. " "If this file is edited, compile the new <acronym>ASL</acronym> using the " @@ -33188,13 +33193,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22602 +#: book.translate.xml:22609 #, no-wrap msgid "<prompt>#</prompt> <userinput>iasl -f <replaceable>my.asl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22604 +#: book.translate.xml:22611 msgid "" "Including <option>-f</option> forces creation of the <acronym>AML</acronym>, " "even if there are errors during compilation. Some errors, such as missing " @@ -33203,7 +33208,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22610 +#: book.translate.xml:22617 msgid "" "The default output filename for <command>iasl</command> is <filename>DSDT." "aml</filename>. Load this file instead of the <acronym>BIOS</acronym>'s " @@ -33212,7 +33217,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:22616 +#: book.translate.xml:22623 #, no-wrap msgid "" "acpi_dsdt_load=\"YES\"\n" @@ -33220,7 +33225,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22619 +#: book.translate.xml:22626 msgid "" "Be sure to copy <filename>DSDT.aml</filename> to <filename>/boot</filename>, " "then reboot the system. If this fixes the problem, send a " @@ -33232,31 +33237,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:22629 +#: book.translate.xml:22636 msgid "Getting and Submitting Debugging Info" msgstr "取得與回報除錯資訊" #. (itstool) path: authorgroup/author -#: book.translate.xml:22632 +#: book.translate.xml:22639 msgid "" "<personname> <firstname>Nate</firstname> <surname>Lawson</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:22642 +#: book.translate.xml:22649 msgid "" "<personname> <firstname>Peter</firstname> <surname>Schultz</surname> </" "personname> <contrib>With contributions from </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:22664 +#: book.translate.xml:22671 msgid "<primary>ACPI</primary> <secondary>debugging</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22669 +#: book.translate.xml:22676 msgid "" "The <acronym>ACPI</acronym> driver has a flexible debugging facility. A set " "of subsystems and the level of verbosity can be specified. The subsystems to " @@ -33274,7 +33279,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22685 +#: book.translate.xml:22692 msgid "" "Debugging output is not enabled by default. To enable it, add " "<literal>options ACPI_DEBUG</literal> to the custom kernel configuration " @@ -33285,13 +33290,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:22693 +#: book.translate.xml:22700 #, no-wrap msgid "<prompt>#</prompt> <userinput>cd /sys/modules/acpi/acpi && make clean && make ACPI_DEBUG=1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22695 +#: book.translate.xml:22702 msgid "" "Copy the compiled <filename>acpi.ko</filename> to <filename>/boot/kernel</" "filename> and add the desired level and layer to <filename>/boot/loader." @@ -33301,7 +33306,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:22702 +#: book.translate.xml:22709 #, no-wrap msgid "" "debug.acpi.layer=\"ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS\"\n" @@ -33309,7 +33314,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22705 +#: book.translate.xml:22712 msgid "" "If the required information is triggered by a specific event, such as a " "suspend and then resume, do not modify <filename>/boot/loader.conf</" @@ -33320,7 +33325,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22719 +#: book.translate.xml:22726 msgid "" "Once the debugging information is gathered, it can be sent to <link xlink:" "href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-acpi\">freebsd-" @@ -33330,7 +33335,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:22725 +#: book.translate.xml:22732 msgid "" "Before submitting debugging information to this mailing list, ensure the " "latest <acronym>BIOS</acronym> version is installed and, if available, the " @@ -33338,12 +33343,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22731 +#: book.translate.xml:22738 msgid "When submitting a problem report, include the following information:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22736 +#: book.translate.xml:22743 msgid "" "Description of the buggy behavior, including system type, model, and " "anything that causes the bug to appear. Note as accurately as possible when " @@ -33351,14 +33356,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22743 +#: book.translate.xml:22750 msgid "" "The output of <command>dmesg</command> after running <command>boot -v</" "command>, including any error messages generated by the bug." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22749 +#: book.translate.xml:22756 msgid "" "The <command>dmesg</command> output from <command>boot -v</command> with " "<acronym>ACPI</acronym> disabled, if disabling <acronym>ACPI</acronym> helps " @@ -33366,14 +33371,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22756 +#: book.translate.xml:22763 msgid "" "Output from <command>sysctl hw.acpi</command>. This lists which features the " "system offers." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22761 +#: book.translate.xml:22768 msgid "" "The <acronym>URL</acronym> to a pasted version of the system's <acronym>ASL</" "acronym>. Do <emphasis>not</emphasis> send the <acronym>ASL</acronym> " @@ -33382,13 +33387,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:22768 +#: book.translate.xml:22775 #, no-wrap msgid "<prompt>#</prompt> <userinput>acpidump -dt > <replaceable>name</replaceable>-<replaceable>system</replaceable>.asl</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22770 +#: book.translate.xml:22777 msgid "" "Substitute the login name for <replaceable>name</replaceable> and " "manufacturer/model for <replaceable>system</replaceable>. For example, use " @@ -33396,7 +33401,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22777 +#: book.translate.xml:22784 msgid "" "Most FreeBSD developers watch the <link xlink:href=\"http://lists.FreeBSD." "org/mailman/listinfo/freebsd-current\">FreeBSD-CURRENT mailing list</link>, " @@ -33414,14 +33419,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:22791 +#: book.translate.xml:22798 msgid "" "More information about <acronym>ACPI</acronym> may be found in the following " "locations:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22796 +#: book.translate.xml:22803 msgid "" "The FreeBSD <acronym>ACPI</acronym> Mailing List Archives (<uri xlink:href=" "\"http://lists.freebsd.org/pipermail/freebsd-acpi/\">http://lists.freebsd." @@ -33429,14 +33434,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22801 +#: book.translate.xml:22808 msgid "" "The <acronym>ACPI</acronym> 2.0 Specification (<uri xlink:href=\"http://acpi." "info/spec.htm\">http://acpi.info/spec.htm</uri>)" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:22805 +#: book.translate.xml:22812 msgid "" "<citerefentry><refentrytitle>acpi</refentrytitle><manvolnum>4</manvolnum></" "citerefentry>, <citerefentry><refentrytitle>acpi_thermal</" @@ -33449,22 +33454,22 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:22822 +#: book.translate.xml:22829 msgid "The FreeBSD Booting Process" msgstr "FreeBSD 開機程序" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22827 +#: book.translate.xml:22834 msgid "<primary>booting</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22828 +#: book.translate.xml:22835 msgid "<primary>bootstrap</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22830 +#: book.translate.xml:22837 msgid "" "The process of starting a computer and loading the operating system is " "referred to as <quote>the bootstrap process</quote>, or <quote>booting</" @@ -33480,7 +33485,7 @@ msgstr "" "作業系統的功能。" #. (itstool) path: sect1/para -#: book.translate.xml:22839 +#: book.translate.xml:22846 msgid "" "This chapter details the configuration options that can be set. It " "demonstrates how to customize the FreeBSD boot process, including everything " @@ -33495,53 +33500,53 @@ msgstr "" "citerefentry>。這些事會發生在開機訊息的文字顏色會從亮白變成灰色之間。" #. (itstool) path: sect1/para -#: book.translate.xml:22846 +#: book.translate.xml:22853 msgid "After reading this chapter, you will recognize:" msgstr "在閱讀本章之後,您會了解:" #. (itstool) path: listitem/para -#: book.translate.xml:22850 +#: book.translate.xml:22857 msgid "The components of the FreeBSD bootstrap system and how they interact." msgstr "FreeBSD 開機系統的元件以及它們如何互動。" #. (itstool) path: listitem/para -#: book.translate.xml:22855 +#: book.translate.xml:22862 msgid "" "The options that can be passed to the components in the FreeBSD bootstrap in " "order to control the boot process." msgstr "FreeBSD 開機程式中各元件可使用的選項,用來控制開機程序。" #. (itstool) path: listitem/para -#: book.translate.xml:22860 +#: book.translate.xml:22867 msgid "How to configure a customized boot splash screen." msgstr "如何設定自訂的開機啟動畫面 (Splash screen)。" #. (itstool) path: listitem/para -#: book.translate.xml:22864 +#: book.translate.xml:22871 msgid "The basics of setting device hints." msgstr "設定 Device Hints 的基礎。" #. (itstool) path: listitem/para -#: book.translate.xml:22868 +#: book.translate.xml:22875 msgid "" "How to boot into single- and multi-user mode and how to properly shut down a " "FreeBSD system." msgstr "如何開機進入單人及多人模式以及如何正確關閉 FreeBSD 系統。" #. (itstool) path: note/para -#: book.translate.xml:22874 +#: book.translate.xml:22881 msgid "" "This chapter only describes the boot process for FreeBSD running on x86 and " "amd64 systems." msgstr "本章僅說明 FreeBSD 在 x86 及 amd64 系統上執行的開機流程。" #. (itstool) path: sect1/title -#: book.translate.xml:22880 +#: book.translate.xml:22887 msgid "FreeBSD Boot Process" msgstr "FreeBSD 開機程序" #. (itstool) path: sect1/para -#: book.translate.xml:22882 +#: book.translate.xml:22889 msgid "" "Turning on a computer and starting the operating system poses an interesting " "dilemma. By definition, the computer does not know how to do anything until " @@ -33556,7 +33561,7 @@ msgstr "" "統要如何啟動呢?" #. (itstool) path: sect1/para -#: book.translate.xml:22890 +#: book.translate.xml:22897 msgid "" "This problem parallels one in the book <citetitle>The Adventures of Baron " "Munchausen</citetitle>. A character had fallen part way down a manhole, and " @@ -33571,19 +33576,19 @@ msgstr "" "制,後來被縮短為 <quote>booting</quote>。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22898 +#: book.translate.xml:22905 msgid "<primary><acronym>BIOS</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22900 +#: book.translate.xml:22907 msgid "" "<primary>Basic Input/Output System</primary><see><acronym>BIOS</acronym></" "see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22903 +#: book.translate.xml:22910 msgid "" "On x86 hardware, the Basic Input/Output System (<acronym>BIOS</acronym>) is " "responsible for loading the operating system. The <acronym>BIOS</acronym> " @@ -33602,7 +33607,7 @@ msgstr "" "助下可以完成接下來載入作業系統的工作。" #. (itstool) path: note/para -#: book.translate.xml:22915 +#: book.translate.xml:22922 msgid "" "FreeBSD provides for booting from both the older <acronym>MBR</acronym> " "standard, and the newer GUID Partition Table (<acronym>GPT</acronym>). " @@ -33625,23 +33630,23 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22926 book.translate.xml:22982 +#: book.translate.xml:22933 book.translate.xml:22989 msgid "<primary>Master Boot Record (<acronym>MBR</acronym>)</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22929 book.translate.xml:22980 +#: book.translate.xml:22936 book.translate.xml:22987 msgid "<primary>Boot Manager</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22931 +#: book.translate.xml:22938 msgid "<primary>Boot Loader</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22933 +#: book.translate.xml:22940 msgid "" "The code within the <acronym>MBR</acronym> is typically referred to as a " "<emphasis>boot manager</emphasis>, especially when it interacts with the " @@ -33660,7 +33665,7 @@ msgstr "" "class=\"registered\">Linux</trademark> 發行版。" #. (itstool) path: sect1/para -#: book.translate.xml:22943 +#: book.translate.xml:22950 msgid "" "If only one operating system is installed, the <acronym>MBR</acronym> " "searches for the first bootable (active) slice on the disk, and then runs " @@ -33675,7 +33680,7 @@ msgstr "" "擇要啟動的作業系統。" #. (itstool) path: sect1/para -#: book.translate.xml:22951 +#: book.translate.xml:22958 msgid "" "The remainder of the FreeBSD bootstrap system is divided into three stages. " "The first stage knows just enough to get the computer into a specific state " @@ -33693,20 +33698,20 @@ msgstr "" "更有彈性的載入程式。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:22962 +#: book.translate.xml:22969 msgid "<primary>kernel</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:22963 book.translate.xml:23289 +#: book.translate.xml:22970 book.translate.xml:23296 msgid "" "<primary><citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:22965 +#: book.translate.xml:22972 msgid "" "The kernel is then started and begins to probe for devices and initialize " "them for use. Once the kernel boot process is finished, the kernel passes " @@ -33724,19 +33729,19 @@ msgstr "" "線網路、啟動那些被設定在開機時要啟動的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:22974 +#: book.translate.xml:22981 msgid "" "This section describes these stages in more detail and demonstrates how to " "interact with the FreeBSD boot process." msgstr "本章節將更詳細介紹這些階段並示範如何與 FreeBSD 開機程序互動。" #. (itstool) path: sect2/title -#: book.translate.xml:22978 +#: book.translate.xml:22985 msgid "The Boot Manager" msgstr "開機管理程式" #. (itstool) path: sect2/para -#: book.translate.xml:22985 +#: book.translate.xml:22992 msgid "" "The boot manager code in the <acronym>MBR</acronym> is sometimes referred to " "as <emphasis>stage zero</emphasis> of the boot process. By default, FreeBSD " @@ -33747,7 +33752,7 @@ msgstr "" "application> 開機管理程式。" #. (itstool) path: sect2/para -#: book.translate.xml:22990 +#: book.translate.xml:22997 msgid "" "The <acronym>MBR</acronym> installed by the FreeBSD installer is based on " "<filename>/boot/boot0</filename>. The size and capability of " @@ -33764,12 +33769,12 @@ msgstr "" "application> ,則會在開機時顯示如下範例的訊息:" #. (itstool) path: example/title -#: book.translate.xml:23000 +#: book.translate.xml:23007 msgid "<filename>boot0</filename> Screenshot" msgstr "<filename>boot0</filename> 螢幕截圖" #. (itstool) path: example/screen -#: book.translate.xml:23002 +#: book.translate.xml:23009 #, no-wrap msgid "" "F1 Win\n" @@ -33779,7 +33784,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23008 +#: book.translate.xml:23015 msgid "" "Other operating systems will overwrite an existing <acronym>MBR</acronym> if " "they are installed after FreeBSD. If this happens, or to replace the " @@ -33791,13 +33796,13 @@ msgstr "" "<acronym>MBR</acronym> 可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:23014 +#: book.translate.xml:23021 #, no-wrap msgid "<prompt>#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>device</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23016 +#: book.translate.xml:23023 msgid "" "where <replaceable>device</replaceable> is the boot disk, such as " "<filename>ad0</filename> for the first <acronym>IDE</acronym> disk, " @@ -33815,12 +33820,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:23027 +#: book.translate.xml:23034 msgid "Stage One and Stage Two" msgstr "階段一與階段二" #. (itstool) path: sect2/para -#: book.translate.xml:23029 +#: book.translate.xml:23036 msgid "" "Conceptually, the first and second stages are part of the same program on " "the same area of the disk. Because of space constraints, they have been " @@ -33833,7 +33838,7 @@ msgstr "" "<command>bsdlabel</command> 從 <filename>/boot/boot</filename> 複製而來。" #. (itstool) path: sect2/para -#: book.translate.xml:23036 +#: book.translate.xml:23043 msgid "" "These two stages are located outside file systems, in the first track of the " "boot slice, starting with the first sector. This is where " @@ -33845,7 +33850,7 @@ msgstr "" "式所會儲存的地方,並會尋找可以執行的程式以繼續開機程序。" #. (itstool) path: sect2/para -#: book.translate.xml:23042 +#: book.translate.xml:23049 msgid "" "The first stage, <filename>boot1</filename>, is very simple, since it can " "only be 512 bytes in size. It knows just enough about the FreeBSD " @@ -33857,7 +33862,7 @@ msgstr "" "尋找並執行 <filename>boot2</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:23048 +#: book.translate.xml:23055 msgid "" "Stage two, <filename>boot2</filename>, is slightly more sophisticated, and " "understands the FreeBSD file system enough to find files. It can provide a " @@ -33872,13 +33877,13 @@ msgstr "" "在階段二中斷,則會顯示以下的互動畫面:" #. (itstool) path: example/title -#: book.translate.xml:23058 +#: book.translate.xml:23065 msgid "<filename>boot2</filename> Screenshot" msgstr "<filename>boot2</filename> 螢幕截圖" #. (itstool) path: example/screen #. (itstool) path: step/screen -#: book.translate.xml:23060 book.translate.xml:48643 +#: book.translate.xml:23067 book.translate.xml:48264 #, no-wrap msgid "" ">> FreeBSD/i386 BOOT\n" @@ -33887,7 +33892,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23065 +#: book.translate.xml:23072 msgid "" "To replace the installed <filename>boot1</filename> and <filename>boot2</" "filename>, use <command>bsdlabel</command>, where <replaceable>diskslice</" @@ -33900,13 +33905,13 @@ msgstr "" "<acronym>IDE</acronym> 磁碟的第一個切割區:" #. (itstool) path: sect2/screen -#: book.translate.xml:23071 +#: book.translate.xml:23078 #, no-wrap msgid "<prompt>#</prompt> <userinput>bsdlabel -B <replaceable>diskslice</replaceable></userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:23074 +#: book.translate.xml:23081 msgid "" "If just the disk name is used, such as <filename>ad0</filename>, " "<command>bsdlabel</command> will create the disk in <quote>dangerously " @@ -33920,17 +33925,17 @@ msgstr "" "<replaceable>diskslice</replaceable>。" #. (itstool) path: sect2/title -#: book.translate.xml:23085 +#: book.translate.xml:23092 msgid "Stage Three" msgstr "階段三" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23087 +#: book.translate.xml:23094 msgid "<primary>boot-loader</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23089 +#: book.translate.xml:23096 msgid "" "The <application>loader</application> is the final stage of the three-stage " "bootstrap process. It is located on the file system, usually as <filename>/" @@ -33940,7 +33945,7 @@ msgstr "" "於檔案系統之中,通常在 <filename>/boot/loader</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:23094 +#: book.translate.xml:23101 msgid "" "The <application>loader</application> is intended as an interactive method " "for configuration, using a built-in command set, backed up by a more " @@ -33950,7 +33955,7 @@ msgstr "" "做為基礎的內建指令集提供一個互動的方式來做設定。" #. (itstool) path: sect2/para -#: book.translate.xml:23099 +#: book.translate.xml:23106 msgid "" "During initialization, <application>loader</application> will probe for a " "console and for disks, and figure out which disk it is booting from. It will " @@ -33962,17 +33967,17 @@ msgstr "" "數並啟動直譯器。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23105 +#: book.translate.xml:23112 msgid "<primary>loader</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23106 +#: book.translate.xml:23113 msgid "<primary>loader configuration</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23108 +#: book.translate.xml:23115 msgid "" "The <application>loader</application> will then read <filename>/boot/loader." "rc</filename>, which by default reads in <filename>/boot/defaults/loader." @@ -33988,7 +33993,7 @@ msgstr "" "些變數來運作,讀取選擇模組與核心。" #. (itstool) path: sect2/para -#: book.translate.xml:23117 +#: book.translate.xml:23124 msgid "" "Finally, by default, <application>loader</application> issues a 10 second " "wait for key presses, and boots the kernel if it is not interrupted. If " @@ -34009,17 +34014,17 @@ msgstr "" "citerefentry>。" #. (itstool) path: table/title -#: book.translate.xml:23128 +#: book.translate.xml:23135 msgid "Loader Built-In Commands" msgstr "載入程式內建指令" #. (itstool) path: row/entry -#: book.translate.xml:23140 +#: book.translate.xml:23147 msgid "autoboot <replaceable>seconds</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23142 +#: book.translate.xml:23149 msgid "" "Proceeds to boot the kernel if not interrupted within the time span given, " "in seconds. It displays a countdown, and the default time span is 10 seconds." @@ -34028,34 +34033,34 @@ msgstr "" "10 秒鐘。" #. (itstool) path: row/entry -#: book.translate.xml:23149 +#: book.translate.xml:23156 msgid "" "boot <optional><replaceable>-options</replaceable></optional> " "<optional><replaceable>kernelname</replaceable></optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23152 +#: book.translate.xml:23159 msgid "" "Immediately proceeds to boot the kernel, with any specified options or " "kernel name. Providing a kernel name on the command-line is only applicable " "after an <command>unload</command> has been issued. Otherwise, the " "previously-loaded kernel will be used. If <emphasis>kernelname</emphasis> is " -"not qualified it will be searched under <emphasis>/boot/kernel</emphasis> " +"not qualified, it will be searched under <emphasis>/boot/kernel</emphasis> " "and <emphasis>/boot/modules</emphasis>." msgstr "" -"使用指定的選項或核心名稱立即啟動核心。由指令列指定核心名稱前必須先執行 " +"使用任何指定的選項或核心名稱立即啟動核心,要由指令列指定核心名稱必須先執行 " "<command>unload</command>,否則會使用先前載入過的核心。若 " "<emphasis>kernelname</emphasis> 不是完整的路徑則會搜尋 <emphasis>/boot/" "kernel</emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。" #. (itstool) path: row/entry -#: book.translate.xml:23164 +#: book.translate.xml:23171 msgid "boot-conf" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23165 +#: book.translate.xml:23172 msgid "" "Goes through the same automatic configuration of modules based on specified " "variables, most commonly <envar>kernel</envar>. This only makes sense if " @@ -34065,12 +34070,12 @@ msgstr "" "只有在執行 <command>unload</command> 之後,尚未變更變數之前方可使用。" #. (itstool) path: row/entry -#: book.translate.xml:23173 +#: book.translate.xml:23180 msgid "help <optional><replaceable>topic</replaceable></optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23175 +#: book.translate.xml:23182 msgid "" "Shows help messages read from <filename>/boot/loader.help</filename>. If the " "topic given is <literal>index</literal>, the list of available topics is " @@ -34080,12 +34085,12 @@ msgstr "" "<literal>index</literal> 則會顯示所有可用的主題。" #. (itstool) path: row/entry -#: book.translate.xml:23182 +#: book.translate.xml:23189 msgid "include <replaceable>filename</replaceable> …" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23184 +#: book.translate.xml:23191 msgid "" "Reads the specified file and interprets it line by line. An error " "immediately stops the <command>include</command>." @@ -34093,20 +34098,20 @@ msgstr "" "讀取指定的檔案並直譯每一行。若有錯誤則會立即中止 <command>include</command>。" #. (itstool) path: row/entry -#: book.translate.xml:23190 +#: book.translate.xml:23197 msgid "" "load <optional>-t <replaceable>type</replaceable></optional> " "<replaceable>filename</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23193 +#: book.translate.xml:23200 msgid "" "Loads the kernel, kernel module, or file of the type given, with the " "specified filename. Any arguments after <replaceable>filename</replaceable> " -"are passed to the file. If <emphasis>filename</emphasis> is not qualified it " -"will be searched under <emphasis>/boot/kernel</emphasis> and <emphasis>/boot/" -"modules</emphasis>." +"are passed to the file. If <emphasis>filename</emphasis> is not qualified, " +"it will be searched under <emphasis>/boot/kernel</emphasis> and <emphasis>/" +"boot/modules</emphasis>." msgstr "" "由指定的檔案名稱載入核心、核心模組或指定類型的檔案。任何於 " "<replaceable>filename</replaceable> 之後的參數都會被傳遞到該檔案。若 " @@ -34114,14 +34119,14 @@ msgstr "" "emphasis> 及 <emphasis>/boot/modules</emphasis> 底下。" #. (itstool) path: row/entry -#: book.translate.xml:23204 +#: book.translate.xml:23211 msgid "" "ls <optional>-l</optional> <optional><replaceable>path</replaceable></" "optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23206 +#: book.translate.xml:23213 msgid "" "Displays a listing of files in the given path, or the root directory, if the " "path is not specified. If <option>-l</option> is specified, file sizes will " @@ -34131,12 +34136,12 @@ msgstr "" "l</option>,則會連檔案大小一同顯示。" #. (itstool) path: row/entry -#: book.translate.xml:23213 +#: book.translate.xml:23220 msgid "lsdev <optional>-v</optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23214 +#: book.translate.xml:23221 msgid "" "Lists all of the devices from which it may be possible to load modules. If " "<option>-v</option> is specified, more details are printed." @@ -34145,70 +34150,69 @@ msgstr "" "會顯示更詳細的資訊。" #. (itstool) path: row/entry -#: book.translate.xml:23220 +#: book.translate.xml:23227 msgid "lsmod <optional>-v</optional>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23221 +#: book.translate.xml:23228 msgid "" "Displays loaded modules. If <option>-v</option> is specified, more details " "are shown." msgstr "顯示已載入的模組。若有指定 <option>-v</option> 則會顯示更詳細的資訊。" #. (itstool) path: row/entry -#: book.translate.xml:23226 +#: book.translate.xml:23233 msgid "more <replaceable>filename</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23227 +#: book.translate.xml:23234 msgid "" "Displays the files specified, with a pause at each <varname>LINES</varname> " "displayed." msgstr "顯示指定的檔案,並於每 <varname>LINES</varname> 行顯示後會暫停。" #. (itstool) path: row/entry -#: book.translate.xml:23232 +#: book.translate.xml:23239 msgid "reboot" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23233 +#: book.translate.xml:23240 msgid "Immediately reboots the system." msgstr "立即重新啟動系統。" #. (itstool) path: row/entry -#: book.translate.xml:23237 +#: book.translate.xml:23244 msgid "" "set <replaceable>variable</replaceable>, set <replaceable>variable</" "replaceable>=<replaceable>value</replaceable>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23239 +#: book.translate.xml:23246 msgid "Sets the specified environment variables." msgstr "設定指定的環境變數。" #. (itstool) path: row/entry -#: book.translate.xml:23243 +#: book.translate.xml:23250 msgid "unload" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23244 +#: book.translate.xml:23251 msgid "Removes all loaded modules." msgstr "移除所有已載入的模組。" #. (itstool) path: para/indexterm #. (itstool) path: sect3/indexterm -#. (itstool) path: sect2/indexterm -#: book.translate.xml:23252 book.translate.xml:23362 book.translate.xml:45473 +#: book.translate.xml:23259 book.translate.xml:23369 msgid "<primary>single-user mode</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23250 +#: book.translate.xml:23257 msgid "" "Here are some practical examples of loader usage. To boot the usual kernel " "in single-user mode <_:indexterm-1/>:" @@ -34217,20 +34221,20 @@ msgstr "" "(Single-user mode<_:indexterm-1/>) 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:23255 +#: book.translate.xml:23262 #, no-wrap msgid "<userinput>boot -s</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23257 +#: book.translate.xml:23264 msgid "" "To unload the usual kernel and modules and then load the previous or " "another, specified kernel:" msgstr "要卸載一般的核心與模組,然後載入先前或另一個指定的核心可:" #. (itstool) path: sect2/screen -#: book.translate.xml:23260 +#: book.translate.xml:23267 #, no-wrap msgid "" "<userinput>unload</userinput>\n" @@ -34238,7 +34242,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23263 +#: book.translate.xml:23270 msgid "" "Use <filename>kernel.GENERIC</filename> to refer to the default kernel that " "comes with an installation, or <filename>kernel.old</filename>, to refer to " @@ -34250,12 +34254,12 @@ msgstr "" "心。" #. (itstool) path: sect2/para -#: book.translate.xml:23269 +#: book.translate.xml:23276 msgid "Use the following to load the usual modules with another kernel:" msgstr "使用以下指令來使用另一個核心載入一般的模組:" #. (itstool) path: sect2/screen -#: book.translate.xml:23272 +#: book.translate.xml:23279 #, no-wrap msgid "" "<userinput>unload</userinput>\n" @@ -34264,28 +34268,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23276 +#: book.translate.xml:23283 msgid "To load an automated kernel configuration script:" msgstr "要載入一個已自動化的核心設置 Script 可:" #. (itstool) path: sect2/screen -#: book.translate.xml:23278 +#: book.translate.xml:23285 #, no-wrap msgid "<userinput>load -t userconfig_script <replaceable>/boot/kernel.conf</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23280 +#: book.translate.xml:23287 msgid "<primary>kernel</primary> <secondary>boot interaction</secondary>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:23287 +#: book.translate.xml:23294 msgid "Last Stage" msgstr "最終階段" #. (itstool) path: sect2/para -#: book.translate.xml:23293 +#: book.translate.xml:23300 msgid "" "Once the kernel is loaded by either <application>loader</application> or by " "<application>boot2</application>, which bypasses <application>loader</" @@ -34303,49 +34307,49 @@ msgstr "" "資訊。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:23301 +#: book.translate.xml:23308 msgid "<primary>kernel</primary> <secondary>bootflags</secondary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:23307 +#: book.translate.xml:23314 msgid "Kernel Interaction During Boot" msgstr "開機時核心互動參數" #. (itstool) path: row/entry -#: book.translate.xml:23320 +#: book.translate.xml:23327 msgid "" "During kernel initialization, ask for the device to mount as the root file " "system." msgstr "核心初始化時,會詢問要掛載為根檔案系統的裝置。" #. (itstool) path: row/entry -#: book.translate.xml:23325 +#: book.translate.xml:23332 msgid "<option>-C</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23326 +#: book.translate.xml:23333 msgid "Boot the root file system from a <acronym>CDROM</acronym>." msgstr "由 <acronym>CDROM</acronym> 做為根檔案系統開機。" #. (itstool) path: row/entry -#: book.translate.xml:23331 +#: book.translate.xml:23338 msgid "<option>-s</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:23332 +#: book.translate.xml:23339 msgid "Boot into single-user mode." msgstr "開機進入單使用者模式。" #. (itstool) path: row/entry -#: book.translate.xml:23337 +#: book.translate.xml:23344 msgid "Be more verbose during kernel startup." msgstr "核心啟動時提供更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:23343 +#: book.translate.xml:23350 msgid "" "Once the kernel has finished booting, it passes control to the user process " "<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></" @@ -34360,7 +34364,7 @@ msgstr "" "這是開機程序的最後一個階段。" #. (itstool) path: sect2/para -#: book.translate.xml:23350 +#: book.translate.xml:23357 msgid "" "The boot sequence makes sure that the file systems available on the system " "are consistent. If a <acronym>UFS</acronym> file system is not, and " @@ -34375,12 +34379,12 @@ msgstr "" "直接解決問題,否則系統會開機進入多使用者模式。" #. (itstool) path: sect3/title -#: book.translate.xml:23360 +#: book.translate.xml:23367 msgid "Single-User Mode" msgstr "單使用者模式" #. (itstool) path: sect3/para -#: book.translate.xml:23365 +#: book.translate.xml:23372 msgid "" "A user can specify this mode by booting with <option>-s</option> or by " "setting the <envar>boot_single</envar> variable in <application>loader</" @@ -34393,13 +34397,13 @@ msgstr "" "會出現此訊息:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:23372 +#: book.translate.xml:23379 #, no-wrap msgid "Enter full pathname of shell or RETURN for /bin/sh:" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23374 +#: book.translate.xml:23381 msgid "" "If the user presses <keycap>Enter</keycap>, the system will enter the " "default Bourne shell. To specify a different shell, input the full path to " @@ -34409,7 +34413,7 @@ msgstr "" "使用其他的 Shell 則輸入該 Shell 的完整路徑。" #. (itstool) path: sect3/para -#: book.translate.xml:23378 +#: book.translate.xml:23385 msgid "" "Single-user mode is usually used to repair a system that will not boot due " "to an inconsistent file system or an error in a boot configuration file. It " @@ -34424,7 +34428,7 @@ msgstr "" "網路功能。" #. (itstool) path: sect3/para -#: book.translate.xml:23387 +#: book.translate.xml:23394 msgid "" "While single-user mode is useful for repairing a system, it poses a security " "risk unless the system is in a physically secure location. By default, any " @@ -34436,7 +34440,7 @@ msgstr "" "整控制權。" #. (itstool) path: sect3/para -#: book.translate.xml:23393 +#: book.translate.xml:23400 msgid "" "If the system <literal>console</literal> is changed to <literal>insecure</" "literal> in <filename>/etc/ttys</filename>, the system will first prompt for " @@ -34452,12 +34456,12 @@ msgstr "" "重設密碼。" #. (itstool) path: example/title -#: book.translate.xml:23403 +#: book.translate.xml:23410 msgid "Configuring an Insecure Console in <filename>/etc/ttys</filename>" msgstr "在 <filename>/etc/ttys</filename> 設定不安全的 Console" #. (itstool) path: example/programlisting -#: book.translate.xml:23406 +#: book.translate.xml:23413 #, no-wrap msgid "" "# name getty type status comments\n" @@ -34468,7 +34472,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23413 +#: book.translate.xml:23420 msgid "" "An <literal>insecure</literal> console means that physical security to the " "console is considered to be insecure, so only someone who knows the " @@ -34480,17 +34484,17 @@ msgstr "" "systemitem> 密碼的人可以使用單使用者模式。" #. (itstool) path: sect3/title -#: book.translate.xml:23420 +#: book.translate.xml:23427 msgid "Multi-User Mode" msgstr "多使用者模式" #. (itstool) path: sect3/indexterm -#: book.translate.xml:23422 +#: book.translate.xml:23429 msgid "<primary>multi-user mode</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23424 +#: book.translate.xml:23431 msgid "" "If <application>init</application> finds the file systems to be in order, or " "once the user has finished their commands in single-user mode and has typed " @@ -34502,12 +34506,12 @@ msgstr "" "模式,在這個模式便會開始系統的資源設置。" #. (itstool) path: sect3/indexterm -#: book.translate.xml:23431 +#: book.translate.xml:23438 msgid "<primary>rc files</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:23433 +#: book.translate.xml:23440 msgid "" "The resource configuration system reads in configuration defaults from " "<filename>/etc/defaults/rc.conf</filename> and system-specific details from " @@ -34523,7 +34527,7 @@ msgstr "" "Script。" #. (itstool) path: sect3/para -#: book.translate.xml:23442 +#: book.translate.xml:23449 msgid "" "To learn more about the resource configuration system, refer to " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -34535,19 +34539,19 @@ msgstr "" "<filename>/etc/rc.d</filename> 的 Script。" #. (itstool) path: info/title -#: book.translate.xml:23457 +#: book.translate.xml:23464 msgid "Configuring Boot Time Splash Screens" msgstr "設定開機啟動畫面" #. (itstool) path: authorgroup/author -#: book.translate.xml:23460 book.translate.xml:58080 +#: book.translate.xml:23467 book.translate.xml:57702 msgid "" "<personname> <firstname>Joseph J.</firstname> <surname>Barbish</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23470 +#: book.translate.xml:23477 msgid "" "Typically when a FreeBSD system boots, it displays its progress as a series " "of messages at the console. A boot splash screen creates an alternate boot " @@ -34564,7 +34568,7 @@ msgstr "" "示中的啟動畫面。" #. (itstool) path: sect1/para -#: book.translate.xml:23480 +#: book.translate.xml:23487 msgid "" "There are two basic environments available in FreeBSD. The first is the " "default legacy virtual console command line environment. After the system " @@ -34579,7 +34583,7 @@ msgstr "" "程式與圖型化登入管理程式的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:23488 +#: book.translate.xml:23495 msgid "" "Once the system has booted, the splash screen defaults to being a screen " "saver. After a time period of non-use, the splash screen will display and " @@ -34601,7 +34605,7 @@ msgstr "" "Console,對圖型化顯示管理程式並不會有任何影響。" #. (itstool) path: sect1/para -#: book.translate.xml:23499 +#: book.translate.xml:23506 msgid "" "Sample splash screen files can be downloaded from the gallery at <link xlink:" "href=\"http://artwork.freebsdgr.org/node/3/\">http://artwork.freebsdgr.org</" @@ -34615,7 +34619,7 @@ msgstr "" "顯示圖片集中的啟動畫面。" #. (itstool) path: sect1/para -#: book.translate.xml:23505 +#: book.translate.xml:23512 msgid "" "The splash screen function supports 256-colors in the bitmap (<filename>." "bmp</filename>), ZSoft <acronym>PCX</acronym> (<filename>.pcx</filename>), " @@ -34639,7 +34643,7 @@ msgstr "" "替換 <replaceable>splash.bmp</replaceable> 為實際要使用的點陣圖檔:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23520 +#: book.translate.xml:23527 #, no-wrap msgid "" "splash_bmp_load=\"YES\"\n" @@ -34648,12 +34652,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23524 +#: book.translate.xml:23531 msgid "To use a <acronym>PCX</acronym> file instead of a bitmap file:" msgstr "要使用 <acronym>PCX</acronym> 檔則可替換點陣圖檔:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23527 +#: book.translate.xml:23534 #, no-wrap msgid "" "splash_pcx_load=\"YES\"\n" @@ -34662,7 +34666,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23531 +#: book.translate.xml:23538 msgid "" "To instead use ASCII art in the <link xlink:href=\"https://en.wikipedia.org/" "wiki/TheDraw\">https://en.wikipedia.org/wiki/TheDraw</link> format:" @@ -34671,7 +34675,7 @@ msgstr "" "\">https://en.wikipedia.org/wiki/TheDraw</link> 格式的 ASCII 圖可:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23534 +#: book.translate.xml:23541 #, no-wrap msgid "" "splash_txt=\"YES\"\n" @@ -34680,7 +34684,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23538 +#: book.translate.xml:23545 msgid "" "To use larger images that fill the whole display screen, up to the maximum " "resolution of 1024 by 768 pixels, the <acronym>VESA</acronym> module must " @@ -34697,23 +34701,23 @@ msgstr "" "filename> 上述例子中提到的三行之前加入下行:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:23548 +#: book.translate.xml:23555 #, no-wrap msgid "vesa_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23550 +#: book.translate.xml:23557 msgid "Other interesting <filename>loader.conf</filename> options include:" msgstr "其他有用的 <filename>loader.conf</filename> 選項還有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:23554 +#: book.translate.xml:23561 msgid "<literal>beastie_disable=\"YES\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:23557 +#: book.translate.xml:23564 msgid "" "This will stop the boot options menu from being displayed, but the timed " "wait count down prompt will still be present. Even with the display of the " @@ -34724,12 +34728,12 @@ msgstr "" "在倒數計時提示時輸入選擇的選項還是會啟動對應的開機選項。" #. (itstool) path: varlistentry/term -#: book.translate.xml:23566 +#: book.translate.xml:23573 msgid "<literal>loader_logo=\"beastie\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:23569 +#: book.translate.xml:23576 msgid "" "This will replace the default words <quote>FreeBSD</quote>, which are " "displayed to the right of the boot options menu, with the colored beastie " @@ -34739,7 +34743,7 @@ msgstr "" "<quote>FreeBSD</quote> 文字," #. (itstool) path: sect1/para -#: book.translate.xml:23577 +#: book.translate.xml:23584 msgid "" "For more information, refer to <citerefentry><refentrytitle>splash</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>, " @@ -34754,17 +34758,17 @@ msgstr "" "refentrytitle><manvolnum>4</manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:23583 +#: book.translate.xml:23590 msgid "Device Hints" msgstr "裝置提示" #. (itstool) path: sect1/indexterm -#: book.translate.xml:23596 +#: book.translate.xml:23603 msgid "<primary>device.hints</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23600 +#: book.translate.xml:23607 msgid "" "During initial system startup, the boot <citerefentry><refentrytitle>loader</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> reads <citerefentry " @@ -34782,7 +34786,7 @@ msgstr "" "hints)</quote> 會傳送給裝置驅動程式做裝置的設置使用。" #. (itstool) path: sect1/para -#: book.translate.xml:23606 +#: book.translate.xml:23613 msgid "" "Device hints may also be specified at the Stage 3 boot loader prompt, as " "demonstrated in <xref linkend=\"boot-loader\"/>. Variables can be added " @@ -34798,7 +34802,7 @@ msgstr "" "置提示並不是永久有效的,在下一次重新開機久後便會失效。" #. (itstool) path: sect1/para -#: book.translate.xml:23615 +#: book.translate.xml:23622 msgid "" "Once the system is booted, <citerefentry><refentrytitle>kenv</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> can be used to dump " @@ -34808,7 +34812,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來列出所有的變數。" #. (itstool) path: sect1/para -#: book.translate.xml:23618 +#: book.translate.xml:23625 msgid "" "The syntax for <filename>/boot/device.hints</filename> is one variable per " "line, using the hash <quote>#</quote> as comment markers. Lines are " @@ -34818,24 +34822,24 @@ msgstr "" "<quote>#</quote> 做為註解符號,每一行的結構如下:" #. (itstool) path: sect1/screen -#: book.translate.xml:23623 +#: book.translate.xml:23630 #, no-wrap msgid "<userinput>hint.driver.unit.keyword=\"<replaceable>value</replaceable>\"</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23625 +#: book.translate.xml:23632 msgid "The syntax for the Stage 3 boot loader is:" msgstr "在階段 3 開機載入程式的語法則為:" #. (itstool) path: sect1/screen -#: book.translate.xml:23627 +#: book.translate.xml:23634 #, no-wrap msgid "<userinput>set hint.driver.unit.keyword=<replaceable>value</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23629 +#: book.translate.xml:23636 msgid "" "where <literal>driver</literal> is the device driver name, <literal>unit</" "literal> is the device driver unit number, and <literal>keyword</literal> is " @@ -34846,13 +34850,13 @@ msgstr "" "選項所組成:" #. (itstool) path: listitem/para -#: book.translate.xml:23636 +#: book.translate.xml:23643 msgid "" "<literal>at</literal>: specifies the bus which the device is attached to." msgstr "<literal>at</literal>: 指定裝置所連結的匯流排 (Bus)。" #. (itstool) path: listitem/para -#: book.translate.xml:23641 +#: book.translate.xml:23648 msgid "" "<literal>port</literal>: specifies the start address of the <acronym>I/O</" "acronym> to be used." @@ -34860,30 +34864,30 @@ msgstr "" "<literal>port</literal>: 指定要使用的 <acronym>I/O</acronym> 開始位置。" #. (itstool) path: listitem/para -#: book.translate.xml:23646 +#: book.translate.xml:23653 msgid "" "<literal>irq</literal>: specifies the interrupt request number to be used." msgstr "<literal>irq</literal>: 指定要使用的中斷請求編號。" #. (itstool) path: listitem/para -#: book.translate.xml:23651 +#: book.translate.xml:23658 msgid "<literal>drq</literal>: specifies the DMA channel number." msgstr "<literal>drq</literal>: 指定 DMA 頻道編號。" #. (itstool) path: listitem/para -#: book.translate.xml:23656 +#: book.translate.xml:23663 msgid "" "<literal>maddr</literal>: specifies the physical memory address occupied by " "the device." msgstr "<literal>maddr</literal>: 指定裝置所使用的實體記憶體位置。" #. (itstool) path: listitem/para -#: book.translate.xml:23661 +#: book.translate.xml:23668 msgid "<literal>flags</literal>: sets various flag bits for the device." msgstr "<literal>flags</literal>: 設定提供給裝置的各種旗標位元。" #. (itstool) path: listitem/para -#: book.translate.xml:23666 +#: book.translate.xml:23673 msgid "" "<literal>disabled</literal>: if set to <literal>1</literal> the device is " "disabled." @@ -34891,7 +34895,7 @@ msgstr "" "<literal>disabled</literal>: 若設為 <literal>1</literal> 則可關閉該裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:23671 +#: book.translate.xml:23678 msgid "" "Since device drivers may accept or require more hints not listed here, " "viewing a driver's manual page is recommended. For more information, refer " @@ -34913,19 +34917,19 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect1/title -#: book.translate.xml:23678 +#: book.translate.xml:23685 msgid "Shutdown Sequence" msgstr "關機程序" #. (itstool) path: sect1/indexterm -#: book.translate.xml:23680 +#: book.translate.xml:23687 msgid "" "<primary><citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23684 +#: book.translate.xml:23691 msgid "" "Upon controlled shutdown using <citerefentry><refentrytitle>shutdown</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, " @@ -34942,7 +34946,7 @@ msgstr "" "的程序,然後傳送 <literal>KILL</literal> 信號給未在時間內中止的程序。" #. (itstool) path: sect1/para -#: book.translate.xml:23691 +#: book.translate.xml:23698 msgid "" "To power down a FreeBSD machine on architectures and systems that support " "power management, use <command>shutdown -p now</command> to turn the power " @@ -34970,13 +34974,13 @@ msgstr "" "manvolnum></citerefentry> 的操作手冊來取得更多資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:23703 +#: book.translate.xml:23710 msgid "" "Modify group membership by referring to <xref linkend=\"users-synopsis\"/>." msgstr "要修改群組成員可參考 <xref linkend=\"users-synopsis\"/>。" #. (itstool) path: note/para -#: book.translate.xml:23707 +#: book.translate.xml:23714 msgid "" "Power management requires <citerefentry><refentrytitle>acpi</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> to be loaded as a " @@ -34988,24 +34992,24 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: sect3/title -#: book.translate.xml:23722 book.translate.xml:56645 +#: book.translate.xml:23729 book.translate.xml:56266 msgid "Security" msgstr "安全性" #. (itstool) path: authorgroup/author -#: book.translate.xml:23725 +#: book.translate.xml:23732 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: chapter/indexterm -#: book.translate.xml:23735 +#: book.translate.xml:23742 msgid "<primary>security</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:23740 +#: book.translate.xml:23747 msgid "" "Security, whether physical or virtual, is a topic so broad that an entire " "industry has evolved around it. Hundreds of standard practices have been " @@ -35016,7 +35020,7 @@ msgstr "" "來搛寫如何確保系統與網路的安全性。身為 FreeBSD 必須了解如何避免攻擊與入侵。" #. (itstool) path: sect1/para -#: book.translate.xml:23746 +#: book.translate.xml:23753 msgid "" "In this chapter, several fundamentals and techniques will be discussed. The " "FreeBSD system comes with multiple layers of security, and many more third " @@ -35026,22 +35030,22 @@ msgstr "" "方工具可以用來增加安全性。" #. (itstool) path: listitem/para -#: book.translate.xml:23755 +#: book.translate.xml:23762 msgid "Basic FreeBSD system security concepts." msgstr "基礎 FreeBSD 系統安全概念。" #. (itstool) path: listitem/para -#: book.translate.xml:23759 +#: book.translate.xml:23766 msgid "The various crypt mechanisms available in FreeBSD." msgstr "FreeBSD 中的幾種加密 (Crypt) 機制。" #. (itstool) path: listitem/para -#: book.translate.xml:23763 +#: book.translate.xml:23770 msgid "How to set up one-time password authentication." msgstr "如何設定一次性密碼認證。" #. (itstool) path: listitem/para -#: book.translate.xml:23767 +#: book.translate.xml:23774 msgid "" "How to configure <application>TCP Wrapper</application> for use with " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -35051,29 +35055,29 @@ msgstr "" "manvolnum></citerefentry> 中的 <application>TCP Wrapper</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:23772 +#: book.translate.xml:23779 msgid "How to set up <application>Kerberos</application> on FreeBSD." msgstr "如何在 FreeBSD 設定 <application>Kerberos</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:23777 +#: book.translate.xml:23784 msgid "" "How to configure <acronym>IPsec</acronym> and create a <acronym>VPN</" "acronym>." msgstr "如何設定 <acronym>IPsec</acronym> 並且建立 <acronym>VPN</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:23782 +#: book.translate.xml:23789 msgid "How to configure and use <application>OpenSSH</application> on FreeBSD." msgstr "如何在 FreeBSD 設定並使用 <application>OpenSSH</application>" #. (itstool) path: listitem/para -#: book.translate.xml:23787 +#: book.translate.xml:23794 msgid "How to use file system <acronym>ACL</acronym>s." msgstr "如何使用檔案系統 <acronym>ACL</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:23791 +#: book.translate.xml:23798 msgid "" "How to use <application>pkg</application> to audit third party software " "packages installed from the Ports Collection." @@ -35082,29 +35086,29 @@ msgstr "" "套件。" #. (itstool) path: listitem/para -#: book.translate.xml:23797 +#: book.translate.xml:23804 msgid "How to utilize FreeBSD security advisories." msgstr "如何利用 FreeBSD 安全報告。" #. (itstool) path: listitem/para -#: book.translate.xml:23801 +#: book.translate.xml:23808 msgid "What Process Accounting is and how to enable it on FreeBSD." msgstr "什麼是程序追蹤 (Process Accounting) 以及如何在 FreeBSD 開啟。" #. (itstool) path: listitem/para -#: book.translate.xml:23806 +#: book.translate.xml:23813 msgid "" "How to control user resources using login classes or the resource limits " "database." msgstr "如何使用登入類別或資源限制資料庫控制使用者資源。" #. (itstool) path: listitem/para -#: book.translate.xml:23815 book.translate.xml:58196 +#: book.translate.xml:23822 book.translate.xml:57818 msgid "Understand basic FreeBSD and Internet concepts." msgstr "了解 FreeBSD 基礎及網路概念。" #. (itstool) path: sect1/para -#: book.translate.xml:23819 +#: book.translate.xml:23826 msgid "" "Additional security topics are covered elsewhere in this Handbook. For " "example, Mandatory Access Control is discussed in <xref linkend=\"mac\"/> " @@ -35115,7 +35119,7 @@ msgstr "" "linkend=\"firewalls\"/> 討論。" #. (itstool) path: sect1/para -#: book.translate.xml:23828 +#: book.translate.xml:23835 msgid "" "Security is everyone's responsibility. A weak entry point in any system " "could allow intruders to gain access to critical information and cause havoc " @@ -35129,7 +35133,7 @@ msgstr "" "(Availability)。" #. (itstool) path: sect1/para -#: book.translate.xml:23836 +#: book.translate.xml:23843 msgid "" "The <acronym>CIA</acronym> triad is a bedrock concept of computer security " "as customers and users expect their data to be protected. For example, a " @@ -35144,7 +35148,7 @@ msgstr "" "訊 (可用性)。" #. (itstool) path: sect1/para -#: book.translate.xml:23844 +#: book.translate.xml:23851 msgid "" "To provide <acronym>CIA</acronym>, security professionals apply a defense in " "depth strategy. The idea of defense in depth is to add several layers of " @@ -35162,7 +35166,7 @@ msgstr "" "脅。" #. (itstool) path: sect1/para -#: book.translate.xml:23855 +#: book.translate.xml:23862 msgid "" "What is a threat as it pertains to computer security? Threats are not " "limited to remote attackers who attempt to access a system without " @@ -35175,7 +35179,7 @@ msgstr "" "公司競爭對手。" #. (itstool) path: sect1/para -#: book.translate.xml:23862 +#: book.translate.xml:23869 msgid "" "Systems and networks can be accessed without permission, sometimes by " "accident, or by remote attackers, and in some cases, via corporate espionage " @@ -35190,7 +35194,7 @@ msgstr "" "備在發生時能夠減緩威脅。" #. (itstool) path: sect1/para -#: book.translate.xml:23870 +#: book.translate.xml:23877 msgid "" "When applying security to systems, it is recommended to start by securing " "the basic accounts and system configuration, and then to secure the network " @@ -35209,7 +35213,7 @@ msgstr "" "有疑慮時,請向安全團隊諮詢。" #. (itstool) path: sect1/para -#: book.translate.xml:23882 +#: book.translate.xml:23889 msgid "" "The rest of this introduction describes how some of these basic security " "configurations are performed on a FreeBSD system. The rest of this chapter " @@ -35220,12 +35224,12 @@ msgstr "" "的部份將介紹在 FreeBSD 系統執行安全性政策時會用到的特定工具。" #. (itstool) path: sect2/title -#: book.translate.xml:23889 +#: book.translate.xml:23896 msgid "Preventing Logins" msgstr "防止登入" #. (itstool) path: sect2/para -#: book.translate.xml:23891 +#: book.translate.xml:23898 msgid "" "In securing a system, a good starting point is an audit of accounts. Ensure " "that <systemitem class=\"username\">root</systemitem> has a strong password " @@ -35237,7 +35241,7 @@ msgstr "" "方使用過,然後關閉任何無須登入存取權的帳號。" #. (itstool) path: sect2/para -#: book.translate.xml:23896 +#: book.translate.xml:23903 msgid "" "To deny login access to accounts, two methods exist. The first is to lock " "the account. This example locks the <systemitem class=\"username\">toor</" @@ -35247,13 +35251,13 @@ msgstr "" "<systemitem class=\"username\">toor</systemitem> 帳號:" #. (itstool) path: sect2/screen -#: book.translate.xml:23900 +#: book.translate.xml:23907 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw lock <replaceable>toor</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23902 +#: book.translate.xml:23909 msgid "" "The second method is to prevent login access by changing the shell to " "<filename>/sbin/nologin</filename>. Only the superuser can change the shell " @@ -35263,13 +35267,13 @@ msgstr "" "filename>,只有超級使用者可以更改其他使用者的 Shell:" #. (itstool) path: sect2/screen -#: book.translate.xml:23906 +#: book.translate.xml:23913 #, no-wrap msgid "<prompt>#</prompt> <userinput>chsh -s /usr/sbin/nologin <replaceable>toor</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23908 +#: book.translate.xml:23915 msgid "" "The <filename>/usr/sbin/nologin</filename> shell prevents the system from " "assigning a shell to the user when they attempt to login." @@ -35278,12 +35282,12 @@ msgstr "" "入的使用者。" #. (itstool) path: sect2/title -#: book.translate.xml:23914 +#: book.translate.xml:23921 msgid "Permitted Account Escalation" msgstr "帳號升級授權" #. (itstool) path: sect2/para -#: book.translate.xml:23916 +#: book.translate.xml:23923 msgid "" "In some cases, system administration needs to be shared with other users. " "FreeBSD has two methods to handle this. The first one, which is not " @@ -35307,7 +35311,7 @@ msgstr "" "項目的最後,使用者必須以逗號字元分隔並不可有空白。" #. (itstool) path: sect2/para -#: book.translate.xml:23930 +#: book.translate.xml:23937 msgid "" "The second, and recommended, method to permit privilege escalation is to " "install the <package>security/sudo</package> package or port. This software " @@ -35319,7 +35323,7 @@ msgstr "" "定使用者只能執行特定需權限的指令。" #. (itstool) path: sect2/para -#: book.translate.xml:23937 +#: book.translate.xml:23944 msgid "" "After installation, use <command>visudo</command> to edit <filename>/usr/" "local/etc/sudoers</filename>. This example creates a new <systemitem class=" @@ -35334,7 +35338,7 @@ msgstr "" "<package>apache24</package> 的存取權:" #. (itstool) path: sect2/screen -#: book.translate.xml:23944 +#: book.translate.xml:23951 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw groupadd webadmin -M trhodes -g 6000</userinput>\n" @@ -35343,12 +35347,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:23950 +#: book.translate.xml:23957 msgid "Password Hashes" msgstr "密碼編碼方式" #. (itstool) path: sect2/para -#: book.translate.xml:23952 +#: book.translate.xml:23959 msgid "" "Passwords are a necessary evil of technology. When they must be used, they " "should be complex and a powerful hash mechanism should be used to encrypt " @@ -35367,7 +35371,7 @@ msgstr "" "Blowfish 演算法。" #. (itstool) path: note/para -#: book.translate.xml:23964 +#: book.translate.xml:23971 msgid "" "Blowfish is not part of <acronym>AES</acronym> and is not considered " "compliant with any Federal Information Processing Standards (<acronym>FIPS</" @@ -35378,7 +35382,7 @@ msgstr "" "境可能不會允許使用這種加密方式。" #. (itstool) path: sect2/para -#: book.translate.xml:23970 +#: book.translate.xml:23977 msgid "" "To determine which hash algorithm is used to encrypt a user's password, the " "superuser can view the hash for the user in the FreeBSD password database. " @@ -35403,7 +35407,7 @@ msgstr "" "原來的密碼,會儲存於密碼資料庫中:" #. (itstool) path: sect2/screen -#: book.translate.xml:23986 +#: book.translate.xml:23993 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>grep dru /etc/master.passwd</userinput>\n" @@ -35411,7 +35415,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23989 +#: book.translate.xml:23996 msgid "" "The hash mechanism is set in the user's login class. For this example, the " "user is in the <literal>default</literal> login class and the hash algorithm " @@ -35422,25 +35426,25 @@ msgstr "" "etc/login.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23994 +#: book.translate.xml:24001 #, no-wrap msgid " :passwd_format=sha512:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:23996 +#: book.translate.xml:24003 msgid "" "To change the algorithm to Blowfish, modify that line to look like this:" msgstr "要更改演算法為 Blowfish,可修改該行如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:23999 +#: book.translate.xml:24006 #, no-wrap msgid " :passwd_format=blf:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24001 +#: book.translate.xml:24008 msgid "" "Then run <command>cap_mkdb /etc/login.conf</command> as described in <xref " "linkend=\"users-limiting\"/>. Note that this change will not affect any " @@ -35454,7 +35458,7 @@ msgstr "" "密碼才有辦法重新加密所有密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24008 +#: book.translate.xml:24015 msgid "" "For remote logins, two-factor authentication should be used. An example of " "two-factor authentication is <quote>something you have</quote>, such as a " @@ -35475,12 +35479,12 @@ msgstr "" "<xref linkend=\"kerberos5\"/> 中會有說明。" #. (itstool) path: sect2/title -#: book.translate.xml:24022 +#: book.translate.xml:24029 msgid "Password Policy Enforcement" msgstr "強制密碼政策" #. (itstool) path: sect2/para -#: book.translate.xml:24024 +#: book.translate.xml:24031 msgid "" "Enforcing a strong password policy for local accounts is a fundamental " "aspect of system security. In FreeBSD, password length, password strength, " @@ -35492,7 +35496,7 @@ msgstr "" "Modules, <acronym>PAM</acronym>) 來執行。" #. (itstool) path: sect2/para -#: book.translate.xml:24030 +#: book.translate.xml:24037 msgid "" "This section demonstrates how to configure the minimum and maximum password " "length and the enforcement of mixed characters using the " @@ -35503,7 +35507,7 @@ msgstr "" "filename> 來強制使用混合字元的密碼,此模組可在使用者更改其密碼時強制要求。" #. (itstool) path: sect2/para -#: book.translate.xml:24036 +#: book.translate.xml:24043 msgid "" "To configure this module, become the superuser and uncomment the line " "containing <literal>pam_passwdqc.so</literal> in <filename>/etc/pam.d/" @@ -35514,13 +35518,13 @@ msgstr "" "行來配合密碼政策:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24042 +#: book.translate.xml:24049 #, no-wrap msgid "password requisite pam_passwdqc.so <replaceable>min=disabled,disabled,disabled,12,10 similar=deny retry=3</replaceable> enforce=users" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24044 +#: book.translate.xml:24051 msgid "" "This example sets several requirements for new passwords. The <literal>min</" "literal> setting controls the minimum password length. It has five values " @@ -35547,7 +35551,7 @@ msgstr "" "literal> 設定密碼政策接受滿足四種字元類型複雜度且至少 10 個字元的密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24061 +#: book.translate.xml:24068 msgid "" "The <literal>similar</literal> setting denies passwords that are similar to " "the user's previous password. The <literal>retry</literal> setting provides " @@ -35557,14 +35561,14 @@ msgstr "" "<literal>retry</literal> 設定會提供使用者三次輸入新密碼的機會。" #. (itstool) path: sect2/para -#: book.translate.xml:24066 +#: book.translate.xml:24073 msgid "" "Once this file is saved, a user changing their password will see a message " "similar to the following:" msgstr "一這個檔案儲存之後,更改密碼的使用者將會看到如下的訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:24069 +#: book.translate.xml:24076 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>passwd</userinput>\n" @@ -35584,7 +35588,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24084 +#: book.translate.xml:24091 msgid "" "If a password that does not match the policy is entered, it will be rejected " "with a warning and the user will have an opportunity to try again, up to the " @@ -35594,7 +35598,7 @@ msgstr "" "重試,直到超過設定的允許重試次數。" #. (itstool) path: sect2/para -#: book.translate.xml:24089 +#: book.translate.xml:24096 msgid "" "Most password policies require passwords to expire after so many days. To " "set a password age time in FreeBSD, set <option>passwordtime</option> for " @@ -35607,13 +35611,13 @@ msgstr "" "範例:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24096 +#: book.translate.xml:24103 #, no-wrap msgid "# :passwordtime=90d:\\" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24098 +#: book.translate.xml:24105 msgid "" "So, to set an expiry of 90 days for this login class, remove the comment " "symbol (<literal>#</literal>), save the edit, and run <command>cap_mkdb /etc/" @@ -35624,7 +35628,7 @@ msgstr "" "command>。" #. (itstool) path: sect2/para -#: book.translate.xml:24103 +#: book.translate.xml:24110 msgid "" "To set the expiration on individual users, pass an expiration date or the " "number of days to expiry and a username to <command>pw</command>:" @@ -35633,13 +35637,13 @@ msgstr "" "<command>pw</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:24107 +#: book.translate.xml:24114 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw usermod -p <replaceable>30-apr-2015</replaceable> -n <replaceable>trhodes</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24109 +#: book.translate.xml:24116 msgid "" "As seen here, an expiration date is set in the form of day, month, and year. " "For more information, see <citerefentry><refentrytitle>pw</" @@ -35650,12 +35654,12 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:24115 +#: book.translate.xml:24122 msgid "Detecting Rootkits" msgstr "偵測 Root 工具 (Rootkit)" #. (itstool) path: sect2/para -#: book.translate.xml:24117 +#: book.translate.xml:24124 msgid "" "A <firstterm>rootkit</firstterm> is any unauthorized software that attempts " "to gain <systemitem class=\"username\">root</systemitem> access to a system. " @@ -35673,7 +35677,7 @@ msgstr "" "程式也可能會遺漏攻擊者留下的動西。" #. (itstool) path: sect2/para -#: book.translate.xml:24127 +#: book.translate.xml:24134 msgid "" "A rootkit does do one thing usefulfor administrators: once detected, it is a " "sign that a compromise happened at some point. But, these types of " @@ -35685,7 +35689,7 @@ msgstr "" "工具,<package>security/rkhunter</package>。" #. (itstool) path: sect2/para -#: book.translate.xml:24133 +#: book.translate.xml:24140 msgid "" "After installation of this package or port, the system may be checked using " "the following command. It will produce a lot of information and will require " @@ -35695,13 +35699,13 @@ msgstr "" "手動按下 <keycap>ENTER</keycap> 確認:" #. (itstool) path: sect2/screen -#: book.translate.xml:24138 +#: book.translate.xml:24145 #, no-wrap msgid "<prompt>#</prompt> <userinput>rkhunter -c</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24140 +#: book.translate.xml:24147 msgid "" "After the process completes, a status message will be printed to the screen. " "This message will include the amount of files checked, suspect files, " @@ -35718,7 +35722,7 @@ msgstr "" "理。" #. (itstool) path: sect2/para -#: book.translate.xml:24150 +#: book.translate.xml:24157 msgid "" "Every administrator should know what is running on the systems they are " "responsible for. Third-party tools like <application>rkhunter</application> " @@ -35735,12 +35739,12 @@ msgstr "" "雖然理想要避免滲透,但也必須偵測是否已被滲透了。" #. (itstool) path: sect2/title -#: book.translate.xml:24162 +#: book.translate.xml:24169 msgid "Binary Verification" msgstr "Binary 檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:24164 +#: book.translate.xml:24171 msgid "" "Verification of system files and binaries is important because it provides " "the system administration and security teams information about system " @@ -35752,7 +35756,7 @@ msgstr "" "Detection System, <acronym>IDS</acronym>)。" #. (itstool) path: sect2/para -#: book.translate.xml:24170 +#: book.translate.xml:24177 msgid "" "FreeBSD provides native support for a basic <acronym>IDS</acronym> system. " "While the nightly security emails will notify an administrator of changes, " @@ -35770,7 +35774,7 @@ msgstr "" "acronym> 磁碟或遠端 <application>rsync</application> 伺服器更好。" #. (itstool) path: sect2/para -#: book.translate.xml:24181 +#: book.translate.xml:24188 msgid "" "The built-in <command>mtree</command> utility can be used to generate a " "specification of the contents of a directory. A seed, or a numeric constant, " @@ -35794,7 +35798,7 @@ msgstr "" "bin_chksum_mtree</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:24194 +#: book.translate.xml:24201 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mtree -s <replaceable>3483151339707503</replaceable> -c -K cksum,sha256digest -p <replaceable>/bin</replaceable> > <replaceable>/root/.bin_chksum_mtree</replaceable></userinput>\n" @@ -35802,7 +35806,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24197 +#: book.translate.xml:24204 msgid "" "The <replaceable>3483151339707503</replaceable> represents the seed. This " "value should be remembered, but not shared." @@ -35811,7 +35815,7 @@ msgstr "" "不可給其它人看。" #. (itstool) path: sect2/para -#: book.translate.xml:24201 +#: book.translate.xml:24208 msgid "" "Viewing <filename>/root/.bin_cksum_mtree</filename> should yield output " "similar to the following:" @@ -35819,7 +35823,7 @@ msgstr "" "檢視 <filename>/root/.bin_cksum_mtree</filename> 應會產生類似以下的輸出結果:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24204 +#: book.translate.xml:24211 #, no-wrap msgid "" "# user: root\n" @@ -35845,7 +35849,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24225 +#: book.translate.xml:24232 msgid "" "The machine's hostname, the date and time the specification was created, and " "the name of the user who created the specification are included in this " @@ -35857,7 +35861,7 @@ msgstr "" "<acronym>SHA</acronym>256 編碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24231 +#: book.translate.xml:24238 msgid "" "To verify that the binary signatures have not changed, compare the current " "contents of the directory to the previously generated specification, and " @@ -35868,7 +35872,7 @@ msgstr "" "然後儲存結果到檔案。這個指令需要當初產生原規格檔所使用的種子碼:" #. (itstool) path: sect2/screen -#: book.translate.xml:24237 +#: book.translate.xml:24244 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mtree -s <replaceable>3483151339707503</replaceable> -p <replaceable>/bin</replaceable> < <replaceable>/root/.bin_chksum_mtree</replaceable> >> <replaceable>/root/.bin_chksum_output</replaceable></userinput>\n" @@ -35876,7 +35880,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24240 +#: book.translate.xml:24247 msgid "" "This should produce the same checksum for <filename>/bin</filename> that was " "produced when the specification was created. If no changes have occurred to " @@ -35892,7 +35896,7 @@ msgstr "" "的日期然後再執行檢驗指令一次:" #. (itstool) path: sect2/screen -#: book.translate.xml:24249 +#: book.translate.xml:24256 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>touch /bin/cat</userinput>\n" @@ -35903,7 +35907,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24255 +#: book.translate.xml:24262 msgid "" "It is recommended to create specifications for the directories which contain " "binaries and configuration files, as well as any directories containing " @@ -35919,7 +35923,7 @@ msgstr "" "建立規格檔。" #. (itstool) path: sect2/para -#: book.translate.xml:24265 +#: book.translate.xml:24272 msgid "" "More advanced <acronym>IDS</acronym> systems exist, such as " "<package>security/aide</package>. In most cases, <command>mtree</command> " @@ -35936,12 +35940,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:24275 +#: book.translate.xml:24282 msgid "System Tuning for Security" msgstr "系統安全性調校" #. (itstool) path: sect2/para -#: book.translate.xml:24277 +#: book.translate.xml:24284 msgid "" "In FreeBSD, many system features can be tuned using <command>sysctl</" "command>. A few of the security features which can be tuned to prevent " @@ -35957,7 +35961,7 @@ msgstr "" "到。" #. (itstool) path: note/para -#: book.translate.xml:24287 +#: book.translate.xml:24294 msgid "" "Any time a setting is changed with <command>sysctl</command>, the chance to " "cause undesired harm is increased, affecting the availability of the system. " @@ -35969,7 +35973,7 @@ msgstr "" "能的話,先在測試系統上實驗,再到上線的系統上使用。" #. (itstool) path: sect2/para -#: book.translate.xml:24295 +#: book.translate.xml:24302 msgid "" "By default, the FreeBSD kernel boots with a security level of <literal>-1</" "literal>. This is called <quote>insecure mode</quote> because immutable file " @@ -35998,7 +36002,7 @@ msgstr "" "可用的安全性層級相關的資訊。" #. (itstool) path: warning/para -#: book.translate.xml:24311 +#: book.translate.xml:24318 msgid "" "Increasing the <varname>securelevel</varname> can break <application>Xorg</" "application> and cause other issues. Be prepared to do some debugging." @@ -36007,7 +36011,7 @@ msgstr "" "法執行以及造成其他問題,請做好除錯的準備。" #. (itstool) path: sect2/para -#: book.translate.xml:24316 +#: book.translate.xml:24323 msgid "" "The <varname>net.inet.tcp.blackhole</varname> and <varname>net.inet.udp." "blackhole</varname> settings can be used to drop incoming <acronym>SYN</" @@ -36032,7 +36036,7 @@ msgstr "" "manvolnum></citerefentry> 以取得更多有關這些設定的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:24330 +#: book.translate.xml:24337 msgid "" "The <varname>net.inet.icmp.drop_redirect</varname> and <varname>net.inet.ip." "redirect</varname> settings help prevent against <firstterm>redirect " @@ -36051,7 +36055,7 @@ msgstr "" "封包。" #. (itstool) path: sect2/para -#: book.translate.xml:24341 +#: book.translate.xml:24348 msgid "" "Source routing is a method for detecting and accessing non-routable " "addresses on the internal network. This should be disabled as non-routable " @@ -36065,7 +36069,7 @@ msgstr "" "accept_sourceroute</varname> 為 <literal>0</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:24349 +#: book.translate.xml:24356 msgid "" "When a machine on the network needs to send messages to all hosts on a " "subnet, an <acronym>ICMP</acronym> echo request message is sent to the " @@ -36079,7 +36083,7 @@ msgstr "" "bmcastecho</varname> 為 <literal>0</literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:24357 +#: book.translate.xml:24364 msgid "" "Some additional settings are documented in " "<citerefentry><refentrytitle>security</refentrytitle><manvolnum>7</" @@ -36089,22 +36093,22 @@ msgstr "" "refentrytitle><manvolnum>7</manvolnum></citerefentry> 有說明。" #. (itstool) path: sect1/title -#: book.translate.xml:24363 +#: book.translate.xml:24370 msgid "One-time Passwords" msgstr "一次性密碼" #. (itstool) path: sect1/indexterm -#: book.translate.xml:24365 +#: book.translate.xml:24372 msgid "<primary>one-time passwords</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:24366 +#: book.translate.xml:24373 msgid "<primary>security</primary> <secondary>one-time passwords</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24371 +#: book.translate.xml:24378 msgid "" "By default, FreeBSD includes support for One-time Passwords In Everything " "(<acronym>OPIE</acronym>). <acronym>OPIE</acronym> is designed to prevent " @@ -36115,9 +36119,16 @@ msgid "" "to manage passwords. The FreeBSD implementation uses the <acronym>MD5</" "acronym> hash by default." msgstr "" +"預設 FreeBSD 已內建一次性密碼 (One-time Passwords In Everything, " +"<acronym>OPIE</acronym>)。<acronym>OPIE</acronym> 設計用來避免重送攻擊 " +"(Replay attack),重送攻擊指的是攻擊者發現了某位使用者的密碼,然後使用該密碼來" +"存取系統。由於在 <acronym>OPIE</acronym> 的環境下,一組密碼只能被使用一次,被" +"發現的密碼對攻擊者而言便沒有什麼作用。<acronym>OPIE</acronym> 使用了安全的加" +"密方式與詰問/回應系統 (Challenge/response system) 來管理密碼。FreeBSD 在實作" +"上預設採用 <acronym>MD5</acronym> 加密。" #. (itstool) path: sect1/para -#: book.translate.xml:24382 +#: book.translate.xml:24389 msgid "" "<acronym>OPIE</acronym> uses three different types of passwords. The first " "is the usual <trademark class=\"registered\">UNIX</trademark> or Kerberos " @@ -36127,9 +36138,14 @@ msgid "" "password has nothing to do with, and should be different from, the " "<trademark class=\"registered\">UNIX</trademark> password." msgstr "" +"<acronym>OPIE</acronym> 使用了三種不同類型的密碼,第一種是一般的 <trademark " +"class=\"registered\">UNIX</trademark> 或 Kerberos 密碼,第二種是由 " +"<command>opiekey</command> 所產生的一次性密碼,第三種是用來生一次性密碼的 " +"<quote>秘密密碼 (Secret password)</quote>,秘密密碼與 <trademark class=" +"\"registered\">UNIX</trademark> 密碼無關且不應相同。" #. (itstool) path: sect1/para -#: book.translate.xml:24390 +#: book.translate.xml:24397 msgid "" "There are two other pieces of data that are important to <acronym>OPIE</" "acronym>. One is the <quote>seed</quote> or <quote>key</quote>, consisting " @@ -36147,9 +36163,19 @@ msgid "" "When the iteration count gets down to <literal>1</literal>, <acronym>OPIE</" "acronym> must be reinitialized." msgstr "" +"對 <acronym>OPIE</acronym> 來說還有另外兩個部份的資料很重要。其中一個是" +"<quote>種子碼 (Seed)</quote> 或稱<quote>金鑰 (Key)</quote>,由兩個字母與五個" +"數字組成。另一個則是<quote>疊代次數 (Iteration count)</quote>,是一個介於 1 " +"到 100 間的數字。<acronym>OPIE</acronym> 會將種子碼與秘密密碼串連後,套用 " +"<acronym>MD5</acronym> 加密數次後 (根據疊代次數),再將結果轉換成六個簡短的英" +"文單字來產生一次性密碼。認証系統會持續追蹤最後使用的一次性密碼,若使用者提供" +"的密碼加密後與前一次的密碼相同則可通過認証。由於採用了單向的加密方式,若使用" +"過的密碼被成功擷取也無法拿來產生之後的一次性密碼。疊代次數會在每一次登入成功" +"之後減少,來保持使用者與登入程式間的同步。當疊代次數減少至 <literal>1</" +"literal> 時,<acronym>OPIE</acronym> 便要重新初始化。" #. (itstool) path: sect1/para -#: book.translate.xml:24409 +#: book.translate.xml:24416 msgid "" "There are a few programs involved in this process. A one-time password, or a " "consecutive list of one-time passwords, is generated by passing an iteration " @@ -36164,9 +36190,18 @@ msgid "" "manvolnum></citerefentry> which prints out the invoking user's current " "iteration count and seed." msgstr "" +"這個整個程序會牽涉到幾個程式。傳送疊代次數、種子碼與秘密密碼來產生一組一次性" +"密碼或數個一次性密碼的 <citerefentry><refentrytitle>opiekey</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>。除了初始化 " +"<acronym>OPIE</acronym> 之外,用來更改密碼、疊代次數或種子碼的 " +"<citerefentry><refentrytitle>opiepasswd</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry>。會讀取放在 <filename>/etc/opiekeys</filename> 的相" +"關憑証檔來列出使用者目前的疊代次數與種子碼的 " +"<citerefentry><refentrytitle>opieinfo</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry>。" #. (itstool) path: sect1/para -#: book.translate.xml:24419 +#: book.translate.xml:24426 msgid "" "This section describes four different sorts of operations. The first is how " "to set up one-time-passwords for the first time over a secure connection. " @@ -36175,21 +36210,25 @@ msgid "" "fourth is how to generate a number of keys which can be written down or " "printed out to use at insecure locations." msgstr "" +"本章節將介紹四種不同的操作,第一是如何在安全連線下做第一次的一次性密碼設定," +"第二是如何使用在不安全的連線下使用 <command>opiepasswd</command>,第三是如何" +"在不安全的連線下登入系統,第四是如何產生數個可以被記錄或列印下來在不安全的場" +"所使的金鑰。" #. (itstool) path: sect2/title -#: book.translate.xml:24428 +#: book.translate.xml:24435 msgid "Initializing <acronym>OPIE</acronym>" msgstr "初始化 <acronym>OPIE</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:24430 +#: book.translate.xml:24437 msgid "" "To initialize <acronym>OPIE</acronym> for the first time, run this command " "from a secure location:" -msgstr "" +msgstr "第一次要初始化 <acronym>OPIE</acronym>,要在安全的場所執行以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:24433 +#: book.translate.xml:24440 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiepasswd -c</userinput>\n" @@ -36206,16 +36245,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24445 +#: book.translate.xml:24452 msgid "" "The <option>-c</option> sets console mode which assumes that the command is " "being run from a secure location, such as a computer under the user's " "control or a <acronym>SSH</acronym> session to a computer under the user's " "control." msgstr "" +"<option>-c</option> 會設定採用假設指令在安全場所執行的 Console 模式,如在使用" +"者掌控之中的電腦或者透過 <acronym>SSH</acronym> 連線到一台在使用者掌控之中的" +"電腦。" #. (itstool) path: sect2/para -#: book.translate.xml:24451 +#: book.translate.xml:24458 msgid "" "When prompted, enter the secret password which will be used to generate the " "one-time login keys. This password should be difficult to guess and should " @@ -36223,9 +36265,12 @@ msgid "" "account. It must be between 10 and 127 characters long. Remember this " "password." msgstr "" +"提示出現後,輸入用來產生一次性登入金鑰的秘密密碼,應使用一個不容易被猜出來的" +"密碼,且應與使用者登入帳號所使用的密碼不同,密碼必須介於 10 到 127 個字元長度" +"之間,然後請記住這個密碼。" #. (itstool) path: sect2/para -#: book.translate.xml:24458 +#: book.translate.xml:24465 msgid "" "The <literal>ID</literal> line lists the login name (<literal>unfurl</" "literal>), default iteration count (<literal>499</literal>), and default " @@ -36235,14 +36280,19 @@ msgid "" "corresponds to those parameters and the secret password. At the next login, " "use this one-time password." msgstr "" +"<literal>ID</literal> 行會列出登入名稱 (<literal>unfurl</literal>)、預設的疊" +"代次數 (<literal>499</literal>) 以及預設的種子碼 (<literal>to4268</" +"literal>)。在進行登入時,系統會記住這些參數並且顯示出來,這也代表不需要另外記" +"錄這些資訊。最後一行會列出根據這些參數與秘密密碼所產生出來的一次性密碼,在下" +"一次登入時便要使用這個一次性密碼。" #. (itstool) path: sect2/title -#: book.translate.xml:24470 +#: book.translate.xml:24477 msgid "Insecure Connection Initialization" -msgstr "不安全連線初始化" +msgstr "在不安全連線下做初始化" #. (itstool) path: sect2/para -#: book.translate.xml:24472 +#: book.translate.xml:24479 msgid "" "To initialize or change the secret password on an insecure system, a secure " "connection is needed to some place where <command>opiekey</command> can be " @@ -36252,9 +36302,14 @@ msgid "" "the machine being initialized, use <citerefentry><refentrytitle>opiepasswd</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" msgstr "" +"要在不安全的系統上初始化或更改秘密密碼會需要某個可使用安全的連線的地方執行 " +"<command>opiekey</command>,這可能是在某一台信任的主機上的 Shell。初始化需要" +"設定疊代次數,100 可能是不錯的數字,種子碼可以自行指定或隨機產生,在不安全連" +"線下要被初始化主機須使用 <citerefentry><refentrytitle>opiepasswd</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>:" #. (itstool) path: sect2/screen -#: book.translate.xml:24481 +#: book.translate.xml:24488 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiepasswd</userinput>\n" @@ -36273,15 +36328,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24495 +#: book.translate.xml:24502 msgid "" "To accept the default seed, press <keycap>Return</keycap>. Before entering " "an access password, move over to the secure connection and give it the same " "parameters:" msgstr "" +"要採用預設的種子碼,可直接按下 <keycap>Return</keycap> 做初始化。接著在輸入回" +"應之前移到安全的連線然後給予相同的加密參數產生密碼:" #. (itstool) path: sect2/screen -#: book.translate.xml:24499 book.translate.xml:24547 +#: book.translate.xml:24506 book.translate.xml:24554 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiekey 498 to4268</userinput>\n" @@ -36292,26 +36349,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24505 +#: book.translate.xml:24512 msgid "" "Switch back over to the insecure connection, and copy the generated one-time " "password over to the relevant program." -msgstr "" +msgstr "切換回不安全的連線,然後複製產生的一次性密碼貼上。" #. (itstool) path: sect2/title -#: book.translate.xml:24511 +#: book.translate.xml:24518 msgid "Generating a Single One-time Password" msgstr "產生單組一次性密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24513 +#: book.translate.xml:24520 msgid "" "After initializing <acronym>OPIE</acronym> and logging in, a prompt like " "this will be displayed:" -msgstr "" +msgstr "在初始化 <acronym>OPIE</acronym> 之後進行登入會顯示如下的提示訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:24516 +#: book.translate.xml:24523 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>telnet example.com</userinput>\n" @@ -36327,31 +36384,34 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24527 +#: book.translate.xml:24534 msgid "" "The <acronym>OPIE</acronym> prompts provides a useful feature. If " "<keycap>Return</keycap> is pressed at the password prompt, the prompt will " "turn echo on and display what is typed. This can be useful when attempting " "to type in a password by hand from a printout." msgstr "" +"<acronym>OPIE</acronym> 的提示提供了一個很有用的功能,若在密碼提示時按下 " +"<keycap>Return</keycap>,便會開啟回應功能並顯示輸入的內容,這個功能在嘗試手工" +"輸入列印出來的密碼時很有用。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24533 +#: book.translate.xml:24540 msgid "<primary>MS-DOS</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24534 +#: book.translate.xml:24541 msgid "<primary>Windows</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24535 +#: book.translate.xml:24542 msgid "<primary>MacOS</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24537 +#: book.translate.xml:24544 msgid "" "At this point, generate the one-time password to answer this login prompt. " "This must be done on a trusted system where it is safe to run " @@ -36362,33 +36422,42 @@ msgid "" "and the seed as command line options. Use cut-and-paste from the login " "prompt on the machine being logged in to." msgstr "" +"此時,要產生一次性密碼來回應登入時的提示,這必須在受信任且可安全執行 " +"<citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 的系統上完成。這個指令有提供 <trademark class=" +"\"registered\">Windows</trademark>, <trademark class=\"registered\">Mac OS</" +"trademark> 與 FreeBSD 版本,使用時需要疊代次數與種子碼做為在指令列的參數,剪" +"下在要登入主機在登入時所提示的訊息。" #. (itstool) path: sect2/para -#: book.translate.xml:24545 +#: book.translate.xml:24552 msgid "On the trusted system:" -msgstr "" +msgstr "在信任的系統上執行:" #. (itstool) path: sect2/para -#: book.translate.xml:24553 +#: book.translate.xml:24560 msgid "Once the one-time password is generated, continue to log in." -msgstr "" +msgstr "在產生一次性密碼後,回到登入畫面繼續登入。" #. (itstool) path: sect2/title -#: book.translate.xml:24558 +#: book.translate.xml:24565 msgid "Generating Multiple One-time Passwords" msgstr "產生多組一次性密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24560 +#: book.translate.xml:24567 msgid "" "Sometimes there is no access to a trusted machine or secure connection. In " "this case, it is possible to use <citerefentry><refentrytitle>opiekey</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> to generate a number " "of one-time passwords beforehand. For example:" msgstr "" +"有時會無法存取信任的主機或沒有安全的連線,在這種情況下,可以使用 " +"<citerefentry><refentrytitle>opiekey</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 來預先產生多個一次性密碼,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:24565 +#: book.translate.xml:24572 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>opiekey -n 5 30 zz99999</userinput>\n" @@ -36403,7 +36472,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24575 +#: book.translate.xml:24582 msgid "" "The <option>-n 5</option> requests five keys in sequence, and <option>30</" "option> specifies what the last iteration number should be. Note that these " @@ -36412,15 +36481,19 @@ msgid "" "list. Each line shows both the iteration count and the one-time password. " "Scratch off the passwords as they are used." msgstr "" +"<option>-n 5</option> 會請求產生連續五個金鑰,而 <option>30</option> 則是指定" +"最後一個疊代的編號。注意這些列印出的結果的順序與使用的順序<emphasis>相反</" +"emphasis>。十足的偏執狂可能會想要用手寫下結果,否則就列印出清單。每一行會同時" +"顯示疊代次數及一次性密碼,在密碼使用過後便可劃掉。" #. (itstool) path: sect2/title -#: book.translate.xml:24586 +#: book.translate.xml:24593 msgid "" "Restricting Use of <trademark class=\"registered\">UNIX</trademark> Passwords" msgstr "限制使用 <trademark class=\"registered\">UNIX</trademark> 密碼" #. (itstool) path: sect2/para -#: book.translate.xml:24588 +#: book.translate.xml:24595 msgid "" "<acronym>OPIE</acronym> can restrict the use of <trademark class=\"registered" "\">UNIX</trademark> passwords based on the IP address of a login session. " @@ -36429,41 +36502,51 @@ msgid "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> for more information " "on this file and which security considerations to be aware of when using it." msgstr "" +"<acronym>OPIE</acronym> 可以根據登入階段的 IP 位置限制使用 <trademark class=" +"\"registered\">UNIX</trademark> 密碼,相關的檔案為 <filename>/etc/" +"opieaccess</filename>,這個檔案預設便存在。請參考 " +"<citerefentry><refentrytitle>opieaccess</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> 來取得更多有關此檔案的資訊以及當使用時要考量的安全" +"性問題。" #. (itstool) path: sect2/para -#: book.translate.xml:24595 +#: book.translate.xml:24602 msgid "Here is a sample <filename>opieaccess</filename>:" -msgstr "" +msgstr "這裡有一個範本 <filename>opieaccess</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24597 +#: book.translate.xml:24604 #, no-wrap msgid "permit 192.168.0.0 255.255.0.0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24599 +#: book.translate.xml:24606 msgid "" "This line allows users whose IP source address (which is vulnerable to " "spoofing) matches the specified value and mask, to use <trademark class=" "\"registered\">UNIX</trademark> passwords at any time." msgstr "" +"這一行允許來源 IP 位址 (容易受到詐騙的位址) 符合指定值與遮罩的使用者在任何時" +"間可使用 <trademark class=\"registered\">UNIX</trademark> 密碼登入。" #. (itstool) path: sect2/para -#: book.translate.xml:24603 +#: book.translate.xml:24610 msgid "" "If no rules in <filename>opieaccess</filename> are matched, the default is " "to deny non-<acronym>OPIE</acronym> logins." msgstr "" +"若在 <filename>opieaccess</filename> 中沒有符合的規則,預設會拒絕非 " +"<acronym>OPIE</acronym> 的登入。" #. (itstool) path: info/title -#: book.translate.xml:24611 +#: book.translate.xml:24618 msgid "TCP Wrapper" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24614 book.translate.xml:25459 book.translate.xml:29441 -#: book.translate.xml:41528 book.translate.xml:46205 +#: book.translate.xml:24621 book.translate.xml:25466 book.translate.xml:29448 +#: book.translate.xml:41662 book.translate.xml:45826 msgid "" "<personname><firstname>Tom</firstname><surname>Rhodes</surname></" "personname><contrib>Written by </contrib>" @@ -36471,12 +36554,12 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:24619 book.translate.xml:54107 +#: book.translate.xml:24626 book.translate.xml:53728 msgid "<primary>TCP Wrapper</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24621 +#: book.translate.xml:24628 msgid "" "<application>TCP Wrapper</application> is a host-based access control system " "which extends the abilities of <xref linkend=\"network-inetd\"/>. It can be " @@ -36488,7 +36571,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24629 +#: book.translate.xml:24636 msgid "" "<application>TCP Wrapper</application> should not be considered a " "replacement for a properly configured firewall. Instead, <application>TCP " @@ -36498,19 +36581,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24637 +#: book.translate.xml:24644 msgid "Initial Configuration" msgstr "初始設定" #. (itstool) path: sect2/para -#: book.translate.xml:24639 +#: book.translate.xml:24646 msgid "" "To enable <application>TCP Wrapper</application> in FreeBSD, add the " "following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24643 +#: book.translate.xml:24650 #, no-wrap msgid "" "inetd_enable=\"YES\"\n" @@ -36518,12 +36601,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24646 +#: book.translate.xml:24653 msgid "Then, properly configure <filename>/etc/hosts.allow</filename>." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24650 +#: book.translate.xml:24657 msgid "" "Unlike other implementations of <application>TCP Wrapper</application>, the " "use of <filename>hosts.deny</filename> is deprecated in FreeBSD. All " @@ -36532,7 +36615,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24657 +#: book.translate.xml:24664 msgid "" "In the simplest configuration, daemon connection policies are set to either " "permit or block, depending on the options in <filename>/etc/hosts.allow</" @@ -36541,7 +36624,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24663 +#: book.translate.xml:24670 msgid "" "Basic configuration usually takes the form of <literal>daemon : address : " "action</literal>, where <literal>daemon</literal> is the daemon which " @@ -36555,7 +36638,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24676 +#: book.translate.xml:24683 msgid "" "For example, to allow <acronym>POP</acronym>3 connections via the " "<package>mail/qpopper</package> daemon, the following lines should be " @@ -36563,7 +36646,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24681 +#: book.translate.xml:24688 #, no-wrap msgid "" "# This line is required for POP3 connections:\n" @@ -36571,23 +36654,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24684 +#: book.translate.xml:24691 msgid "Whenever this file is edited, restart <application>inetd</application>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24687 book.translate.xml:34351 +#: book.translate.xml:24694 book.translate.xml:34485 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd restart</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24691 book.translate.xml:49462 +#: book.translate.xml:24698 book.translate.xml:49083 msgid "Advanced Configuration" msgstr "進階設定" #. (itstool) path: sect2/para -#: book.translate.xml:24693 +#: book.translate.xml:24700 msgid "" "<application>TCP Wrapper</application> provides advanced options to allow " "more control over the way connections are handled. In some cases, it may be " @@ -36600,7 +36683,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24703 +#: book.translate.xml:24710 msgid "" "Suppose that a situation occurs where a connection should be denied yet a " "reason should be sent to the host who attempted to establish that " @@ -36610,7 +36693,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24711 +#: book.translate.xml:24718 #, no-wrap msgid "" "# The rest of the daemons are protected.\n" @@ -36620,7 +36703,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24716 +#: book.translate.xml:24723 msgid "" "In this example, the message <quote>You are not allowed to use " "<replaceable>daemon name</replaceable> from <replaceable>hostname</" @@ -36632,14 +36715,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:24727 +#: book.translate.xml:24734 msgid "" "It may be possible to launch a denial of service attack on the server if an " "attacker floods these daemons with connection requests." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24732 +#: book.translate.xml:24739 msgid "" "Another possibility is to use <option>spawn</option>. Like <option>twist</" "option>, <option>spawn</option> implicitly denies the connection and may be " @@ -36650,7 +36733,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24740 +#: book.translate.xml:24747 #, no-wrap msgid "" "# We do not allow connections from example.com:\n" @@ -36661,7 +36744,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24746 +#: book.translate.xml:24753 msgid "" "This will deny all connection attempts from <systemitem class=\"fqdomainname" "\">*.example.com</systemitem> and log the hostname, <acronym>IP</acronym> " @@ -36673,7 +36756,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24754 +#: book.translate.xml:24761 msgid "" "To match every instance of a daemon, domain, or <acronym>IP</acronym> " "address, use <literal>ALL</literal>. Another wildcard is <literal>PARANOID</" @@ -36685,7 +36768,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24764 +#: book.translate.xml:24771 #, no-wrap msgid "" "# Block possibly spoofed requests to sendmail:\n" @@ -36693,7 +36776,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:24768 +#: book.translate.xml:24775 msgid "" "Using the <literal>PARANOID</literal> wildcard will result in denied " "connections if the client or server has a broken <acronym>DNS</acronym> " @@ -36701,7 +36784,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24773 +#: book.translate.xml:24780 msgid "" "To learn more about wildcards and their associated functionality, refer to " "<citerefentry><refentrytitle>hosts_access</refentrytitle><manvolnum>5</" @@ -36709,33 +36792,33 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24777 +#: book.translate.xml:24784 msgid "" "When adding new configuration lines, make sure that any unneeded entries for " "that daemon are commented out in <filename>hosts.allow</filename>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:24786 +#: book.translate.xml:24793 msgid "<application>Kerberos</application>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24789 +#: book.translate.xml:24796 msgid "" "<personname> <firstname>Tillman</firstname> <surname>Hodgson</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:24799 +#: book.translate.xml:24806 msgid "" "<personname> <firstname>Mark</firstname> <surname>Murray</surname> </" "personname> <contrib>Based on a contribution by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24809 +#: book.translate.xml:24816 msgid "" "<application>Kerberos</application> is a network authentication protocol " "which was originally created by the Massachusetts Institute of Technology " @@ -36750,7 +36833,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24823 +#: book.translate.xml:24830 msgid "" "The only function of <application>Kerberos</application> is to provide the " "secure authentication of users and servers on the network. It does not " @@ -36760,7 +36843,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24830 +#: book.translate.xml:24837 msgid "" "The current version of the protocol is version 5, described in <acronym>RFC</" "acronym> 4120. Several free implementations of this protocol are available, " @@ -36779,7 +36862,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24849 +#: book.translate.xml:24856 msgid "" "In <application>Kerberos</application> users and services are identified as " "<quote>principals</quote> which are contained within an administrative " @@ -36789,35 +36872,35 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24857 +#: book.translate.xml:24864 msgid "" "This section provides a guide on how to set up <application>Kerberos</" "application> using the Heimdal distribution included in FreeBSD." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:24861 +#: book.translate.xml:24868 msgid "" "For purposes of demonstrating a <application>Kerberos</application> " "installation, the name spaces will be as follows:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:24867 +#: book.translate.xml:24874 msgid "" "The <acronym>DNS</acronym> domain (zone) will be <systemitem class=" "\"fqdomainname\">example.org</systemitem>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:24872 +#: book.translate.xml:24879 msgid "" "The <application>Kerberos</application> realm will be <literal>EXAMPLE.ORG</" "literal>." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24878 +#: book.translate.xml:24885 msgid "" "Use real domain names when setting up <application>Kerberos</application>, " "even if it will run internally. This avoids <acronym>DNS</acronym> problems " @@ -36826,18 +36909,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:24886 +#: book.translate.xml:24893 msgid "Setting up a Heimdal <acronym>KDC</acronym>" msgstr "設定 Heimdal <acronym>KDC</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:24888 +#: book.translate.xml:24895 msgid "" "<primary>Kerberos5</primary> <secondary>Key Distribution Center</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24893 +#: book.translate.xml:24900 msgid "" "The Key Distribution Center (<acronym>KDC</acronym>) is the centralized " "authentication service that <application>Kerberos</application> provides, " @@ -36850,7 +36933,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24905 +#: book.translate.xml:24912 msgid "" "While running a <acronym>KDC</acronym> requires few computing resources, a " "dedicated machine acting only as a <acronym>KDC</acronym> is recommended for " @@ -36858,14 +36941,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24910 +#: book.translate.xml:24917 msgid "" "To begin setting up a <acronym>KDC</acronym>, add these lines to <filename>/" "etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24913 +#: book.translate.xml:24920 #, no-wrap msgid "" "kdc_enable=\"YES\"\n" @@ -36873,12 +36956,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24916 +#: book.translate.xml:24923 msgid "Next, edit <filename>/etc/krb5.conf</filename> as follows:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24919 +#: book.translate.xml:24926 #, no-wrap msgid "" "[libdefaults]\n" @@ -36893,7 +36976,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24929 +#: book.translate.xml:24936 msgid "" "In this example, the <acronym>KDC</acronym> will use the fully-qualified " "hostname <systemitem class=\"fqdomainname\">kerberos.example.org</" @@ -36902,7 +36985,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24934 +#: book.translate.xml:24941 msgid "" "<application>Kerberos</application> can also use the <acronym>DNS</acronym> " "to locate KDCs, instead of a <literal>[realms]</literal> section in " @@ -36911,7 +36994,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24941 +#: book.translate.xml:24948 #, no-wrap msgid "" "[libdefaults]\n" @@ -36921,14 +37004,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24946 +#: book.translate.xml:24953 msgid "" "With the following lines being included in the <systemitem class=" "\"fqdomainname\">example.org</systemitem> zone file:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:24950 +#: book.translate.xml:24957 #, no-wrap msgid "" "_kerberos._udp IN SRV 01 00 88 <replaceable>kerberos.example.org</replaceable>.\n" @@ -36939,7 +37022,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:24957 +#: book.translate.xml:24964 msgid "" "In order for clients to be able to find the <application>Kerberos</" "application> services, they <emphasis>must</emphasis> have either a fully " @@ -36949,7 +37032,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24966 +#: book.translate.xml:24973 msgid "" "Next, create the <application>Kerberos</application> database which contains " "the keys of all principals (users and hosts) encrypted with a master " @@ -36960,7 +37043,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24975 +#: book.translate.xml:24982 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kstash</userinput>\n" @@ -36969,7 +37052,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24979 +#: book.translate.xml:24986 msgid "" "Once the master key has been created, the database should be initialized. " "The <application>Kerberos</application> administrative tool " @@ -36984,7 +37067,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:24990 +#: book.translate.xml:24997 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin -l</userinput>\n" @@ -36993,7 +37076,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:24994 +#: book.translate.xml:25001 msgid "" "Lastly, while still in <command>kadmin</command>, create the first principal " "using <command>add</command>. Stick to the default options for the principal " @@ -37002,7 +37085,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25001 +#: book.translate.xml:25008 #, no-wrap msgid "" "kadmin> <userinput>add <replaceable>tillman</replaceable></userinput>\n" @@ -37014,7 +37097,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25008 +#: book.translate.xml:25015 msgid "" "Next, start the <acronym>KDC</acronym> services by running <command>service " "kdc start</command> and <command>service kadmind start</command>. While " @@ -37024,7 +37107,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25016 +#: book.translate.xml:25023 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>kinit <replaceable>tillman</replaceable></userinput>\n" @@ -37032,14 +37115,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25019 +#: book.translate.xml:25026 msgid "" "Confirm that a ticket was successfully obtained using <command>klist</" "command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25022 +#: book.translate.xml:25029 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>klist</userinput>\n" @@ -37051,28 +37134,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25029 +#: book.translate.xml:25036 msgid "The temporary ticket can be destroyed when the test is finished:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25032 +#: book.translate.xml:25039 #, no-wrap msgid "<prompt>%</prompt> <userinput>kdestroy</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25036 +#: book.translate.xml:25043 msgid "Configuring a Server to Use <application>Kerberos</application>" msgstr "設定伺服器使用 <application>Kerberos</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25039 +#: book.translate.xml:25046 msgid "<primary>Kerberos5</primary> <secondary>enabling services</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25044 +#: book.translate.xml:25051 msgid "" "The first step in configuring a server to use <application>Kerberos</" "application> authentication is to ensure that it has the correct " @@ -37082,7 +37165,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25051 +#: book.translate.xml:25058 msgid "" "Next, create <filename>/etc/krb5.keytab</filename> on the server. This is " "the main part of <quote>Kerberizing</quote> a service — it corresponds to " @@ -37105,7 +37188,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25074 +#: book.translate.xml:25081 msgid "" "Of course, <command>kadmin</command> is a kerberized service; a " "<application>Kerberos</application> ticket is needed to authenticate to the " @@ -37125,7 +37208,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25091 +#: book.translate.xml:25098 msgid "" "After installing <filename>/etc/krb5.conf</filename>, use <command>add --" "random-key</command> in <command>kadmin</command>. This adds the server's " @@ -37135,7 +37218,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25099 +#: book.translate.xml:25106 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin</userinput>\n" @@ -37150,7 +37233,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25109 +#: book.translate.xml:25116 msgid "" "Note that <command>ext_keytab</command> stores the extracted key in " "<filename>/etc/krb5.keytab</filename> by default. This is good when being " @@ -37160,7 +37243,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25117 +#: book.translate.xml:25124 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kadmin</userinput>\n" @@ -37169,7 +37252,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25121 +#: book.translate.xml:25128 msgid "" "The keytab can then be securely copied to the server using " "<citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</manvolnum></" @@ -37178,7 +37261,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25126 +#: book.translate.xml:25133 msgid "" "At this point, the server can read encrypted messages from the <acronym>KDC</" "acronym> using its shared key, stored in <filename>krb5.keytab</filename>. " @@ -37191,13 +37274,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25137 +#: book.translate.xml:25144 #, no-wrap msgid "GSSAPIAuthentication yes" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25139 +#: book.translate.xml:25146 msgid "" "After making this change, <citerefentry><refentrytitle>sshd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> must be restared for " @@ -37206,17 +37289,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25145 +#: book.translate.xml:25152 msgid "Configuring a Client to Use <application>Kerberos</application>" msgstr "設定客戶端使用 <application>Kerberos</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25148 +#: book.translate.xml:25155 msgid "<primary>Kerberos5</primary> <secondary>configure clients</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25153 +#: book.translate.xml:25160 msgid "" "As it was for the server, the client requires configuration in <filename>/" "etc/krb5.conf</filename>. Copy the file in place (securely) or re-enter it " @@ -37224,7 +37307,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25157 +#: book.translate.xml:25164 msgid "" "Test the client by using <command>kinit</command>, <command>klist</command>, " "and <command>kdestroy</command> from the client to obtain, show, and then " @@ -37240,7 +37323,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25171 +#: book.translate.xml:25178 msgid "" "When testing a Kerberized application, try using a packet sniffer such as " "<command>tcpdump</command> to confirm that no sensitive information is sent " @@ -37248,7 +37331,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25175 +#: book.translate.xml:25182 msgid "" "Various <application>Kerberos</application> client applications are " "available. With the advent of a bridge so that applications using " @@ -37259,17 +37342,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25183 +#: book.translate.xml:25190 msgid "<primary><filename>.k5login</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25187 +#: book.translate.xml:25194 msgid "<primary><filename>.k5users</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25191 +#: book.translate.xml:25198 msgid "" "Users within a realm typically have their <application>Kerberos</" "application> principal mapped to a local user account. Occasionally, one " @@ -37282,7 +37365,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25200 +#: book.translate.xml:25207 msgid "" "The <filename>.k5login</filename> and <filename>.k5users</filename> files, " "placed in a user's home directory, can be used to solve this problem. For " @@ -37293,7 +37376,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25208 +#: book.translate.xml:25215 #, no-wrap msgid "" "tillman@example.org\n" @@ -37301,7 +37384,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25211 +#: book.translate.xml:25218 msgid "" "Refer to <citerefentry><refentrytitle>ksu</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> for more information about <filename>.k5users</" @@ -37309,12 +37392,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25216 +#: book.translate.xml:25223 msgid "<acronym>MIT</acronym> Differences" msgstr "與 <acronym>MIT</acronym> 的差異" #. (itstool) path: sect2/para -#: book.translate.xml:25218 +#: book.translate.xml:25225 msgid "" "The major difference between the <acronym>MIT</acronym> and Heimdal " "implementations is that <command>kadmin</command> has a different, but " @@ -37325,7 +37408,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25226 +#: book.translate.xml:25233 msgid "" "Client applications may also use slightly different command line options to " "accomplish the same tasks. Following the instructions at <link xlink:href=" @@ -37337,14 +37420,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25236 +#: book.translate.xml:25243 msgid "" "When using MIT Kerberos as a <acronym>KDC</acronym> on FreeBSD, the " "following edits should also be made to <filename>rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25240 +#: book.translate.xml:25247 #, no-wrap msgid "" "kerberos5_server=\"/usr/local/sbin/krb5kdc\"\n" @@ -37355,19 +37438,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25248 +#: book.translate.xml:25255 msgid "<application>Kerberos</application> Tips, Tricks, and Troubleshooting" msgstr "<application>Kerberos</application> 提示、技巧與疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:25251 +#: book.translate.xml:25258 msgid "" "When configuring and troubleshooting <application>Kerberos</application>, " "keep the following points in mind:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25257 +#: book.translate.xml:25264 msgid "" "When using either Heimdal or <acronym>MIT</acronym> <application>Kerberos</" "application> from ports, ensure that the <envar>PATH</envar> lists the " @@ -37375,7 +37458,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25264 +#: book.translate.xml:25271 msgid "" "If all the computers in the realm do not have synchronized time settings, " "authentication may fail. <xref linkend=\"network-ntp\"/> describes how to " @@ -37383,7 +37466,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25271 +#: book.translate.xml:25278 msgid "" "If the hostname is changed, the <systemitem class=\"username\">host/</" "systemitem> principal must be changed and the keytab updated. This also " @@ -37393,7 +37476,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25278 +#: book.translate.xml:25285 msgid "" "All hosts in the realm must be both forward and reverse resolvable in " "<acronym>DNS</acronym> or, at a minimum, exist in <filename>/etc/hosts</" @@ -37404,7 +37487,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25289 +#: book.translate.xml:25296 msgid "" "Some operating systems that act as clients to the <acronym>KDC</acronym> do " "not set the permissions for <command>ksu</command> to be setuid <systemitem " @@ -37414,7 +37497,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25298 +#: book.translate.xml:25305 msgid "" "With <acronym>MIT</acronym> <application>Kerberos</application>, to allow a " "principal to have a ticket life longer than the default lifetime of ten " @@ -37427,7 +37510,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25312 +#: book.translate.xml:25319 msgid "" "When running a packet sniffer on the <acronym>KDC</acronym> to aid in " "troubleshooting while running <command>kinit</command> from a workstation, " @@ -37449,7 +37532,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25339 +#: book.translate.xml:25346 msgid "" "Host principals can have a longer ticket lifetime. If the user principal has " "a lifetime of a week but the host being connected to has a lifetime of nine " @@ -37458,7 +37541,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25347 +#: book.translate.xml:25354 msgid "" "When setting up <filename>krb5.dict</filename> to prevent specific bad " "passwords from being used as described in " @@ -37470,19 +37553,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25361 +#: book.translate.xml:25368 msgid "Mitigating <application>Kerberos</application> Limitations" msgstr "減輕 <application>Kerberos</application> 的限制" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25364 +#: book.translate.xml:25371 msgid "" "<primary>Kerberos5</primary> <secondary>limitations and shortcomings</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25369 +#: book.translate.xml:25376 msgid "" "Since <application>Kerberos</application> is an all or nothing approach, " "every service enabled on the network must either be modified to work with " @@ -37494,7 +37577,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25379 +#: book.translate.xml:25386 msgid "" "The <acronym>KDC</acronym> is a single point of failure. By design, the " "<acronym>KDC</acronym> must be as secure as its master password database. " @@ -37505,7 +37588,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25388 +#: book.translate.xml:25395 msgid "" "A compromised master key is not quite as bad as one might fear. The master " "key is only used to encrypt the <application>Kerberos</application> database " @@ -37515,7 +37598,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25395 +#: book.translate.xml:25402 msgid "" "If the <acronym>KDC</acronym> is unavailable, network services are unusable " "as authentication cannot be performed. This can be alleviated with a single " @@ -37525,7 +37608,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25402 +#: book.translate.xml:25409 msgid "" "<application>Kerberos</application> allows users, hosts and services to " "authenticate between themselves. It does not have a mechanism to " @@ -37536,31 +37619,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25413 +#: book.translate.xml:25420 msgid "Resources and Further Information" msgstr "相關資源與延伸資訊" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25415 +#: book.translate.xml:25422 msgid "<primary>Kerberos5</primary> <secondary>external resources</secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25422 +#: book.translate.xml:25429 msgid "" "<link xlink:href=\"http://www.faqs.org/faqs/Kerberos-faq/general/preamble." "html\"> The <application>Kerberos</application> FAQ</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25428 +#: book.translate.xml:25435 msgid "" "<link xlink:href=\"http://web.mit.edu/Kerberos/www/dialogue.html\">Designing " "an Authentication System: a Dialog in Four Scenes</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25434 +#: book.translate.xml:25441 msgid "" "<link xlink:href=\"http://www.ietf.org/rfc/rfc4120.txt?number=4120\">RFC " "4120, The <application>Kerberos</application> Network Authentication Service " @@ -37568,31 +37651,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25440 +#: book.translate.xml:25447 msgid "" "<link xlink:href=\"http://web.mit.edu/Kerberos/www/\"><acronym>MIT</acronym> " "<application>Kerberos</application> home page</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25446 +#: book.translate.xml:25453 msgid "" "<link xlink:href=\"http://www.pdc.kth.se/heimdal/\">Heimdal " "<application>Kerberos</application> home page</link>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25456 +#: book.translate.xml:25463 msgid "OpenSSL" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25464 +#: book.translate.xml:25471 msgid "<primary>security</primary> <secondary>OpenSSL</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25469 +#: book.translate.xml:25476 msgid "" "<application>OpenSSL</application> is an open source implementation of the " "<acronym>SSL</acronym> and <acronym>TLS</acronym> protocols. It provides an " @@ -37601,7 +37684,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25476 +#: book.translate.xml:25483 msgid "" "The version of <application>OpenSSL</application> included in FreeBSD " "supports the Secure Sockets Layer v2/v3 (SSLv2/SSLv3) and Transport Layer " @@ -37610,7 +37693,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25482 +#: book.translate.xml:25489 msgid "" "<application>OpenSSL</application> is often used to encrypt authentication " "of mail clients and to secure web based transactions such as credit card " @@ -37620,7 +37703,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25490 +#: book.translate.xml:25497 msgid "" "FreeBSD provides two versions of <application>OpenSSL</application>: one in " "the base system and one in the Ports Collection. Users can choose which " @@ -37628,7 +37711,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25497 +#: book.translate.xml:25504 msgid "" "WITH_OPENSSL_PORT: when set, the port will use <application>OpenSSL</" "application> from the <package>security/openssl</package> port, even if the " @@ -37636,14 +37719,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25504 +#: book.translate.xml:25511 msgid "" "WITH_OPENSSL_BASE: when set, the port will compile against " "<application>OpenSSL</application> provided by the base system." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25510 +#: book.translate.xml:25517 msgid "" "Another common use of <application>OpenSSL</application> is to provide " "certificates for use with software applications. Certificates can be used to " @@ -37658,7 +37741,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25523 +#: book.translate.xml:25530 msgid "" "This section demonstrates how to create and use certificates on a FreeBSD " "system. Refer to <xref linkend=\"ldap-config\"/> for an example of how to " @@ -37666,7 +37749,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25528 +#: book.translate.xml:25535 msgid "" "For more information about <acronym>SSL</acronym>, read the free <link xlink:" "href=\"https://www.feistyduck.com/books/openssl-cookbook/\">OpenSSL " @@ -37674,18 +37757,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25533 +#: book.translate.xml:25540 msgid "Generating Certificates" msgstr "產生憑証" #. (itstool) path: sect2/indexterm -#: book.translate.xml:25535 +#: book.translate.xml:25542 msgid "" "<primary>OpenSSL</primary> <secondary>certificate generation</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25540 +#: book.translate.xml:25547 msgid "" "To generate a certificate that will be signed by an external <acronym>CA</" "acronym>, issue the following command and input the information requested at " @@ -37698,7 +37781,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25550 +#: book.translate.xml:25557 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -new -nodes -out req.pem -keyout cert.key -sha256 -newkey rsa:2048</userinput>\n" @@ -37729,7 +37812,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25576 +#: book.translate.xml:25583 msgid "" "Other options, such as the expire time and alternate encryption algorithms, " "are available when creating a certificate. A complete list of options is " @@ -37738,7 +37821,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25581 +#: book.translate.xml:25588 msgid "" "This command will create two files in the current directory. The certificate " "request, <filename>req.pem</filename>, can be sent to a <acronym>CA</" @@ -37750,7 +37833,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25592 +#: book.translate.xml:25599 msgid "" "Alternately, if a signature from a <acronym>CA</acronym> is not required, a " "self-signed certificate can be created. First, generate the <acronym>RSA</" @@ -37758,7 +37841,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25596 +#: book.translate.xml:25603 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl genrsa -rand -genkey -out cert.key 2048</userinput>\n" @@ -37770,14 +37853,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25603 +#: book.translate.xml:25610 msgid "" "Use this key to create a self-signed certificate. Follow the usual prompts " "for creating a certificate:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25606 +#: book.translate.xml:25613 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -new -x509 -days 365 -key cert.key -out cert.crt -sha256</userinput>\n" @@ -37798,7 +37881,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25622 +#: book.translate.xml:25629 msgid "" "This will create two new files in the current directory: a private key file " "<filename>cert.key</filename>, and the certificate itself, <filename>cert." @@ -37809,12 +37892,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:25633 +#: book.translate.xml:25640 msgid "Using Certificates" msgstr "使用憑證" #. (itstool) path: sect2/para -#: book.translate.xml:25635 +#: book.translate.xml:25642 msgid "" "One use for a certificate is to encrypt connections to the " "<application>Sendmail</application> mail server in order to prevent the use " @@ -37822,7 +37905,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:25640 +#: book.translate.xml:25647 msgid "" "Some mail clients will display an error if the user has not installed a " "local copy of the certificate. Refer to the documentation included with the " @@ -37830,7 +37913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25646 +#: book.translate.xml:25653 msgid "" "In FreeBSD 10.0-RELEASE and above, it is possible to create a self-signed " "certificate for <application>Sendmail</application> automatically. To enable " @@ -37838,7 +37921,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25652 +#: book.translate.xml:25659 #, no-wrap msgid "" "sendmail_enable=\"YES\"\n" @@ -37847,7 +37930,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25656 +#: book.translate.xml:25663 msgid "" "This will automatically create a self-signed certificate, <filename>/etc/" "mail/certs/host.cert</filename>, a signing key, <filename>/etc/mail/certs/" @@ -37858,13 +37941,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25665 +#: book.translate.xml:25672 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sendmail restart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25667 +#: book.translate.xml:25674 msgid "" "If all went well, there will be no error messages in <filename>/var/log/" "maillog</filename>. For a simple test, connect to the mail server's " @@ -37872,7 +37955,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25672 +#: book.translate.xml:25679 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>telnet <replaceable>example.com</replaceable> 25</userinput>\n" @@ -37898,19 +37981,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25693 +#: book.translate.xml:25700 msgid "" "If the <literal>STARTTLS</literal> line appears in the output, everything is " "working correctly." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25700 +#: book.translate.xml:25707 msgid "<acronym>VPN</acronym> over <acronym>IPsec</acronym>" msgstr "" #. (itstool) path: affiliation/address -#: book.translate.xml:25710 +#: book.translate.xml:25717 #, no-wrap msgid "" "\n" @@ -37919,7 +38002,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25704 +#: book.translate.xml:25711 msgid "" "<personname> <firstname>Nik</firstname> <surname>Clayton</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -37927,7 +38010,7 @@ msgid "" msgstr "" #. (itstool) path: affiliation/address -#: book.translate.xml:25725 +#: book.translate.xml:25732 #, no-wrap msgid "" "\n" @@ -37936,7 +38019,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25719 +#: book.translate.xml:25726 msgid "" "<personname> <firstname>Hiten M.</firstname> <surname>Pandya</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -37944,12 +38027,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25734 +#: book.translate.xml:25741 msgid "<primary><acronym>IPsec</acronym></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25738 +#: book.translate.xml:25745 msgid "" "Internet Protocol Security (<acronym>IPsec</acronym>) is a set of protocols " "which sit on top of the Internet Protocol (<acronym>IP</acronym>) layer. It " @@ -37962,22 +38045,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25748 +#: book.translate.xml:25755 msgid "<primary><acronym>IPsec</acronym></primary> <secondary>ESP</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25753 +#: book.translate.xml:25760 msgid "<primary><acronym>IPsec</acronym></primary> <secondary>AH</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25758 +#: book.translate.xml:25765 msgid "<acronym>IPsec</acronym> is comprised of the following sub-protocols:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25763 +#: book.translate.xml:25770 msgid "" "<emphasis>Encapsulated Security Payload (<acronym>ESP</acronym>)</emphasis>: " "this protocol protects the <acronym>IP</acronym> packet data from third " @@ -37986,7 +38069,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25772 +#: book.translate.xml:25779 msgid "" "<emphasis>Authentication Header (<acronym>AH</acronym>)</emphasis>: this " "protocol protects the <acronym>IP</acronym> packet header from third party " @@ -37997,7 +38080,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25784 +#: book.translate.xml:25791 msgid "" "<emphasis>IP Payload Compression Protocol (<acronym>IPComp</acronym></" "emphasis>): this protocol tries to increase communication performance by " @@ -38006,24 +38089,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25792 +#: book.translate.xml:25799 msgid "" "These protocols can either be used together or separately, depending on the " "environment." msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25795 +#: book.translate.xml:25802 msgid "<primary><acronym>VPN</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25799 +#: book.translate.xml:25806 msgid "<primary>virtual private network</primary> <see>VPN</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25804 +#: book.translate.xml:25811 msgid "" "<acronym>IPsec</acronym> supports two modes of operation. The first mode, " "<firstterm>Transport Mode</firstterm>, protects communications between two " @@ -38035,7 +38118,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25813 +#: book.translate.xml:25820 msgid "" "To add <acronym>IPsec</acronym> support to the kernel, add the following " "options to the custom kernel configuration file and rebuild the kernel using " @@ -38043,12 +38126,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25817 +#: book.translate.xml:25824 msgid "<primary>kernel options</primary> <secondary>IPSEC</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPSEC</secondary>" #. (itstool) path: sect1/screen -#: book.translate.xml:25822 +#: book.translate.xml:25829 #, no-wrap msgid "" "options IPSEC #IP security\n" @@ -38056,25 +38139,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:25825 +#: book.translate.xml:25832 msgid "<primary>kernel options</primary> <secondary>IPSEC_DEBUG</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPSEC_DEBUG</secondary>" #. (itstool) path: sect1/para -#: book.translate.xml:25830 +#: book.translate.xml:25837 msgid "" "If <acronym>IPsec</acronym> debugging support is desired, the following " "kernel option should also be added:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:25833 +#: book.translate.xml:25840 #, no-wrap msgid "options IPSEC_DEBUG #debug for IP security" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:25835 +#: book.translate.xml:25842 msgid "" "This rest of this chapter demonstrates the process of setting up an " "<acronym>IPsec</acronym> <acronym>VPN</acronym> between a home network and a " @@ -38082,14 +38165,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25842 +#: book.translate.xml:25849 msgid "" "Both sites are connected to the Internet through a gateway that is running " "FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25847 +#: book.translate.xml:25854 msgid "" "The gateway on each network has at least one external <acronym>IP</acronym> " "address. In this example, the corporate <acronym>LAN</acronym>'s external " @@ -38100,7 +38183,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:25856 +#: book.translate.xml:25863 msgid "" "The internal addresses of the two networks can be either public or private " "<acronym>IP</acronym> addresses. However, the address space must not " @@ -38113,12 +38196,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:25869 +#: book.translate.xml:25876 msgid "Configuring a <acronym>VPN</acronym> on FreeBSD" msgstr "在 FreeBSD 上設定 <acronym>VPN</acronym>" #. (itstool) path: affiliation/address -#: book.translate.xml:25878 +#: book.translate.xml:25885 #, no-wrap msgid "" "\n" @@ -38127,7 +38210,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:25872 +#: book.translate.xml:25879 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -38135,7 +38218,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25887 +#: book.translate.xml:25894 msgid "" "To begin, <package>security/ipsec-tools</package> must be installed from the " "Ports Collection. This software provides a number of applications which " @@ -38143,7 +38226,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25891 +#: book.translate.xml:25898 msgid "" "The next requirement is to create two <citerefentry><refentrytitle>gif</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> pseudo-devices which " @@ -38155,7 +38238,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25899 +#: book.translate.xml:25906 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig gif0 create</userinput>\n" @@ -38164,14 +38247,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25903 +#: book.translate.xml:25910 msgid "" "Verify the setup on each gateway, using <command>ifconfig</command>. Here is " "the output from Gateway 1:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25907 +#: book.translate.xml:25914 #, no-wrap msgid "" "gif0: flags=8051 mtu 1280\n" @@ -38181,12 +38264,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25912 +#: book.translate.xml:25919 msgid "Here is the output from Gateway 2:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25914 +#: book.translate.xml:25921 #, no-wrap msgid "" "gif0: flags=8051 mtu 1280\n" @@ -38196,7 +38279,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25919 +#: book.translate.xml:25926 msgid "" "Once complete, both internal <acronym>IP</acronym> addresses should be " "reachable using <citerefentry><refentrytitle>ping</" @@ -38204,7 +38287,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25922 +#: book.translate.xml:25929 #, no-wrap msgid "" "priv-net# ping 10.0.0.5\n" @@ -38230,7 +38313,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25943 +#: book.translate.xml:25950 msgid "" "As expected, both sides have the ability to send and receive <acronym>ICMP</" "acronym> packets from the privately configured addresses. Next, both " @@ -38239,7 +38322,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:25950 +#: book.translate.xml:25957 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>corp-net# route add <replaceable>10.0.0.0 10.0.0.5 255.255.255.0</replaceable></userinput>\n" @@ -38249,7 +38332,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25955 +#: book.translate.xml:25962 msgid "" "At this point, internal machines should be reachable from each gateway as " "well as from machines behind the gateways. Again, use " @@ -38258,7 +38341,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25959 +#: book.translate.xml:25966 #, no-wrap msgid "" "corp-net# ping 10.0.0.8\n" @@ -38285,7 +38368,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:25981 +#: book.translate.xml:25988 msgid "" "Setting up the tunnels is the easy part. Configuring a secure link is a more " "in depth process. The following configuration uses pre-shared (<acronym>PSK</" @@ -38295,7 +38378,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:25989 +#: book.translate.xml:25996 #, no-wrap msgid "" "path pre_shared_key \"/usr/local/etc/racoon/psk.txt\"; #location of pre-shared key file\n" @@ -38358,14 +38441,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26047 +#: book.translate.xml:26054 msgid "" "For descriptions of each available option, refer to the manual page for " "<filename>racoon.conf</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26050 +#: book.translate.xml:26057 msgid "" "The Security Policy Database (<acronym>SPD</acronym>) needs to be configured " "so that FreeBSD and <application>racoon</application> are able to encrypt " @@ -38373,7 +38456,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26055 +#: book.translate.xml:26062 msgid "" "This can be achieved with a shell script, similar to the following, on the " "corporate gateway. This file will be used during system initialization and " @@ -38381,7 +38464,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26060 +#: book.translate.xml:26067 #, no-wrap msgid "" "flush;\n" @@ -38392,25 +38475,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26066 +#: book.translate.xml:26073 msgid "" "Once in place, <application>racoon</application> may be started on both " "gateways using the following command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26069 +#: book.translate.xml:26076 #, no-wrap msgid "<prompt>#</prompt> <userinput>/usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf -l /var/log/racoon.log</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26071 +#: book.translate.xml:26078 msgid "The output should be similar to the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26073 +#: book.translate.xml:26080 #, no-wrap msgid "" "corp-net# /usr/local/sbin/racoon -F -f /usr/local/etc/racoon/racoon.conf\n" @@ -38428,7 +38511,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26086 +#: book.translate.xml:26093 msgid "" "To ensure the tunnel is working properly, switch to another console and use " "<citerefentry><refentrytitle>tcpdump</refentrytitle><manvolnum>1</" @@ -38438,20 +38521,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26092 +#: book.translate.xml:26099 #, no-wrap msgid "<prompt>#</prompt> <userinput>tcpdump -i em0 host <replaceable>172.16.5.4 and dst 192.168.1.12</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26094 +#: book.translate.xml:26101 msgid "" "Data similar to the following should appear on the console. If not, there is " "an issue and debugging the returned data will be required." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26098 +#: book.translate.xml:26105 #, no-wrap msgid "" "01:47:32.021683 IP corporatenetwork.com > 192.168.1.12.privatenetwork.com: ESP(spi=0x02acbf9f,seq=0xa)\n" @@ -38460,7 +38543,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26102 +#: book.translate.xml:26109 msgid "" "At this point, both networks should be available and seem to be part of the " "same network. Most likely both networks are protected by a firewall. To " @@ -38471,7 +38554,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26109 +#: book.translate.xml:26116 #, no-wrap msgid "" "ipfw add 00201 allow log esp from any to any\n" @@ -38481,14 +38564,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:26115 +#: book.translate.xml:26122 msgid "" "The rule numbers may need to be altered depending on the current host " "configuration." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26119 +#: book.translate.xml:26126 msgid "" "For users of <citerefentry><refentrytitle>pf</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> or <citerefentry><refentrytitle>ipf</" @@ -38497,7 +38580,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26122 +#: book.translate.xml:26129 #, no-wrap msgid "" "pass in quick proto esp from any to any\n" @@ -38513,7 +38596,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26133 +#: book.translate.xml:26140 msgid "" "Finally, to allow the machine to start support for the <acronym>VPN</" "acronym> during system initialization, add the following lines to <filename>/" @@ -38521,7 +38604,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26137 +#: book.translate.xml:26144 #, no-wrap msgid "" "ipsec_enable=\"YES\"\n" @@ -38531,29 +38614,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:26146 +#: book.translate.xml:26153 msgid "OpenSSH" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:26149 +#: book.translate.xml:26156 msgid "" "<personname><firstname>Chern</firstname><surname>Lee</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26155 +#: book.translate.xml:26162 msgid "<primary>OpenSSH</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26156 +#: book.translate.xml:26163 msgid "<primary>security</primary> <secondary>OpenSSH</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26161 +#: book.translate.xml:26168 msgid "" "<application>OpenSSH</application> is a set of network connectivity tools " "used to provide secure access to remote machines. Additionally, <acronym>TCP/" @@ -38562,17 +38645,24 @@ msgid "" "encrypts all traffic to effectively eliminate eavesdropping, connection " "hijacking, and other network-level attacks." msgstr "" +"<application>OpenSSH</application> 是一套網路連線工具,可安全的存取遠端的主" +"機,此外,透過 <acronym>SSH</acronym> 連線可以建立 <acronym>TCP/IP</acronym> " +"連線通道或安全的轉送 <acronym>TCP/IP</acronym> 的封包。<application>OpenSSH</" +"application> 會對所有傳輸的資料做加密,可有效的避免竊聽 (Eavesdropping)、或連" +"線劫持 (Connection hijacking) 與其他網路層的攻擊。" #. (itstool) path: sect1/para -#: book.translate.xml:26170 +#: book.translate.xml:26177 msgid "" "<application>OpenSSH</application> is maintained by the OpenBSD project and " "is installed by default in FreeBSD. It is compatible with both <acronym>SSH</" "acronym> version 1 and 2 protocols." msgstr "" +"<application>OpenSSH</application> 由 OpenBSD 專案所維護且在 FreeBSD 預設會安" +"裝,它可同時相容 <acronym>SSH</acronym> 版本 1 與 2 通訊協定。" #. (itstool) path: sect1/para -#: book.translate.xml:26175 +#: book.translate.xml:26182 msgid "" "When data is sent over the network in an unencrypted form, network sniffers " "anywhere in between the client and server can steal user/password " @@ -38582,9 +38672,14 @@ msgid "" "application> is available from <link xlink:href=\"http://www.openssh.com/" "\">http://www.openssh.com/</link>." msgstr "" +"當以未加密的方式在網路上傳送資料時,任何在客戶端與伺服器之間的網路竊聽程式 " +"(Network sniffer) 皆可竊取使用者/密碼資訊或者在連線階段傳送的資料," +"<application>OpenSSH</application> 提供了數種認証與加密方式來避免這種事情發" +"生。更多有關 <application>OpenSSH</application> 的資訊可於 <link xlink:href=" +"\"http://www.openssh.com/\">http://www.openssh.com/</link> 取得。" #. (itstool) path: sect1/para -#: book.translate.xml:26183 +#: book.translate.xml:26190 msgid "" "This section provides an overview of the built-in client utilities to " "securely access other systems and securely transfer files from a FreeBSD " @@ -38592,19 +38687,22 @@ msgid "" "on a FreeBSD system. More information is available in the man pages " "mentioned in this chapter." msgstr "" +"本節會簡單介紹如何使用內建的客戶端工具安全的存取其他系統及安全的傳輸檔案到 " +"FreeBSD 系統,然後會說明如何設定在 FreeBSD 系統上的 <acronym>SSH</acronym> 伺" +"服器。更多的資訊可於本章節所提及的操作手冊 (Man page) 取得。" #. (itstool) path: sect2/title -#: book.translate.xml:26191 +#: book.translate.xml:26198 msgid "Using the SSH Client Utilities" msgstr "使用 SSH 客戶端工具" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26193 +#: book.translate.xml:26200 msgid "<primary>OpenSSH</primary> <secondary>client</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26198 +#: book.translate.xml:26205 msgid "" "To log into a <acronym>SSH</acronym> server, use <command>ssh</command> and " "specify a username that exists on that server and the <acronym>IP</acronym> " @@ -38612,9 +38710,12 @@ msgid "" "has been made to the specified server, the user will be prompted to first " "verify the server's fingerprint:" msgstr "" +"要登入一台 <acronym>SSH</acronym> 伺服器,可使用 <command>ssh</command> 然後" +"指定在伺服器上存在的使用者名稱與 <acronym>IP</acronym> 位址或伺服器的主機名" +"稱。若這是第一次連線到指定的伺服器,會提示該使用者伺服器的指紋做第一次檢驗:" #. (itstool) path: sect2/screen -#: book.translate.xml:26205 +#: book.translate.xml:26212 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ssh <replaceable>user@example.com</replaceable></userinput>\n" @@ -38626,7 +38727,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26212 +#: book.translate.xml:26219 msgid "" "<acronym>SSH</acronym> utilizes a key fingerprint system to verify the " "authenticity of the server when the client connects. When the user accepts " @@ -38638,9 +38739,15 @@ msgid "" "user should first verify why the key has changed before continuing with the " "connection." msgstr "" +"<acronym>SSH</acronym> 會在客戶端連線時利用金鑰指紋 (Key fingerprint) 系統來" +"驗證伺服器的真偽,當使用者在第一次連線時輸入 <literal>yes</literal> 接受了這" +"個金鑰指紋,便會將該金鑰的複本儲存到使用者家目錄的 <filename>.ssh/" +"known_hosts</filename>,未來嘗試登入時便會以這個存好的金鑰來驗證,若伺服器的" +"金鑰與儲存的金鑰不同將會顯示警告訊息。若出現這個警告時,使用者應在繼續連線之" +"前檢查金鑰變動的原因。" #. (itstool) path: sect2/para -#: book.translate.xml:26224 +#: book.translate.xml:26231 msgid "" "By default, recent versions of <application>OpenSSH</application> only " "accept <acronym>SSH</acronym>v2 connections. By default, the client will use " @@ -38650,21 +38757,27 @@ msgid "" "options are described in <citerefentry><refentrytitle>ssh</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>." msgstr "" +"最近版本的 <application>OpenSSH</application> 預設只會接受 <acronym>SSH</" +"acronym>v2 的連線。客戶端預設會盡可能使用版本 2 的通訊協定,若伺服器不支援版" +"本 2 的通訊協定便會向下相容版本 1 的協定。要強制 <command>ssh</command> 只能" +"使用指定的通訊協定,可使用 <option>-1</option> 或 <option>-2</option>,其他的" +"選項在 <citerefentry><refentrytitle>ssh</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 中有說明。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26233 +#: book.translate.xml:26240 msgid "<primary>OpenSSH</primary> <secondary>secure copy</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26237 +#: book.translate.xml:26244 msgid "" "<primary><citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</" "manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26241 +#: book.translate.xml:26248 msgid "" "Use <citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> to securely copy a file to or from a remote " @@ -38672,9 +38785,12 @@ msgid "" "system to a file of the same name in the current directory of the local " "system:" msgstr "" +"使用 <citerefentry><refentrytitle>scp</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 可從遠端主機安全的複製一個檔案,以下範例會複製在遠" +"端主機的 <filename>COPYRIGHT</filename> 到本地主機的目前目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:26247 +#: book.translate.xml:26254 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>scp <replaceable>user@example.com:/COPYRIGHT COPYRIGHT</replaceable></userinput>\n" @@ -38685,14 +38801,15 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26253 +#: book.translate.xml:26260 msgid "" "Since the fingerprint was already verified for this host, the server's key " "is automatically checked before prompting for the user's password." msgstr "" +"由於這個主機的指紋已驗證過,在提示用者輸入密碼之前伺服器的金鑰已自動檢查。" #. (itstool) path: sect2/para -#: book.translate.xml:26257 +#: book.translate.xml:26264 msgid "" "The arguments passed to <command>scp</command> are similar to <command>cp</" "command>. The file or files to copy is the first argument and the " @@ -38702,23 +38819,31 @@ msgid "" "recursively that <command>scp</command> uses <option>-r</option>, whereas " "<command>cp</command> uses <option>-R</option>." msgstr "" +"傳給 <command>scp</command> 的參數與傳給 <command>cp</command> 的參數相似。第" +"一個參數是要複製的檔案,第二個參數是目地,由於檔案是透過網路取得,檔案參數需" +"要使用 <option>user@host:<path_to_remote_file></option> 格式。注意,在 " +"<command>scp</command> 要遞迴複製目錄是使用 <option>-r</option>,如同 " +"<command>cp</command> 使用 <option>-R</option>。" #. (itstool) path: sect2/para -#: book.translate.xml:26267 +#: book.translate.xml:26274 msgid "" "To open an interactive session for copying files, use <command>sftp</" "command>. Refer to <citerefentry><refentrytitle>sftp</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> for a list of " "available commands while in an <command>sftp</command> session." msgstr "" +"要開啟可互動的連線來複製檔案可使用 <command>sftp</command>,請參考 " +"<citerefentry><refentrytitle>sftp</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 來取得在 <command>sftp</command> 連線時可用的指令清單。" #. (itstool) path: sect3/title -#: book.translate.xml:26273 +#: book.translate.xml:26280 msgid "Key-based Authentication" msgstr "以金鑰為基礎的認證" #. (itstool) path: sect3/para -#: book.translate.xml:26275 +#: book.translate.xml:26282 msgid "" "Instead of using passwords, a client can be configured to connect to the " "remote machine using keys. To generate <acronym>RSA</acronym> authentication " @@ -38726,9 +38851,13 @@ msgid "" "key pair, specify the type of key and follow the prompts. It is recommended " "to protect the keys with a memorable, but hard to guess passphrase." msgstr "" +"除了使用密碼之外,客戶端可以設定成使用金鑰來連線到遠端的主機。要產生 " +"<acronym>RSA</acronym> 認証金鑰可使用 <command>ssh-keygen</command>。要產生成" +"對的公鑰與私鑰,可指定金鑰的類型並依提示操作。建議使用容易記住但較難猜出的密" +"碼來保護這個金鑰。" #. (itstool) path: sect3/screen -#: book.translate.xml:26284 +#: book.translate.xml:26291 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh-keygen -t rsa</userinput>\n" @@ -38755,17 +38884,17 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:26308 +#: book.translate.xml:26315 msgid "Type a passphrase here. It can contain spaces and symbols." -msgstr "" +msgstr "在此輸入密碼,密碼不可含有空白或符號。" #. (itstool) path: callout/para -#: book.translate.xml:26313 +#: book.translate.xml:26320 msgid "Retype the passphrase to verify it." -msgstr "" +msgstr "再輸入一次密碼驗證。" #. (itstool) path: sect3/para -#: book.translate.xml:26318 +#: book.translate.xml:26325 msgid "" "The private key is stored in <filename>~/.ssh/id_rsa</filename> and the " "public key is stored in <filename>~/.ssh/id_rsa.pub</filename>. The " @@ -38773,9 +38902,12 @@ msgid "" "authorized_keys</filename> on the remote machine for key-based " "authentication to work." msgstr "" +"私鑰會儲存於 <filename>~/.ssh/id_rsa</filename> 而公鑰會儲存於 <filename>~/." +"ssh/id_rsa.pub</filename>。<emphasis>公鑰</emphasis>必須複製到遠端主機的" +"<filename>~/.ssh/authorized_keys</filename> 來讓以金鑰為基礎的認証可以運作。" #. (itstool) path: warning/para -#: book.translate.xml:26329 +#: book.translate.xml:26336 msgid "" "Many users believe that keys are secure by design and will use a key without " "a passphrase. This is <emphasis>dangerous</emphasis> behavior. An " @@ -38787,17 +38919,27 @@ msgid "" "literal> in front of the <literal>ssh-rsa</literal> prefix will only allow " "that specific user to log in from that <acronym>IP</acronym> address." msgstr "" +"許多使用者認為金鑰的設計是安全的並在產生金鑰時未使用密碼,這樣的行為其實很" +"<emphasis>危險</emphasis>。管理者可以手動查看私鑰來檢查金鑰對是否受密碼保護," +"如果私鑰檔案中包含 <literal>ENCRYPTED</literal> 字詞,則代表金鑰的擁有者有使" +"用密碼。此外,要更進一步保護最終使用者的安全,可在公鑰檔案中放入 " +"<literal>from</literal>,例如,在 <literal>ssh-rsa</literal> 前加上 " +"<literal>from=\"192.168.10.5\"</literal> 將只允許指定的使用者由該 IP 位址登" +"入。" #. (itstool) path: sect3/para -#: book.translate.xml:26345 +#: book.translate.xml:26352 msgid "" "The options and files vary with different versions of <application>OpenSSH</" "application>. To avoid problems, consult <citerefentry><refentrytitle>ssh-" "keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry>." msgstr "" +"不同版本 <application>OpenSSH</application> 的選項與檔案會不同,要避免發生問" +"題請參考 <citerefentry><refentrytitle>ssh-keygen</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: sect3/para -#: book.translate.xml:26349 +#: book.translate.xml:26356 msgid "" "If a passphrase is used, the user is prompted for the passphrase each time a " "connection is made to the server. To load <acronym>SSH</acronym> keys into " @@ -38806,17 +38948,24 @@ msgid "" "manvolnum></citerefentry> and <citerefentry><refentrytitle>ssh-add</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>." msgstr "" +"若使用了密碼,在每次連線到伺服器時都會提示使用者輸入密碼。要將 <acronym>SSH</" +"acronym> 金鑰載入到記憶體並讓每次連線時不必再輸入密碼,可使用 " +"<citerefentry><refentrytitle>ssh-agent</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 與 <citerefentry><refentrytitle>ssh-add</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>。" #. (itstool) path: sect3/para -#: book.translate.xml:26355 +#: book.translate.xml:26362 msgid "" "Authentication is handled by <command>ssh-agent</command>, using the private " "keys that are loaded into it. <command>ssh-agent</command> can be used to " "launch another application like a shell or a window manager." msgstr "" +"認証可用 <command>ssh-agent</command> 來管理,只要將私鑰載入,<command>ssh-" +"agent</command> 可用在執行其他應用程式,如 Shell 或視窗管理程式。" #. (itstool) path: sect3/para -#: book.translate.xml:26361 +#: book.translate.xml:26368 msgid "" "To use <command>ssh-agent</command> in a shell, start it with a shell as an " "argument. Add the identity by running <command>ssh-add</command> and " @@ -38824,9 +38973,13 @@ msgid "" "<command>ssh</command> to any host that has the corresponding public key " "installed. For example:" msgstr "" +"要在 Shell 使用 <command>ssh-agent</command>,使用 Shell 做為參數來啟動 " +"<command>ssh-agent</command>。執行 <command>ssh-add</command> 來加入識別碼," +"然後輸入私鑰的密碼。使用者將可使用 <command>ssh</command> 連線到任何有安裝對" +"應公鑰的主機,例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:26369 +#: book.translate.xml:26376 #, no-wrap msgid "" "<prompt>%</prompt> ssh-agent <replaceable>csh</replaceable>\n" @@ -38837,12 +38990,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:26377 +#: book.translate.xml:26384 msgid "Enter the passphrase for the key." -msgstr "" +msgstr "輸入金鑰的密碼。" #. (itstool) path: sect3/para -#: book.translate.xml:26381 +#: book.translate.xml:26388 msgid "" "To use <command>ssh-agent</command> in <application>Xorg</application>, add " "an entry for it in <filename>~/.xinitrc</filename>. This provides the " @@ -38850,15 +39003,19 @@ msgid "" "<application>Xorg</application>. An example <filename>~/.xinitrc</filename> " "might look like this:" msgstr "" +"要在 <application>Xorg</application> 使用 <command>ssh-agent</command> 可在 " +"<filename>~/.xinitrc</filename> 加入一個設定項目,這可讓 <command>ssh-agent</" +"command> 對所有在 <application>Xorg</application> 中執行的程式提供服務。" +"<filename>~/.xinitrc</filename> 範例如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:26388 +#: book.translate.xml:26395 #, no-wrap msgid "exec ssh-agent <replaceable>startxfce4</replaceable>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26390 +#: book.translate.xml:26397 msgid "" "This launches <command>ssh-agent</command>, which in turn launches " "<application>XFCE</application>, every time <application>Xorg</application> " @@ -38866,33 +39023,41 @@ msgid "" "changes can take effect, run <command>ssh-add</command> to load all of the " "<acronym>SSH</acronym> keys." msgstr "" +"這會在每次啟動 <application>Xorg</application> 時,反過來先執行 <command>ssh-" +"agent</command> 再由執行 <application>XFCE</application>,一但 " +"<application>Xorg</application> 被重新啟動,要讓所有變更生效需執行 " +"<command>ssh-add</command> 來載入所有的 <acronym>SSH</acronym> 金鑰。" #. (itstool) path: sect3/title -#: book.translate.xml:26399 +#: book.translate.xml:26406 msgid "<acronym>SSH</acronym> Tunneling" msgstr "<acronym>SSH</acronym> 通道" #. (itstool) path: sect3/indexterm -#: book.translate.xml:26401 +#: book.translate.xml:26408 msgid "<primary>OpenSSH</primary> <secondary>tunneling</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26406 +#: book.translate.xml:26413 msgid "" "<application>OpenSSH</application> has the ability to create a tunnel to " "encapsulate another protocol in an encrypted session." msgstr "" +"<application>OpenSSH</application> 可以建立一個通道 (Tunnel) 來封裝其他通訊協" +"定到一個加密的連線。" #. (itstool) path: sect3/para -#: book.translate.xml:26410 +#: book.translate.xml:26417 msgid "" "The following command tells <command>ssh</command> to create a tunnel for " "<application>telnet</application>:" msgstr "" +"以下指令會告訴 <command>ssh</command> 建立一個供 <application>telnet</" +"application> 使用的通道:" #. (itstool) path: sect3/screen -#: book.translate.xml:26414 +#: book.translate.xml:26421 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>5023:localhost:23 user@foo.example.com</replaceable></userinput>\n" @@ -38900,63 +39065,67 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:26417 +#: book.translate.xml:26424 msgid "This example uses the following options:" -msgstr "" +msgstr "這個例子使用了以下選項:" #. (itstool) path: varlistentry/term -#: book.translate.xml:26421 +#: book.translate.xml:26428 msgid "<option>-2</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26424 +#: book.translate.xml:26431 msgid "" "Forces <command>ssh</command> to use version 2 to connect to the server." -msgstr "" +msgstr "強制 <command>ssh</command> 使用版本 2 的通訊協定連線到伺服器。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26430 +#: book.translate.xml:26437 msgid "<option>-N</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26433 +#: book.translate.xml:26440 msgid "" "Indicates no command, or tunnel only. If omitted, <command>ssh</command> " "initiates a normal session." msgstr "" +"代表不需下指令、只建立通道。若省略這個選項 <command>ssh</command> 會初始化一" +"個正常的連線。" #. (itstool) path: listitem/para -#: book.translate.xml:26443 +#: book.translate.xml:26450 msgid "Forces <command>ssh</command> to run in the background." -msgstr "" +msgstr "強制 <command>ssh</command> 在背景執行。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26449 +#: book.translate.xml:26456 msgid "<option>-L</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26452 +#: book.translate.xml:26459 msgid "" "Indicates a local tunnel in <replaceable>localport:remotehost:remoteport</" "replaceable> format." msgstr "" +"代表這是一個本地通道,使用 <replaceable>localport:remotehost:remoteport</" +"replaceable> 格式。" #. (itstool) path: varlistentry/term -#: book.translate.xml:26459 +#: book.translate.xml:26466 msgid "<option>user@foo.example.com</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26462 +#: book.translate.xml:26469 msgid "" "The login name to use on the specified remote <acronym>SSH</acronym> server." -msgstr "" +msgstr "在指定的遠端 <acronym>SSH</acronym> 伺服器要使用的登入名稱。" #. (itstool) path: sect3/para -#: book.translate.xml:26468 +#: book.translate.xml:26475 msgid "" "An <acronym>SSH</acronym> tunnel works by creating a listen socket on " "<systemitem>localhost</systemitem> on the specified <literal>localport</" @@ -38969,22 +39138,32 @@ msgid "" "<application>telnet</application> session through an <acronym>SSH</acronym> " "tunnel." msgstr "" +"SSH 通道會建立一個傾聽 <systemitem>localhost</systemitem> 指定 " +"<literal>localport</literal> 的 Socket ,然後會透過 <acronym>SSH</acronym> " +"連線轉送任何在 <literal>localport</literal> 接收的連線。以這個例子來說在客戶" +"端的 Port <literal>5023</literal> 會被轉送到遠端主機的 Port <literal>23</" +"literal>,由於 Port 23 是由 <application>telnet</application> 使用,所以這會" +"透過 <acronym>SSH</acronym> 通道建立一個加密的 <application>telnet</" +"application> 連線。" #. (itstool) path: sect3/para -#: book.translate.xml:26480 +#: book.translate.xml:26487 msgid "" "This method can be used to wrap any number of insecure <acronym>TCP</" "acronym> protocols such as <acronym>SMTP</acronym>, <acronym>POP3</acronym>, " "and <acronym>FTP</acronym>, as seen in the following examples." msgstr "" +"這個方法可用來包裝許多不安全的 <acronym>TCP</acronym> 通訊協定,例如 " +"<acronym>SMTP</acronym>, <acronym>POP3</acronym> 以及 <acronym>FTP</" +"acronym>,如下例所示。" #. (itstool) path: example/title -#: book.translate.xml:26487 +#: book.translate.xml:26494 msgid "Create a Secure Tunnel for <acronym>SMTP</acronym>" msgstr "建立供 <acronym>SMTP</acronym> 使用的安全通道" #. (itstool) path: example/screen -#: book.translate.xml:26490 +#: book.translate.xml:26497 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>5025:localhost:25 user@mailserver.example.com</replaceable></userinput>\n" @@ -38997,21 +39176,24 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26498 +#: book.translate.xml:26505 msgid "" "This can be used in conjunction with <command>ssh-keygen</command> and " "additional user accounts to create a more seamless <acronym>SSH</acronym> " "tunneling environment. Keys can be used in place of typing a password, and " "the tunnels can be run as a separate user." msgstr "" +"這可配合 <command>ssh-keygen</command> 與另一個使用者帳號與來建立一個更無縫" +"的 <acronym>SSH</acronym> 通道環境,可使用金鑰來代替手動輸入密碼,然後該通道" +"便可以另一個使用者執行。" #. (itstool) path: example/title -#: book.translate.xml:26507 +#: book.translate.xml:26514 msgid "Secure Access of a <acronym>POP3</acronym> Server" msgstr "安全存取 <acronym>POP3</acronym> 伺服器" #. (itstool) path: example/para -#: book.translate.xml:26510 +#: book.translate.xml:26517 msgid "" "In this example, there is an <acronym>SSH</acronym> server that accepts " "connections from the outside. On the same network resides a mail server " @@ -39019,9 +39201,13 @@ msgid "" "create an <acronym>SSH</acronym> connection to the <acronym>SSH</acronym> " "server and tunnel through to the mail server:" msgstr "" +"在這個例子中有一個 <acronym>SSH</acronym> 伺服器會接受來自外部的連線,在同個" +"網段下有一個郵件伺服器執行 <acronym>POP3</acronym> 伺服器。要使用較安全的方式" +"檢查有沒有新郵件可建立一個 <acronym>SSH</acronym> 連線到 <acronym>SSH</" +"acronym> 伺服器然後透過通道連線到郵件伺服器:" #. (itstool) path: example/screen -#: book.translate.xml:26518 +#: book.translate.xml:26525 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>2110:mail.example.com:110 user@ssh-server.example.com</replaceable></userinput>\n" @@ -39029,38 +39215,46 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26521 +#: book.translate.xml:26528 msgid "" "Once the tunnel is up and running, point the email client to send " "<acronym>POP3</acronym> requests to <systemitem>localhost</systemitem> on " "port 2110. This connection will be forwarded securely across the tunnel to " "<systemitem>mail.example.com</systemitem>." msgstr "" +"一但通道啟動並執行後,指定郵件客戶端將 <acronym>POP3</acronym> 請求傳送到 " +"<systemitem>localhost</systemitem> 的 Port 2110,這個連線將會被安全的透過通道" +"轉送到 <systemitem>mail.example.com</systemitem>。" #. (itstool) path: example/title -#: book.translate.xml:26529 +#: book.translate.xml:26536 msgid "Bypassing a Firewall" msgstr "跳過防火牆" #. (itstool) path: example/para -#: book.translate.xml:26531 +#: book.translate.xml:26538 msgid "" "Some firewalls filter both incoming and outgoing connections. For example, a " "firewall might limit access from remote machines to ports 22 and 80 to only " "allow <acronym>SSH</acronym> and web surfing. This prevents access to any " "other service which uses a port other than 22 or 80." msgstr "" +"有些防火牆會同時過濾傳入與傳出的連線。例如,防火牆很可能會限制來自遠端主機只" +"能存取 Port 22 與 80 來只讓 <acronym>SSH</acronym> 與網頁瀏覽器連線,這會使" +"得 Port 使用 22 或 80 以外的服務無法存取。" #. (itstool) path: example/para -#: book.translate.xml:26539 +#: book.translate.xml:26546 msgid "" "The solution is to create an <acronym>SSH</acronym> connection to a machine " "outside of the network's firewall and use it to tunnel to the desired " "service:" msgstr "" +"這問題的解決方法是建立一個 <acronym>SSH</acronym> 連線到在防火牆防護之外主機" +"然後使用該連線的通道連到想要使用的服務:" #. (itstool) path: example/screen -#: book.translate.xml:26543 +#: book.translate.xml:26550 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ssh -2 -N -f -L <replaceable>8888:music.example.com:8000 user@unfirewalled-system.example.org</replaceable></userinput>\n" @@ -39068,105 +39262,124 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:26546 +#: book.translate.xml:26553 msgid "" "In this example, a streaming Ogg Vorbis client can now be pointed to " "<systemitem>localhost</systemitem> port 8888, which will be forwarded over " "to <systemitem>music.example.com</systemitem> on port 8000, successfully " "bypassing the firewall." msgstr "" +"在這個例子中,串流 Ogg Vorbis 客戶端現在可以指向 <systemitem>localhost</" +"systemitem> Port 8888,連線將會被轉送到 <systemitem>music.example.com</" +"systemitem> 於 Port 8000,成功的跳過防火牆。" #. (itstool) path: sect2/title -#: book.translate.xml:26556 +#: book.translate.xml:26563 msgid "Enabling the SSH Server" msgstr "開啟 SSH 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:26558 +#: book.translate.xml:26565 msgid "<primary>OpenSSH</primary> <secondary>enabling</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26563 +#: book.translate.xml:26570 msgid "" "In addition to providing built-in <acronym>SSH</acronym> client utilities, a " "FreeBSD system can be configured as an <acronym>SSH</acronym> server, " "accepting connections from other <acronym>SSH</acronym> clients." msgstr "" +"除了提供內建的 <acronym>SSH</acronym> 客戶端工具外,還可以設定 FreeBSD 系統為" +"一個 <acronym>SSH</acronym> 伺服器,以接受來自其他 <acronym>SSH</acronym> 客" +"戶端的連線。" #. (itstool) path: sect2/para -#: book.translate.xml:26568 +#: book.translate.xml:26575 msgid "" "To see if <application>sshd</application> is operating, use the " "<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> command:" msgstr "" +"要查看 <application>sshd</application> 是否正在運作,可使用 " +"<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:26571 +#: book.translate.xml:26578 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd status</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26573 +#: book.translate.xml:26580 msgid "" "If the service is not running, add the following line to <filename>/etc/rc." "conf</filename>." -msgstr "" +msgstr "若服務未執行,請加入下行到 <filename>/etc/rc.conf</filename>。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26576 +#: book.translate.xml:26583 #, no-wrap msgid "sshd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26578 +#: book.translate.xml:26585 msgid "" "This will start <application>sshd</application>, the daemon program for " "<application>OpenSSH</application>, the next time the system boots. To start " "it now:" msgstr "" +"這會讓下次系統開機時啟動 <application>OpenSSH</application> 的 Daemon 程式 " +"<application>sshd</application>。若要立即啟動:" #. (itstool) path: sect2/screen -#: book.translate.xml:26582 +#: book.translate.xml:26589 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26584 +#: book.translate.xml:26591 msgid "" "The first time <application>sshd</application> starts on a FreeBSD system, " "the system's host keys will be automatically created and the fingerprint " "will be displayed on the console. Provide users with the fingerprint so that " "they can verify it the first time they connect to the server." msgstr "" +"在 FreeBSD 系統第一次啟動 <application>sshd</application> 時便會自動產生系統" +"的主機金鑰且會顯示指紋在 Console 上,這個指紋可供使用者在第一次連線到伺服器" +"時驗證用。" #. (itstool) path: sect2/para -#: book.translate.xml:26590 +#: book.translate.xml:26597 msgid "" "Refer to <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for the list of available options when starting " "<application>sshd</application> and a more complete discussion about " "authentication, the login process, and the various configuration files." msgstr "" +"請參考 <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 可取得在啟動 <application>sshd</application> 時可用" +"選項的清單以及更多完整有關認証、登入程序與各種設定檔的資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:26595 +#: book.translate.xml:26602 msgid "" "At this point, the <application>sshd</application> should be available to " "all users with a username and password on the system." msgstr "" +"現在,<application>sshd</application> 應可供所有在系統上有使用者名稱及密碼的" +"使用者使用。" #. (itstool) path: sect2/title -#: book.translate.xml:26601 +#: book.translate.xml:26608 msgid "SSH Server Security" msgstr "SSH 伺服器安全性" #. (itstool) path: sect2/para -#: book.translate.xml:26603 +#: book.translate.xml:26610 msgid "" "While <application>sshd</application> is the most widely used remote " "administration facility for FreeBSD, brute force and drive by attacks are " @@ -39174,9 +39387,12 @@ msgid "" "parameters are available to prevent the success of these attacks and will be " "described in this section." msgstr "" +"在 FreeBSD 廣泛使用 <application>sshd</application> 做為遠端管理基礎設施的同" +"時,所有暴露在公有網路上的系統也會時常受到暴力攻擊 (Brute force attack) 與路" +"過攻擊 (Drive by attack)。在本節會介紹一些可用來避免這些攻擊的參數。" #. (itstool) path: sect2/para -#: book.translate.xml:26610 +#: book.translate.xml:26617 msgid "" "It is a good idea to limit which users can log into the <acronym>SSH</" "acronym> server and from where using the <literal>AllowUsers</literal> " @@ -39185,52 +39401,63 @@ msgid "" "to log in from <systemitem class=\"ipaddress\">192.168.1.32</systemitem>, " "add this line to <filename>/etc/ssh/sshd_config</filename>:" msgstr "" +"使用在 <application>OpenSSH</application> 伺服器設定檔的 " +"<literal>AllowUsers</literal> 關鍵字限制可以登入到 <acronym>SSH</acronym> 伺" +"服器的使用者及來源是一個不錯的方式。例如要只允許來自 <systemitem class=" +"\"ipaddress\">192.168.1.32</systemitem> 的 <systemitem class=\"username" +"\">root</systemitem> 登入,可加入下行到 <filename>/etc/ssh/sshd_config</" +"filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26618 +#: book.translate.xml:26625 #, no-wrap msgid "AllowUsers root@192.168.1.32" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26620 +#: book.translate.xml:26627 msgid "" "To allow <systemitem class=\"username\">admin</systemitem> to log in from " "anywhere, list that user without specifying an <acronym>IP</acronym> address:" msgstr "" +"要允許來自任何地方的 <systemitem class=\"username\">admin</systemitem> 登入," +"可只列出使用者名稱,不指定 <acronym>IP</acronym> 位址:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26624 +#: book.translate.xml:26631 #, no-wrap msgid "AllowUsers admin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26626 +#: book.translate.xml:26633 msgid "Multiple users should be listed on the same line, like so:" -msgstr "" +msgstr "有多位使用者也應列在同一行,例如:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26629 +#: book.translate.xml:26636 #, no-wrap msgid "AllowUsers root@192.168.1.32 admin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26631 +#: book.translate.xml:26638 msgid "" "After making changes to <filename>/etc/ssh/sshd_config</filename>, tell " "<application>sshd</application> to reload its configuration file by running:" msgstr "" +"在對 <filename>/etc/ssh/sshd_config</filename> 做完變更後,執行以下指令告訴 " +"<application>sshd</application> 重新載入設定檔:\n" +" " #. (itstool) path: sect2/screen -#: book.translate.xml:26636 +#: book.translate.xml:26643 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sshd reload</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:26639 +#: book.translate.xml:26646 msgid "" "When this keyword is used, it is important to list each user that needs to " "log into this machine. Any user that is not specified in that line will be " @@ -39242,9 +39469,15 @@ msgid "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> to verify the spelling " "and use of the available keywords." msgstr "" +"在使用了這個關鍵字時,列出每一位需要登入此主機的使用者很重要,任何未被在該行" +"指定的使用者將無法登入。同時,在 <application>OpenSSH</application> 伺服器設" +"定檔使用的關鍵字是區分大小寫的,若關鍵字未正確的拼寫 (含其大小寫),則將會被忽" +"略,永遠要記得測試對這個檔案所做的更改來確保伺服器有如預期的方式運作。請參考 " +"<citerefentry><refentrytitle>sshd_config</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> 來檢查拼寫以及可用的關鍵字。" #. (itstool) path: sect2/para -#: book.translate.xml:26651 +#: book.translate.xml:26658 msgid "" "In addition, users may be forced to use two factor authentication via the " "use of a public and private key. When required, the user may generate a key " @@ -39255,15 +39488,21 @@ msgid "" "section. To force the users to use keys only, the following option may be " "configured:" msgstr "" +"此外,使用者可能被強制要透過公鑰與私鑰使用雙重認證 (Two factor " +"authentication)。當需要時,使用者可以透過使用 " +"<citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</" +"manvolnum></citerefentry> 產生一堆金鑰然後將公鑰傳送給管理者,這個金鑰檔會如" +"以上在客戶端章節所述的被放在 <filename>authorized_keys</filename>。要強制使用" +"者只能使用這個金鑰,可能需要設定以下選項:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26660 +#: book.translate.xml:26667 #, no-wrap msgid "AuthenticationMethods publickey" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:26663 +#: book.translate.xml:26670 msgid "" "Do not confuse <filename>/etc/ssh/sshd_config</filename> with <filename>/etc/" "ssh/ssh_config</filename> (note the extra <literal>d</literal> in the first " @@ -39272,27 +39511,32 @@ msgid "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> for a listing of the " "available client settings." msgstr "" +"請不要將 <filename>/etc/ssh/sshd_config</filename> 以及 <filename>/etc/ssh/" +"ssh_config</filename> 搞混 (注意在第一節檔名有多出個 <literal>d</literal>)," +"第一個檔案用來設定伺服器,而第二個檔案用來設定客戶端。請參考 " +"<citerefentry><refentrytitle>ssh_config</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry> 來取得可用的客戶端設定清單。" #. (itstool) path: info/title -#: book.translate.xml:26675 +#: book.translate.xml:26682 msgid "Access Control Lists" msgstr "存取控制清單" #. (itstool) path: authorgroup/author -#: book.translate.xml:26678 book.translate.xml:26823 book.translate.xml:26899 -#: book.translate.xml:27219 book.translate.xml:27284 book.translate.xml:27641 +#: book.translate.xml:26685 book.translate.xml:26830 book.translate.xml:26906 +#: book.translate.xml:27226 book.translate.xml:27291 book.translate.xml:27648 msgid "" "<personname><firstname>Tom</firstname><surname>Rhodes</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26683 +#: book.translate.xml:26690 msgid "<primary>ACL</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26687 +#: book.translate.xml:26694 msgid "" "Access Control Lists (<acronym>ACL</acronym>s) extend the standard " "<trademark class=\"registered\">UNIX</trademark> permission model in a " @@ -39302,7 +39546,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26692 +#: book.translate.xml:26699 msgid "" "The FreeBSD <filename>GENERIC</filename> kernel provides <acronym>ACL</" "acronym> support for <acronym>UFS</acronym> file systems. Users who prefer " @@ -39311,13 +39555,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:26698 +#: book.translate.xml:26705 #, no-wrap msgid "options UFS_ACL" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26700 +#: book.translate.xml:26707 msgid "" "If this option is not compiled in, a warning message will be displayed when " "attempting to mount a file system with <acronym>ACL</acronym> support. " @@ -39326,19 +39570,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26706 +#: book.translate.xml:26713 msgid "" "This chapter describes how to enable <acronym>ACL</acronym> support and " "provides some usage examples." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26711 +#: book.translate.xml:26718 msgid "Enabling <acronym>ACL</acronym> Support" msgstr "開啟 <acronym>ACL</acronym> 支援" #. (itstool) path: sect2/para -#: book.translate.xml:26713 +#: book.translate.xml:26720 msgid "" "<acronym>ACL</acronym>s are enabled by the mount-time administrative flag, " "<option>acls</option>, which may be added to <filename>/etc/fstab</" @@ -39350,7 +39594,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26723 +#: book.translate.xml:26730 msgid "" "The superblock flag cannot be changed by a remount using <option>mount -u</" "option> as it requires a complete <command>umount</command> and fresh " @@ -39361,7 +39605,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:26734 +#: book.translate.xml:26741 msgid "" "Setting the superblock flag causes the file system to always be mounted with " "<acronym>ACL</acronym>s enabled, even if there is not an <filename>fstab</" @@ -39370,7 +39614,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:26744 +#: book.translate.xml:26751 msgid "" "It is desirable to discourage accidental mounting without <acronym>ACL</" "acronym>s enabled because nasty things can happen if <acronym>ACL</acronym>s " @@ -39384,14 +39628,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26758 +#: book.translate.xml:26765 msgid "" "File systems with <acronym>ACL</acronym>s enabled will show a plus (<literal>" "+</literal>) sign in their permission settings:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26762 +#: book.translate.xml:26769 #, no-wrap msgid "" "drwx------ 2 robert robert 512 Dec 27 11:54 private\n" @@ -39402,7 +39646,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26768 +#: book.translate.xml:26775 msgid "" "In this example, <filename>directory1</filename>, <filename>directory2</" "filename>, and <filename>directory3</filename> are all taking advantage of " @@ -39410,12 +39654,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26776 +#: book.translate.xml:26783 msgid "Using <acronym>ACL</acronym>s" msgstr "使用 <acronym>ACL</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:26778 +#: book.translate.xml:26785 msgid "" "File system <acronym>ACL</acronym>s can be viewed using <command>getfacl</" "command>. For instance, to view the <acronym>ACL</acronym> settings on " @@ -39423,7 +39667,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26783 +#: book.translate.xml:26790 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>getfacl test</userinput>\n" @@ -39436,7 +39680,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26791 +#: book.translate.xml:26798 msgid "" "To change the <acronym>ACL</acronym> settings on this file, use " "<command>setfacl</command>. To remove all of the currently defined " @@ -39446,26 +39690,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26798 +#: book.translate.xml:26805 #, no-wrap msgid "<prompt>%</prompt> <userinput>setfacl -k test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26800 +#: book.translate.xml:26807 msgid "" "To modify the default <acronym>ACL</acronym> entries, use <option>-m</" "option>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:26803 +#: book.translate.xml:26810 #, no-wrap msgid "<prompt>%</prompt> <userinput>setfacl -m u:trhodes:rwx,group:web:r--,o::--- test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26805 +#: book.translate.xml:26812 msgid "" "In this example, there were no pre-defined entries, as they were removed by " "the previous command. This command restores the default options and assigns " @@ -39474,7 +39718,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:26812 +#: book.translate.xml:26819 msgid "" "Refer to <citerefentry><refentrytitle>getfacl</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>setfacl</" @@ -39483,17 +39727,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:26820 +#: book.translate.xml:26827 msgid "Monitoring Third Party Security Issues" msgstr "監視第三方安全性問題" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26828 +#: book.translate.xml:26835 msgid "<primary>pkg</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26832 +#: book.translate.xml:26839 msgid "" "In recent years, the security world has made many improvements to how " "vulnerability assessment is handled. The threat of system intrusion " @@ -39502,7 +39746,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26838 +#: book.translate.xml:26845 msgid "" "Vulnerability assessment is a key factor in security. While FreeBSD releases " "advisories for the base system, doing so for every third party utility is " @@ -39513,7 +39757,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26847 +#: book.translate.xml:26854 msgid "" "<application>pkg</application> polls a database for security issues. The " "database is updated and maintained by the FreeBSD Security Team and ports " @@ -39521,7 +39765,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26851 +#: book.translate.xml:26858 msgid "" "Please refer to <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/" "books/handbook/pkgng-intro.html\">instructions</link> for installing " @@ -39529,7 +39773,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26855 +#: book.translate.xml:26862 msgid "" "Installation provides <citerefentry><refentrytitle>periodic</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> configuration files " @@ -39543,7 +39787,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26865 +#: book.translate.xml:26872 msgid "" "After installation, and to audit third party utilities as part of the Ports " "Collection at any time, an administrator may choose to update the database " @@ -39551,14 +39795,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26872 +#: book.translate.xml:26879 msgid "" "<application>pkg</application> displays messages any published " "vulnerabilities in installed packages:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:26875 +#: book.translate.xml:26882 #, no-wrap msgid "" "Affected package: cups-base-1.1.22.0_1\n" @@ -39571,7 +39815,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26883 +#: book.translate.xml:26890 msgid "" "By pointing a web browser to the displayed <acronym>URL</acronym>, an " "administrator may obtain more information about the vulnerability. This will " @@ -39580,24 +39824,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26889 +#: book.translate.xml:26896 msgid "" "<application>pkg</application> is a powerful utility and is extremely useful " "when coupled with <package>ports-mgmt/portmaster</package>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:26896 +#: book.translate.xml:26903 msgid "FreeBSD Security Advisories" msgstr "FreeBSD 安全報告" #. (itstool) path: sect1/indexterm -#: book.translate.xml:26904 +#: book.translate.xml:26911 msgid "<primary>FreeBSD Security Advisories</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26908 +#: book.translate.xml:26915 msgid "" "Like many producers of quality operating systems, the FreeBSD Project has a " "security team which is responsible for determining the End-of-Life " @@ -39609,7 +39853,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26918 +#: book.translate.xml:26925 msgid "" "One task of the security team is to respond to reported security " "vulnerabilities in the FreeBSD operating system. Once a vulnerability is " @@ -39626,22 +39870,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:26929 +#: book.translate.xml:26936 msgid "This section describes the format of a FreeBSD security advisory." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:26933 +#: book.translate.xml:26940 msgid "Format of a Security Advisory" msgstr "安全報告的格式" #. (itstool) path: sect2/para -#: book.translate.xml:26935 +#: book.translate.xml:26942 msgid "Here is an example of a FreeBSD security advisory:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:26937 +#: book.translate.xml:26944 #, no-wrap msgid "" "=============================================================================\n" @@ -39788,12 +40032,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27079 +#: book.translate.xml:27086 msgid "Every security advisory uses the following format:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27083 +#: book.translate.xml:27090 msgid "" "Each security advisory is signed by the <acronym>PGP</acronym> key of the " "Security Officer. The public key for the Security Officer can be verified at " @@ -39801,7 +40045,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27090 +#: book.translate.xml:27097 msgid "" "The name of the security advisory always begins with <literal>FreeBSD-SA-</" "literal> (for FreeBSD Security Advisory), followed by the year in two digit " @@ -39813,12 +40057,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27102 +#: book.translate.xml:27109 msgid "The <literal>Topic</literal> field summarizes the vulnerability." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27107 +#: book.translate.xml:27114 msgid "" "The <literal>Category</literal> refers to the affected part of the system " "which may be one of <literal>core</literal>, <literal>contrib</literal>, or " @@ -39831,7 +40075,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27122 +#: book.translate.xml:27129 msgid "" "The <literal>Module</literal> field refers to the component location. In " "this example, the <literal>bind</literal> module is affected; therefore, " @@ -39840,7 +40084,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27130 +#: book.translate.xml:27137 msgid "" "The <literal>Announced</literal> field reflects the date the security " "advisory was published. This means that the security team has verified that " @@ -39849,21 +40093,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27138 +#: book.translate.xml:27145 msgid "" "The <literal>Credits</literal> field gives credit to the individual or " "organization who noticed the vulnerability and reported it." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27144 +#: book.translate.xml:27151 msgid "" "The <literal>Affects</literal> field explains which releases of FreeBSD are " "affected by this vulnerability." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27150 +#: book.translate.xml:27157 msgid "" "The <literal>Corrected</literal> field indicates the date, time, time " "offset, and releases that were corrected. The section in parentheses shows " @@ -39876,7 +40120,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27164 +#: book.translate.xml:27171 msgid "" "The <literal>CVE Name</literal> field lists the advisory number, if one " "exists, in the public <link xlink:href=\"http://cve.mitre.org\">cve.mitre." @@ -39884,14 +40128,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27170 +#: book.translate.xml:27177 msgid "" "The <literal>Background</literal> field provides a description of the " "affected module." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27175 +#: book.translate.xml:27182 msgid "" "The <literal>Problem Description</literal> field explains the vulnerability. " "This can include information about the flawed code and how the utility could " @@ -39899,21 +40143,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27182 +#: book.translate.xml:27189 msgid "" "The <literal>Impact</literal> field describes what type of impact the " "problem could have on a system." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27187 +#: book.translate.xml:27194 msgid "" "The <literal>Workaround</literal> field indicates if a workaround is " "available to system administrators who cannot immediately patch the system ." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27193 +#: book.translate.xml:27200 msgid "" "The <literal>Solution</literal> field provides the instructions for patching " "the affected system. This is a step by step tested and verified method for " @@ -39921,31 +40165,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27200 +#: book.translate.xml:27207 msgid "" "The <literal>Correction Details</literal> field displays each affected " "Subversion branch with the revision number that contains the corrected code." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27206 +#: book.translate.xml:27213 msgid "" "The <literal>References</literal> field offers sources of additional " "information regarding the vulnerability." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27216 +#: book.translate.xml:27223 msgid "Process Accounting" msgstr "程序追蹤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27224 +#: book.translate.xml:27231 msgid "<primary>Process Accounting</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27228 +#: book.translate.xml:27235 msgid "" "Process accounting is a security method in which an administrator may keep " "track of system resources used and their allocation among users, provide for " @@ -39953,7 +40197,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27233 +#: book.translate.xml:27240 msgid "" "Process accounting has both positive and negative points. One of the " "positives is that an intrusion may be narrowed down to the point of entry. A " @@ -39963,26 +40207,26 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:27241 +#: book.translate.xml:27248 msgid "" "If more fine-grained accounting is needed, refer to <xref linkend=\"audit\"/" ">." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27246 +#: book.translate.xml:27253 msgid "Enabling and Utilizing Process Accounting" msgstr "開啟並使用程序追蹤" #. (itstool) path: sect2/para -#: book.translate.xml:27248 +#: book.translate.xml:27255 msgid "" "Before using process accounting, it must be enabled using the following " "commands:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27251 +#: book.translate.xml:27258 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>touch /var/account/acct</userinput>\n" @@ -39992,7 +40236,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27256 +#: book.translate.xml:27263 msgid "" "Once enabled, accounting will begin to track information such as " "<acronym>CPU</acronym> statistics and executed commands. All accounting logs " @@ -40006,7 +40250,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27267 +#: book.translate.xml:27274 msgid "" "To display the commands issued by users, use <command>lastcomm</command>. " "For example, this command prints out all usage of <command>ls</command> by " @@ -40015,13 +40259,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27272 +#: book.translate.xml:27279 #, no-wrap msgid "<prompt>#</prompt> <userinput>lastcomm ls trhodes ttyp1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27274 +#: book.translate.xml:27281 msgid "" "Many other useful options exist and are explained in " "<citerefentry><refentrytitle>lastcomm</refentrytitle><manvolnum>1</" @@ -40032,17 +40276,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27281 +#: book.translate.xml:27288 msgid "Resource Limits" msgstr "限制資源" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27289 +#: book.translate.xml:27296 msgid "<primary>Resource limits</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27293 +#: book.translate.xml:27300 msgid "" "FreeBSD provides several methods for an administrator to limit the amount of " "system resources an individual may use. Disk quotas limit the amount of disk " @@ -40050,22 +40294,22 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27298 +#: book.translate.xml:27305 msgid "<primary>quotas</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27301 +#: book.translate.xml:27308 msgid "<primary>limiting users</primary> <secondary>quotas</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27305 book.translate.xml:34131 +#: book.translate.xml:27312 book.translate.xml:34265 msgid "<primary>disk quotas</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27309 +#: book.translate.xml:27316 msgid "" "Limits to other resources, such as <acronym>CPU</acronym> and memory, can be " "set using either a flat file or a command to configure a resource limits " @@ -40078,7 +40322,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27321 +#: book.translate.xml:27328 msgid "" "Beginning with FreeBSD 9.0-RELEASE, <command>rctl</command> can be used to " "provide a more fine-grained method for controlling resource limits. This " @@ -40087,34 +40331,34 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27327 +#: book.translate.xml:27334 msgid "" "This section demonstrates both methods for controlling resources, beginning " "with the traditional method." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27331 +#: book.translate.xml:27338 msgid "Configuring Login Classes" msgstr "設定登入類別" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27333 +#: book.translate.xml:27340 msgid "<primary>limiting users</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27336 +#: book.translate.xml:27343 msgid "<primary>accounts</primary> <secondary>limiting</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27340 +#: book.translate.xml:27347 msgid "<primary><filename>/etc/login.conf</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27344 +#: book.translate.xml:27351 msgid "" "In the traditional method, login classes and the resource limits to apply to " "a login class are defined in <filename>/etc/login.conf</filename>. Each user " @@ -40128,7 +40372,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:27358 +#: book.translate.xml:27365 msgid "" "Whenever <filename>/etc/login.conf</filename> is edited, the <filename>/etc/" "login.conf.db</filename> must be updated by executing the following command:" @@ -40137,14 +40381,14 @@ msgstr "" #. (itstool) path: note/screen #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:27362 book.translate.xml:30883 book.translate.xml:43282 -#: book.translate.xml:54567 +#: book.translate.xml:27369 book.translate.xml:30890 book.translate.xml:43491 +#: book.translate.xml:54188 #, no-wrap msgid "<prompt>#</prompt> <userinput>cap_mkdb /etc/login.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27365 +#: book.translate.xml:27372 msgid "" "Resource limits differ from the default login capabilities in two ways. " "First, for every limit, there is a <firstterm>soft</firstterm> and " @@ -40155,7 +40399,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27374 +#: book.translate.xml:27381 msgid "" "<xref linkend=\"resource-limits\"/> lists the most commonly used resource " "limits. All of the available resource limits and capabilities are described " @@ -40164,67 +40408,67 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27379 +#: book.translate.xml:27386 msgid "<primary>limiting users</primary> <secondary>coredumpsize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27383 +#: book.translate.xml:27390 msgid "<primary>limiting users</primary> <secondary>cputime</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27387 +#: book.translate.xml:27394 msgid "<primary>limiting users</primary> <secondary>filesize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27391 +#: book.translate.xml:27398 msgid "<primary>limiting users</primary> <secondary>maxproc</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27395 +#: book.translate.xml:27402 msgid "<primary>limiting users</primary> <secondary>memorylocked</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27399 +#: book.translate.xml:27406 msgid "<primary>limiting users</primary> <secondary>memoryuse</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27403 +#: book.translate.xml:27410 msgid "<primary>limiting users</primary> <secondary>openfiles</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27407 +#: book.translate.xml:27414 msgid "<primary>limiting users</primary> <secondary>sbsize</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:27411 +#: book.translate.xml:27418 msgid "<primary>limiting users</primary> <secondary>stacksize</secondary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:27417 +#: book.translate.xml:27424 msgid "Login Class Resource Limits" msgstr "登入類別限制資源類型" #. (itstool) path: row/entry -#: book.translate.xml:27422 +#: book.translate.xml:27429 msgid "Resource Limit" msgstr "限制資源" #. (itstool) path: row/entry -#: book.translate.xml:27429 +#: book.translate.xml:27436 msgid "coredumpsize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27430 +#: book.translate.xml:27437 msgid "" "The limit on the size of a core file generated by a program is subordinate " "to other limits on disk usage, such as <literal>filesize</literal> or disk " @@ -40235,12 +40479,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27442 +#: book.translate.xml:27449 msgid "cputime" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27443 +#: book.translate.xml:27450 msgid "" "The maximum amount of <acronym>CPU</acronym> time a user's process may " "consume. Offending processes will be killed by the kernel. This is a limit " @@ -40250,12 +40494,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27454 +#: book.translate.xml:27461 msgid "filesize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27455 +#: book.translate.xml:27462 msgid "" "The maximum size of a file the user may own. Unlike disk quotas (<xref " "linkend=\"quotas\"/>), this limit is enforced on individual files, not the " @@ -40263,12 +40507,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27462 +#: book.translate.xml:27469 msgid "maxproc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27463 +#: book.translate.xml:27470 msgid "" "The maximum number of foreground and background processes a user can run. " "This limit may not be larger than the system limit specified by " @@ -40278,12 +40522,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27473 +#: book.translate.xml:27480 msgid "memorylocked" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27474 +#: book.translate.xml:27481 msgid "" "The maximum amount of memory a process may request to be locked into main " "memory using <citerefentry><refentrytitle>mlock</refentrytitle><manvolnum>2</" @@ -40294,12 +40538,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27483 +#: book.translate.xml:27490 msgid "memoryuse" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27484 +#: book.translate.xml:27491 msgid "" "The maximum amount of memory a process may consume at any given time. It " "includes both core memory and swap usage. This is not a catch-all limit for " @@ -40307,12 +40551,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27492 +#: book.translate.xml:27499 msgid "openfiles" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27493 +#: book.translate.xml:27500 msgid "" "The maximum number of files a process may have open. In FreeBSD, files are " "used to represent sockets and <acronym>IPC</acronym> channels, so be careful " @@ -40321,24 +40565,24 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27502 +#: book.translate.xml:27509 msgid "sbsize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27503 +#: book.translate.xml:27510 msgid "" "The limit on the amount of network memory a user may consume. This can be " "generally used to limit network communications." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27509 +#: book.translate.xml:27516 msgid "stacksize" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:27510 +#: book.translate.xml:27517 msgid "" "The maximum size of a process stack. This alone is not sufficient to limit " "the amount of memory a program may use, so it should be used in conjunction " @@ -40346,19 +40590,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27519 +#: book.translate.xml:27526 msgid "There are a few other things to remember when setting resource limits:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27524 +#: book.translate.xml:27531 msgid "" "Processes started at system startup by <filename>/etc/rc</filename> are " "assigned to the <literal>daemon</literal> login class." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27530 +#: book.translate.xml:27537 msgid "" "Although the default <filename>/etc/login.conf</filename> is a good source " "of reasonable values for most limits, they may not be appropriate for every " @@ -40367,14 +40611,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27539 +#: book.translate.xml:27546 msgid "" "<application>Xorg</application> takes a lot of resources and encourages " "users to run more programs simultaneously." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:27545 +#: book.translate.xml:27552 msgid "" "Many limits apply to individual processes, not the user as a whole. For " "example, setting <varname>openfiles</varname> to <literal>50</literal> means " @@ -40385,7 +40629,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27556 +#: book.translate.xml:27563 msgid "" "For further information on resource limits and login classes and " "capabilities in general, refer to <citerefentry><refentrytitle>cap_mkdb</" @@ -40396,12 +40640,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27563 +#: book.translate.xml:27570 msgid "Enabling and Configuring Resource Limits" msgstr "開啟並設定資源限制" #. (itstool) path: sect2/para -#: book.translate.xml:27565 +#: book.translate.xml:27572 msgid "" "As of FreeBSD 10.2, <command>rctl</command> support is built into the " "kernel. Previous supported releases will need to be recompiled using the " @@ -40411,7 +40655,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27571 +#: book.translate.xml:27578 #, no-wrap msgid "" "options RACCT\n" @@ -40419,27 +40663,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27574 +#: book.translate.xml:27581 msgid "" "Once the system has rebooted into the new kernel, <command>rctl</command> " "may be used to set rules for the system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27578 +#: book.translate.xml:27585 msgid "" "Rule syntax is controlled through the use of a subject, subject-id, " "resource, and action, as seen in this example rule:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27582 +#: book.translate.xml:27589 #, no-wrap msgid "user:trhodes:maxproc:deny=10/user" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27584 +#: book.translate.xml:27591 msgid "" "In this rule, the subject is <literal>user</literal>, the subject-id is " "<literal>trhodes</literal>, the resource, <literal>maxproc</literal>, is the " @@ -40453,7 +40697,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27595 +#: book.translate.xml:27602 msgid "" "Some care must be taken when adding rules. Since this user is constrained to " "<literal>10</literal> processes, this example will prevent the user from " @@ -40463,7 +40707,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27602 +#: book.translate.xml:27609 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>man test</userinput>\n" @@ -40472,20 +40716,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27606 +#: book.translate.xml:27613 msgid "" "As another example, a jail can be prevented from exceeding a memory limit. " "This rule could be written as:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27609 +#: book.translate.xml:27616 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -a jail:httpd:memoryuse:deny=2G/jail</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27611 +#: book.translate.xml:27618 msgid "" "Rules will persist across reboots if they have been added to <filename>/etc/" "rctl.conf</filename>. The format is a rule, without the preceding command. " @@ -40493,7 +40737,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27616 +#: book.translate.xml:27623 #, no-wrap msgid "" "# Block jail from using more than 2G memory:\n" @@ -40501,19 +40745,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27619 +#: book.translate.xml:27626 msgid "" "To remove a rule, use <command>rctl</command> to remove it from the list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27622 +#: book.translate.xml:27629 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -r user:trhodes:maxproc:deny=10/user</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27624 +#: book.translate.xml:27631 msgid "" "A method for removing all rules is documented in " "<citerefentry><refentrytitle>rctl</refentrytitle><manvolnum>8</manvolnum></" @@ -40522,13 +40766,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:27628 +#: book.translate.xml:27635 #, no-wrap msgid "<prompt>#</prompt> <userinput>rctl -r user:trhodes</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27630 +#: book.translate.xml:27637 msgid "" "Many other resources exist which can be used to exert additional control " "over various <literal>subjects</literal>. See " @@ -40537,17 +40781,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:27638 +#: book.translate.xml:27645 msgid "Shared Administration with Sudo" msgstr "使用 Sudo 分享管理權限" #. (itstool) path: sect1/indexterm -#: book.translate.xml:27646 +#: book.translate.xml:27653 msgid "<primary>Security</primary> <secondary>Sudo</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27651 +#: book.translate.xml:27658 msgid "" "System administrators often need the ability to grant enhanced permissions " "to users so they may perform privileged tasks. The idea that team members " @@ -40558,9 +40802,14 @@ msgid "" "superuser access. Thankfully, there is no reason to provide such access to " "end users because tools exist to manage this exact requirement." msgstr "" +"系統管理者通常會要能夠授予額外的權限給其他使用者,以讓這些使用者可以執行需權" +"限的工作。要讓團隊成員可以存取 FreeBSD 系統來完成其特定的工作對所有管理者都會" +"帶來挑戰,這些團隊成員通常只需要比一般使用者多出一些存取權限便可作業,但他們" +"總是會告訴管理者若沒有超級使用者的存取權便無法完成其工作。幸好,有工具可以管" +"理這類的需求,這樣便不需提供這麼大的權限給一般使用者。" #. (itstool) path: sect1/para -#: book.translate.xml:27662 +#: book.translate.xml:27669 msgid "" "Up to this point, the security chapter has covered permitting access to " "authorized users and attempting to prevent unauthorized access. Another " @@ -40574,9 +40823,17 @@ msgid "" "was required. The most used application is currently <application>Sudo</" "application>." msgstr "" +"到目前為止,安全性章節已說明了如何允許已授權的使用者存取以及嘗試防止未經授權" +"的存取,而現在有另一個問題,是由已授權的使用者擁有權限存取系統資源造成的。在" +"很多的情況,使用者會需要存取應用程式啟動 Script 的權限或是管理者團隊需要維護" +"系統,以往會使用標準的使用者與群組、檔案權限、甚至是 " +"<citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 指令來管理存取權,但當應用程式需要更多存取權,更多使用者需要使" +"用系統資源時,便需要更好的解決方案,目前最常用來解決此問題的應用程式便是 " +"<application>Sudo</application>。" #. (itstool) path: sect1/para -#: book.translate.xml:27674 +#: book.translate.xml:27681 msgid "" "<application>Sudo</application> allows administrators to configure more " "rigid access to system commands and provide for some advanced logging " @@ -40586,24 +40843,33 @@ msgid "" "citerefentry> utility. To use the <citerefentry><refentrytitle>pkg</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> tool:" msgstr "" +"<application>Sudo</application> 讓管理者可以對系統指令的存取設下更嚴格的限制" +"並提供進階的記錄功能。如同其他工具,它可自 Port 套件集取得,於其中的 " +"<package role=\"port\">security/sudo</package>,或使用 " +"<citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> 工具取得,若要使用 <citerefentry><refentrytitle>pkg</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 工具可:" #. (itstool) path: sect1/screen -#: book.translate.xml:27681 +#: book.translate.xml:27688 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install sudo</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27683 +#: book.translate.xml:27690 msgid "" "After the installation is complete, the installed <command>visudo</command> " "will open the configuration file with a text editor. Using <command>visudo</" "command> is highly recommended as it comes with a built in syntax checker to " "verify there are no errors before the file is saved." msgstr "" +"安裝完成之後,可用安裝的 <command>visudo</command> 以文字編輯器開啟設定檔,強" +"烈建議使用 <command>visudo</command> 來編輯設定檔,由於它有內建的語法檢查程式" +"可在檔案儲存之前檢驗是否有誤。" #. (itstool) path: sect1/para -#: book.translate.xml:27689 +#: book.translate.xml:27696 msgid "" "The configuration file is made up of several small sections which allow for " "extensive configuration. In the following example, web application " @@ -40612,28 +40878,32 @@ msgid "" "permission to perform these tasks, add this line to the end of <filename>/" "usr/local/etc/sudoers</filename>:" msgstr "" +"設定檔由個小節所組成,透過這些小節可做常廣泛的設定,在以下的範例中,網站應用" +"程式維護人員 user1 需要啟動、停止與重新啟動名稱為 <replaceable>webservice</" +"replaceable> 的網站應用程式 。要授權此使用者執行這些工作的權限,可加入此行到 " +"<filename>/usr/local/etc/sudoers</filename> 的最後:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:27698 +#: book.translate.xml:27705 #, no-wrap msgid "user1 ALL=(ALL) /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27700 +#: book.translate.xml:27707 msgid "" "The user may now start <replaceable>webservice</replaceable> using this " "command:" -msgstr "" +msgstr "現在使用者可使用此指令來啟動 <replaceable>webservice</replaceable>:" #. (itstool) path: sect1/screen -#: book.translate.xml:27703 +#: book.translate.xml:27710 #, no-wrap msgid "<prompt>%</prompt> <userinput>sudo /usr/sbin/service <replaceable>webservice</replaceable> start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27705 +#: book.translate.xml:27712 msgid "" "While this configuration allows a single user access to the " "<application>webservice</application> service; however, in most " @@ -40642,50 +40912,62 @@ msgid "" "will create a web group, add a user to this group, and allow all members of " "the group to manage the service:" msgstr "" +"雖然這項設定可以讓一位使用者存取 <application>webservice</application> 服務," +"但在大部份組織中會有一整個網站小組負責管理該服務,因此也可以一行來授予整個群" +"組存取權,以下步驟會建立一個網站群組、加入使用者到這個群組,然後讓該群組中的" +"所有成員能夠管理服務:" #. (itstool) path: sect1/screen -#: book.translate.xml:27713 +#: book.translate.xml:27720 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupadd -g 6001 -n webteam</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27715 +#: book.translate.xml:27722 msgid "" "Using the same <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> command, the user is added to the webteam group:" msgstr "" +"同樣使用 <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 指令來加入該使用到 webteam 群組:" #. (itstool) path: sect1/screen -#: book.translate.xml:27718 +#: book.translate.xml:27725 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod -m user1 -n webteam</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27720 +#: book.translate.xml:27727 msgid "" "Finally, this line in <filename>/usr/local/etc/sudoers</filename> allows any " "member of the webteam group to manage <replaceable>webservice</replaceable>:" msgstr "" +"最後,在 <filename>/usr/local/etc/sudoers</filename> 中的這行設定可以讓 " +"webteam 群組的所有成員可以管理 <replaceable>webservice</replaceable>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:27725 +#: book.translate.xml:27732 #, no-wrap msgid "%webteam ALL=(ALL) /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27727 +#: book.translate.xml:27734 msgid "" "Unlike <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <application>Sudo</application> only requires the " "end user password. This adds an advantage where users will not need shared " "passwords, a finding in most security audits and just bad all the way around." msgstr "" +"與 <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 不同的是 <application>Sudo</application> 只需要一般使用者的密" +"碼,這有一個使用者不需要共用密碼的優點,在大多數安全稽查都會發現共用密碼的問" +"題且這種情況只有壞處可言。" #. (itstool) path: sect1/para -#: book.translate.xml:27732 +#: book.translate.xml:27739 msgid "" "Users permitted to run applications with <application>Sudo</application> " "only enter their own passwords. This is more secure and gives better control " @@ -40694,9 +40976,16 @@ msgid "" "systemitem> password is entered and the user acquires all <systemitem class=" "\"username\">root</systemitem> permissions." msgstr "" +"使用 <application>Sudo</application> 允許使用者執行應用程式只需要輸入使用者自" +"己的密碼,這更安全且提供比 <citerefentry><refentrytitle>su</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry> 更佳的控制權,因為 " +"<citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 只要輸入 <systemitem class=\"username\">root</systemitem> 密碼" +"之後該使用者便可取得所有的 <systemitem class=\"username\">root</systemitem> " +"權限。" #. (itstool) path: tip/para -#: book.translate.xml:27741 +#: book.translate.xml:27748 msgid "" "Most organizations are moving or have moved toward a two factor " "authentication model. In these cases, the user may not have a password to " @@ -40705,20 +40994,25 @@ msgid "" "will allow all members of the <replaceable>webteam</replaceable> group to " "manage the service without the password requirement:" msgstr "" +"大多數組織已正在導入或已導入雙重認証 (Two factor authentication),在這個情境" +"下使用者可以不用輸入密碼,<application>Sudo</application> 提供了 " +"<literal>NOPASSWD</literal> 變數來供這個情境使用,可將該設定加入到上述的設定" +"將可允許所有 <replaceable>webteam</replaceable> 群組的成員不需要輸入密碼便可" +"管理該服務:" #. (itstool) path: tip/programlisting -#: book.translate.xml:27750 +#: book.translate.xml:27757 #, no-wrap msgid "%webteam ALL=(ALL) NOPASSWD: /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:27754 +#: book.translate.xml:27761 msgid "Logging Output" msgstr "記錄輸出" #. (itstool) path: sect2/para -#: book.translate.xml:27756 +#: book.translate.xml:27763 msgid "" "An advantage to implementing <application>Sudo</application> is the ability " "to enable session logging. Using the built in log mechanisms and the " @@ -40729,15 +41023,21 @@ msgid "" "exist, consult the manual page for <application>sudoreplay</application> for " "additional information." msgstr "" +"採用 <application>Sudo</application> 的另一個優點是能夠開啟連線階段的記錄。使" +"用內建立記錄機制與內含的 <application>sudoreplay</application> 指令,所有透" +"過 <application>Sudo</application> 初始化的指令會被記錄下來供往後檢驗用。要開" +"啟這個功能要加入預設記錄目錄的項目,在以下範例中使用了使用者變數來做目錄名" +"稱,也還有許多其他記錄檔名稱慣例,可參考 <application>sudoreplay</" +"application> 的操作手冊來取得進一步資訊。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:27768 +#: book.translate.xml:27775 #, no-wrap msgid "Defaults iolog_dir=/var/log/sudo-io/%{user}" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:27771 +#: book.translate.xml:27778 msgid "" "This directory will be created automatically after the logging is " "configured. It is best to let the system create directory with default " @@ -40746,52 +41046,65 @@ msgid "" "change this behavior, read and uncomment the logging options inside " "<filename>sudoers</filename>." msgstr "" +"這個目錄會在記錄功能設定之後自動建立,最好讓系統以預設的權限來建立目錄比較保" +"險,除此之外,這個設定項目也會記錄使用 <application>sudoreplay</application> " +"指令的管理者,要更改設定請閱讀並取消在 <filename>sudoers</filename> 中記錄選" +"項的註解。" #. (itstool) path: sect2/para -#: book.translate.xml:27780 +#: book.translate.xml:27787 msgid "" "Once this directive has been added to the <filename>sudoers</filename> file, " "any user configuration can be updated with the request to log access. In the " "example shown, the updated <replaceable>webteam</replaceable> entry would " "have the following additional changes:" msgstr "" +"一旦這個設定加入至 <filename>sudoers</filename> 檔案之後,所有的使用者設定項" +"目便可加上記錄存取動作的項目,在 <replaceable>webteam</replaceable> 項目加入" +"額外設定之後的範例如下: " #. (itstool) path: sect2/programlisting -#: book.translate.xml:27786 +#: book.translate.xml:27793 #, no-wrap msgid "%webteam ALL=(ALL) NOPASSWD: LOG_INPUT: LOG_OUTPUT: /usr/sbin/service webservice *" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27788 +#: book.translate.xml:27795 msgid "" "From this point on, all <replaceable>webteam</replaceable> members altering " "the status of the <replaceable>webservice</replaceable> application will be " "logged. The list of previous and current sessions can be displayed with:" msgstr "" +"從此之後,所有 <replaceable>webteam</replaceable> 修改 " +"<replaceable>webservice</replaceable> 應用程式狀態的成員將會被記錄下來。要列" +"出先前與目前連線階段的記錄可:" #. (itstool) path: sect2/screen -#: book.translate.xml:27794 +#: book.translate.xml:27801 #, no-wrap msgid "<prompt>#</prompt> <userinput>sudoreplay -l</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:27796 +#: book.translate.xml:27803 msgid "" "In the output, to replay a specific session, search for the <literal>TSID=</" "literal> entry, and pass that to <application>sudoreplay</application> with " "no other options to replay the session at normal speed. For example:" msgstr "" +"在輸出結果中要重播指定連線階段的記錄可搜尋 <literal>TSID=</literal> 項目,然" +"後傳送給 <application>sudoreplay</application> 且不加其他選項便可以一般速度重" +"播連線階段,例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:27801 +#: book.translate.xml:27808 #, no-wrap msgid "<prompt>#</prompt> <userinput>sudoreplay user1/00/00/02</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:27804 +#: book.translate.xml:27811 msgid "" "While sessions are logged, any administrator is able to remove sessions and " "leave only a question of why they had done so. It is worthwhile to add a " @@ -40799,33 +41112,38 @@ msgid "" "or similar software so that other administrators are alerted to manual " "alterations." msgstr "" +"雖然所有連線階段都會被記錄,但任何管理者都可以移除連線階段,使得沒人知道它們" +"做了什麼事,所以非常值得在入侵偵測系統 (<acronym>IDS</acronym>) 或類似的軟體" +"加入每日檢查,以便在有人為修改時通知其他管理人員。" #. (itstool) path: sect2/para -#: book.translate.xml:27812 +#: book.translate.xml:27819 msgid "" "The <command>sudoreplay</command> is extremely extendable. Consult the " "documentation for more information." msgstr "" +"<command>sudoreplay</command> 的擴充空間非常大,請參考說明文件來取得更多資" +"訊。" #. (itstool) path: info/title -#: book.translate.xml:27826 +#: book.translate.xml:27833 msgid "Jails" msgstr "Jail" #. (itstool) path: authorgroup/author -#: book.translate.xml:27829 +#: book.translate.xml:27836 msgid "" "<personname><firstname>Matteo</firstname><surname>Riondato</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: chapter/indexterm -#: book.translate.xml:27834 +#: book.translate.xml:27841 msgid "<primary>jails</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:27839 +#: book.translate.xml:27846 msgid "" "Since system administration is a difficult task, many tools have been " "developed to make life easier for the administrator. These tools often " @@ -40841,7 +41159,7 @@ msgstr "" "用並持續強化它的功能、效率、穩定性以及安全性。" #. (itstool) path: sect1/para -#: book.translate.xml:27848 +#: book.translate.xml:27855 msgid "" "Jails build upon the <citerefentry><refentrytitle>chroot</" "refentrytitle><manvolnum>2</manvolnum></citerefentry> concept, which is used " @@ -40864,7 +41182,7 @@ msgstr "" "經被找到,讓這個方法不再是確保服務安全的理想方案。" #. (itstool) path: sect1/para -#: book.translate.xml:27861 +#: book.translate.xml:27868 msgid "" "Jails improve on the concept of the traditional chroot environment in " "several ways. In a traditional chroot environment, processes are only " @@ -40883,12 +41201,12 @@ msgstr "" "方式,Jail 可算是一種作業系統層級的虛擬化。" #. (itstool) path: sect1/para -#: book.translate.xml:27873 +#: book.translate.xml:27880 msgid "A jail is characterized by four elements:" msgstr "Jail 的四個要素:" #. (itstool) path: listitem/para -#: book.translate.xml:27877 +#: book.translate.xml:27884 msgid "" "A directory subtree: the starting point from which a jail is entered. Once " "inside the jail, a process is not permitted to escape outside of this " @@ -40898,12 +41216,12 @@ msgstr "" "錄之外。" #. (itstool) path: listitem/para -#: book.translate.xml:27883 +#: book.translate.xml:27890 msgid "A hostname: which will be used by the jail." msgstr "一個主機名稱:將會由 Jail 所使用。" #. (itstool) path: listitem/para -#: book.translate.xml:27887 +#: book.translate.xml:27894 msgid "" "An <acronym>IP</acronym> address: which is assigned to the jail. The " "<acronym>IP</acronym> address of a jail is often an alias address for an " @@ -40913,7 +41231,7 @@ msgstr "" "acronym> 位址通常是現有網路介面的別名位址。" #. (itstool) path: listitem/para -#: book.translate.xml:27894 +#: book.translate.xml:27901 msgid "" "A command: the path name of an executable to run inside the jail. The path " "is relative to the root directory of the jail environment." @@ -40922,7 +41240,7 @@ msgstr "" "路徑。" #. (itstool) path: sect1/para -#: book.translate.xml:27900 +#: book.translate.xml:27907 msgid "" "Jails have their own set of users and their own <systemitem class=\"username" "\">root</systemitem> account which are limited to the jail environment. The " @@ -40935,7 +41253,7 @@ msgstr "" "systemitem> 帳號不允許對指定 Jail 環境之外的系統執行操作。" #. (itstool) path: sect1/para -#: book.translate.xml:27905 +#: book.translate.xml:27912 msgid "" "This chapter provides an overview of the terminology and commands for " "managing FreeBSD jails. Jails are a powerful tool for both system " @@ -40945,23 +41263,23 @@ msgstr "" "來二者來說皆是強大的工具。" #. (itstool) path: listitem/para -#: book.translate.xml:27913 +#: book.translate.xml:27920 msgid "What a jail is and what purpose it may serve in FreeBSD installations." msgstr "Jail 是什麼及它在 FreeBSD 中提供的目的。" #. (itstool) path: listitem/para -#: book.translate.xml:27918 +#: book.translate.xml:27925 msgid "How to build, start, and stop a jail." msgstr "如何建立、啟動及停止 Jail。" #. (itstool) path: listitem/para -#: book.translate.xml:27922 +#: book.translate.xml:27929 msgid "" "The basics of jail administration, both from inside and outside the jail." msgstr "Jail 管理基礎,不論從內部或外部。" #. (itstool) path: important/para -#: book.translate.xml:27928 +#: book.translate.xml:27935 msgid "" "Jails are a powerful tool, but they are not a security panacea. While it is " "not possible for a jailed process to break out on its own, there are several " @@ -40974,7 +41292,7 @@ msgstr "" "使用者串通來取得主機環境的更高權限。" #. (itstool) path: important/para -#: book.translate.xml:27935 +#: book.translate.xml:27942 msgid "" "Most of these attacks can be mitigated by ensuring that the jail root is not " "accessible to unprivileged users in the host environment. As a general rule, " @@ -40985,12 +41303,12 @@ msgstr "" "上,不受信任的使用者有 Jail 的存取權限並不會讓其可存取主機環境。" #. (itstool) path: sect1/title -#: book.translate.xml:27944 +#: book.translate.xml:27951 msgid "Terms Related to Jails" msgstr "Jail 相關術語" #. (itstool) path: sect1/para -#: book.translate.xml:27946 +#: book.translate.xml:27953 msgid "" "To facilitate better understanding of parts of the FreeBSD system related to " "jails, their internals and the way they interact with the rest of FreeBSD, " @@ -41000,7 +41318,7 @@ msgstr "" "互作用關係, 以下列出本章將使用的術語:" #. (itstool) path: varlistentry/term -#: book.translate.xml:27953 +#: book.translate.xml:27960 msgid "" "<citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> (command)" @@ -41009,7 +41327,7 @@ msgstr "" "citerefentry> (指令)" #. (itstool) path: listitem/para -#: book.translate.xml:27955 +#: book.translate.xml:27962 msgid "" "Utility, which uses <citerefentry><refentrytitle>chroot</" "refentrytitle><manvolnum>2</manvolnum></citerefentry> FreeBSD system call to " @@ -41020,7 +41338,7 @@ msgstr "" "(System call) 來更改程予及其衍伸程序的根目錄。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27962 +#: book.translate.xml:27969 msgid "" "<citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>2</manvolnum></" "citerefentry> (environment)" @@ -41029,7 +41347,7 @@ msgstr "" "citerefentry> (環境)" #. (itstool) path: listitem/para -#: book.translate.xml:27964 +#: book.translate.xml:27971 msgid "" "The environment of processes running in a <quote>chroot</quote>. This " "includes resources such as the part of the file system which is visible, " @@ -41040,7 +41358,7 @@ msgstr "" "統、可用的使用者及群組 ID、網路介面及其他 IPC 機制等。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27973 +#: book.translate.xml:27980 msgid "" "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> (command)" @@ -41049,19 +41367,19 @@ msgstr "" "citerefentry> (指令)" #. (itstool) path: listitem/para -#: book.translate.xml:27975 +#: book.translate.xml:27982 msgid "" "The system administration utility which allows launching of processes within " "a jail environment." msgstr "允許在 Jail 環境下執行程序的系統管理工具。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27981 +#: book.translate.xml:27988 msgid "host (system, process, user, etc.)" msgstr "主機 (系統、程序、使用者等)" #. (itstool) path: listitem/para -#: book.translate.xml:27983 +#: book.translate.xml:27990 msgid "" "The controlling system of a jail environment. The host system has access to " "all the hardware resources available, and can control processes both outside " @@ -41074,24 +41392,24 @@ msgstr "" "像在 Jail 環境那樣受到限制。" #. (itstool) path: varlistentry/term -#: book.translate.xml:27995 +#: book.translate.xml:28002 msgid "hosted (system, process, user, etc.)" msgstr "託管 (主機、程序、使用者等)" #. (itstool) path: listitem/para -#: book.translate.xml:27997 +#: book.translate.xml:28004 msgid "" "A process, user or other entity, whose access to resources is restricted by " "a FreeBSD jail." msgstr "存取資源受到 FreeBSD Jail 限制的託管程序、使用者或其他實體。" #. (itstool) path: sect1/title -#: book.translate.xml:28005 +#: book.translate.xml:28012 msgid "Creating and Controlling Jails" msgstr "建立和控制 Jail" #. (itstool) path: sect1/para -#: book.translate.xml:28007 +#: book.translate.xml:28014 msgid "" "Some administrators divide jails into the following two types: " "<quote>complete</quote> jails, which resemble a real FreeBSD system, and " @@ -41109,7 +41427,7 @@ msgstr "" "先編譯的 Binary (如安裝媒體上提供的 Binary) 或從原始碼編譯。" #. (itstool) path: sect1/para -#: book.translate.xml:28017 +#: book.translate.xml:28024 msgid "" "To install the userland from installation media, first create the root " "directory for the jail. This can be done by setting the <varname>DESTDIR</" @@ -41119,12 +41437,12 @@ msgstr "" "定 <varname>DESTDIR</varname> 來到適當的位置來完成。" #. (itstool) path: sect1/para -#: book.translate.xml:28022 +#: book.translate.xml:28029 msgid "Start a shell and define <varname>DESTDIR</varname>:" msgstr "啟動 Shell 並定義 <varname>DESTDIR</varname>:" #. (itstool) path: sect1/screen -#: book.translate.xml:28024 +#: book.translate.xml:28031 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sh</userinput>\n" @@ -41132,7 +41450,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28027 +#: book.translate.xml:28034 msgid "" "Mount the install media as covered in <citerefentry><refentrytitle>mdconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> when using the install " @@ -41142,13 +41460,13 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 中的說明掛載安裝媒體:" #. (itstool) path: sect1/screen -#: book.translate.xml:28030 +#: book.translate.xml:28037 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28032 +#: book.translate.xml:28039 msgid "" "Extract the binaries from the tarballs on the install media into the " "declared destination. Minimally, only the base set needs to be extracted, " @@ -41158,29 +41476,29 @@ msgstr "" "的部份,若需要也可完整安裝。" #. (itstool) path: sect1/para -#: book.translate.xml:28037 +#: book.translate.xml:28044 msgid "To install just the base system:" msgstr "只安裝基礎系統 (Base system):" #. (itstool) path: sect1/screen -#: book.translate.xml:28039 +#: book.translate.xml:28046 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar -xf /mnt/usr/freebsd-dist/base.txz -C $DESTDIR</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28041 +#: book.translate.xml:28048 msgid "To install everything except the kernel:" msgstr "安裝全部不含核心:" #. (itstool) path: sect1/screen -#: book.translate.xml:28043 +#: book.translate.xml:28050 #, no-wrap msgid "<prompt>#</prompt> <userinput>for <replaceable>sets</replaceable> in BASE PORTS; do tar -xf /mnt/FREEBSD_INSTALL/USR/FREEBSD_DIST/$<replaceable>sets</replaceable>.TXZ -C $DESTDIR ; done</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28045 +#: book.translate.xml:28052 msgid "" "The <citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> manual page explains the procedure for building a " @@ -41190,7 +41508,7 @@ msgstr "" "manvolnum></citerefentry> 操作手冊說明的程序建置 Jail:" #. (itstool) path: sect1/screen -#: book.translate.xml:28048 +#: book.translate.xml:28055 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setenv D <replaceable>/here/is/the/jail</replaceable></userinput>\n" @@ -41203,7 +41521,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:28058 +#: book.translate.xml:28065 msgid "" "Selecting a location for a jail is the best starting point. This is where " "the jail will physically reside within the file system of the jail's host. A " @@ -41222,7 +41540,7 @@ msgstr "" "案。" #. (itstool) path: callout/para -#: book.translate.xml:28071 +#: book.translate.xml:28078 msgid "" "If you have already rebuilt your userland using <command>make world</" "command> or <command>make buildworld</command>, you can skip this step and " @@ -41233,7 +41551,7 @@ msgstr "" "到新的 Jail。" #. (itstool) path: callout/para -#: book.translate.xml:28078 +#: book.translate.xml:28085 msgid "" "This command will populate the directory subtree chosen as jail's physical " "location on the file system with the necessary binaries, libraries, manual " @@ -41243,12 +41561,12 @@ msgstr "" "庫、操作手冊與相關檔案。" #. (itstool) path: para/buildtarget -#: book.translate.xml:28085 +#: book.translate.xml:28092 msgid "distribution" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:28085 +#: book.translate.xml:28092 msgid "" "The <_:buildtarget-1/> target for <application>make</application> installs " "every needed configuration file. In simple words, it installs every " @@ -41262,7 +41580,7 @@ msgstr "" "filename>。" #. (itstool) path: callout/para -#: book.translate.xml:28096 +#: book.translate.xml:28103 msgid "" "Mounting the <citerefentry><refentrytitle>devfs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> file system inside a jail is not required. On the " @@ -41287,7 +41605,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 操作手冊中有詳細說明。" #. (itstool) path: sect1/para -#: book.translate.xml:28108 +#: book.translate.xml:28115 msgid "" "Once a jail is installed, it can be started by using the " "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" @@ -41314,7 +41632,7 @@ msgstr "" "決定。" #. (itstool) path: sect1/para -#: book.translate.xml:28121 +#: book.translate.xml:28128 msgid "" "Jails are often started at boot time and the FreeBSD <filename>rc</filename> " "mechanism provides an easy way to do this." @@ -41323,7 +41641,7 @@ msgstr "" "簡單的達成這件事。" #. (itstool) path: step/para -#: book.translate.xml:28127 +#: book.translate.xml:28134 msgid "" "A list of the jails which are enabled to start at boot time should be added " "to the <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" @@ -41333,7 +41651,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 檔案中:" #. (itstool) path: step/programlisting -#: book.translate.xml:28130 +#: book.translate.xml:28137 #, no-wrap msgid "" "jail_enable=\"YES\" # Set to NO to disable starting of any jails\n" @@ -41341,14 +41659,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:28134 +#: book.translate.xml:28141 msgid "" "Jail names in <varname>jail_list</varname> should contain alphanumeric " "characters only." msgstr "在 <varname>jail_list</varname> 中的 Jail 名稱只允許使用英數字元。" #. (itstool) path: step/para -#: book.translate.xml:28140 +#: book.translate.xml:28147 msgid "" "For each jail listed in <varname>jail_list</varname>, a group of " "<citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" @@ -41360,7 +41678,7 @@ msgstr "" "manvolnum></citerefentry> 設定來描述指定的 Jail:" #. (itstool) path: step/programlisting -#: book.translate.xml:28144 +#: book.translate.xml:28151 #, no-wrap msgid "" "jail_<replaceable>www</replaceable>_rootdir=\"/usr/jail/www\" # jail's root directory\n" @@ -41370,7 +41688,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28149 +#: book.translate.xml:28156 msgid "" "The default startup of jails configured in <citerefentry><refentrytitle>rc." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, will run the " @@ -41387,7 +41705,7 @@ msgstr "" "修改預設啟動的指令。" #. (itstool) path: note/para -#: book.translate.xml:28158 +#: book.translate.xml:28165 msgid "" "For a full list of available options, please see the " "<citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</" @@ -41397,7 +41715,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 操作手冊。" #. (itstool) path: sect1/para -#: book.translate.xml:28164 +#: book.translate.xml:28171 msgid "" "<citerefentry><refentrytitle>service</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> can be used to start or stop a jail by hand, if an " @@ -41408,7 +41726,7 @@ msgstr "" "manvolnum></citerefentry> 來啟動或停止 Jail:" #. (itstool) path: sect1/screen -#: book.translate.xml:28168 +#: book.translate.xml:28175 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service jail start <replaceable>www</replaceable></userinput>\n" @@ -41416,7 +41734,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28171 +#: book.translate.xml:28178 msgid "" "Jails can be shut down with <citerefentry><refentrytitle>jexec</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. Use " @@ -41433,7 +41751,7 @@ msgstr "" "citerefentry> 在該 Jail 中執行關機 Script。" #. (itstool) path: sect1/screen -#: book.translate.xml:28175 +#: book.translate.xml:28182 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>jls</userinput>\n" @@ -41443,7 +41761,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28180 +#: book.translate.xml:28187 msgid "" "More information about this can be found in the " "<citerefentry><refentrytitle>jail</refentrytitle><manvolnum>8</manvolnum></" @@ -41453,12 +41771,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 操作手冊取得。" #. (itstool) path: sect1/title -#: book.translate.xml:28185 +#: book.translate.xml:28192 msgid "Fine Tuning and Administration" msgstr "調校與管理" #. (itstool) path: sect1/para -#: book.translate.xml:28187 +#: book.translate.xml:28194 msgid "" "There are several options which can be set for any jail, and various ways of " "combining a host FreeBSD system with jails, to produce higher level " @@ -41468,14 +41786,14 @@ msgstr "" "的方法來提供更高層級的應用程式使用。 本節將介紹:" #. (itstool) path: listitem/para -#: book.translate.xml:28194 +#: book.translate.xml:28201 msgid "" "Some of the options available for tuning the behavior and security " "restrictions implemented by a jail installation." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28200 +#: book.translate.xml:28207 msgid "" "Some of the high-level applications for jail management, which are available " "through the FreeBSD Ports Collection, and can be used to implement overall " @@ -41483,12 +41801,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28208 +#: book.translate.xml:28215 msgid "System Tools for Jail Tuning in FreeBSD" msgstr "在 FreeBSD 中調校 Jail 的系統工具" #. (itstool) path: sect2/para -#: book.translate.xml:28210 +#: book.translate.xml:28217 msgid "" "Fine tuning of a jail's configuration is mostly done by setting " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -41503,42 +41821,42 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28222 +#: book.translate.xml:28229 msgid "<varname>security.jail.set_hostname_allowed: 1</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28227 +#: book.translate.xml:28234 msgid "<varname>security.jail.socket_unixiproute_only: 1</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28232 +#: book.translate.xml:28239 msgid "<varname>security.jail.sysvipc_allowed: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28237 +#: book.translate.xml:28244 msgid "<varname>security.jail.enforce_statfs: 2</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28242 +#: book.translate.xml:28249 msgid "<varname>security.jail.allow_raw_sockets: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28247 +#: book.translate.xml:28254 msgid "<varname>security.jail.chflags_allowed: 0</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28252 +#: book.translate.xml:28259 msgid "<varname>security.jail.jailed: 0</varname>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28256 +#: book.translate.xml:28263 msgid "" "These variables can be used by the system administrator of the " "<emphasis>host system</emphasis> to add or remove some of the limitations " @@ -41556,7 +41874,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28268 +#: book.translate.xml:28275 msgid "" "The base system of FreeBSD contains a basic set of tools for viewing " "information about the active jails, and attaching to a jail to run " @@ -41568,14 +41886,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28276 +#: book.translate.xml:28283 msgid "" "Print a list of active jails and their corresponding jail identifier " "(<acronym>JID</acronym>), <acronym>IP</acronym> address, hostname and path." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28282 +#: book.translate.xml:28289 msgid "" "Attach to a running jail, from its host system, and run a command inside the " "jail or perform administrative tasks inside the jail itself. This is " @@ -41587,18 +41905,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:28290 +#: book.translate.xml:28297 #, no-wrap msgid "<prompt>#</prompt> <userinput>jexec <replaceable>1</replaceable> tcsh</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28296 +#: book.translate.xml:28303 msgid "High-Level Administrative Tools in the FreeBSD Ports Collection" msgstr "在 FreeBSD Port 套件集中的高層級管理工具" #. (itstool) path: sect2/para -#: book.translate.xml:28299 +#: book.translate.xml:28306 msgid "" "Among the many third-party utilities for jail administration, one of the " "most complete and useful is <package>sysutils/ezjail</package>. It is a set " @@ -41610,12 +41928,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28309 +#: book.translate.xml:28316 msgid "Keeping Jails Patched and up to Date" msgstr "持續 Jail 的修補與更新" #. (itstool) path: sect2/para -#: book.translate.xml:28311 +#: book.translate.xml:28318 msgid "" "Jails should be kept up to date from the host operating system as attempting " "to patch userland from within the jail may likely fail as the default " @@ -41629,7 +41947,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:28320 +#: book.translate.xml:28327 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update -b <replaceable>/here/is/the/jail</replaceable> fetch</userinput>\n" @@ -41637,33 +41955,33 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:28327 +#: book.translate.xml:28334 msgid "Updating Multiple Jails" msgstr "更新多個 Jail" #. (itstool) path: authorgroup/author -#: book.translate.xml:28330 book.translate.xml:34625 book.translate.xml:34960 +#: book.translate.xml:28337 book.translate.xml:34759 book.translate.xml:35094 msgid "" "<personname> <firstname>Daniel</firstname> <surname>Gerzo</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:28339 +#: book.translate.xml:28346 msgid "" "<personname> <firstname>Simon</firstname> <surname>L. B. Nielsen</surname> </" "personname> <contrib>Based upon an idea presented by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:28348 +#: book.translate.xml:28355 msgid "" "<personname> <firstname>Ken</firstname> <surname>Tom</surname> </personname> " "<contrib>And an article written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28358 +#: book.translate.xml:28365 msgid "" "The management of multiple jails can become problematic because every jail " "has to be rebuilt from scratch whenever it is upgraded. This can be time " @@ -41671,7 +41989,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28363 +#: book.translate.xml:28370 msgid "" "This section demonstrates one method to resolve this issue by safely sharing " "as much as is possible between jails using read-only " @@ -41683,7 +42001,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:28373 +#: book.translate.xml:28380 msgid "" "Simpler solutions exist, such as <application>ezjail</application>, which " "provides an easier method of administering FreeBSD jails but is less " @@ -41692,46 +42010,46 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28380 +#: book.translate.xml:28387 msgid "The goals of the setup described in this section are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28384 +#: book.translate.xml:28391 msgid "" "Create a simple and easy to understand jail structure that does not require " "running a full installworld on each and every jail." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28390 +#: book.translate.xml:28397 msgid "Make it easy to add new jails or remove existing ones." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28395 +#: book.translate.xml:28402 msgid "Make it easy to update or upgrade existing jails." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28399 +#: book.translate.xml:28406 msgid "Make it possible to run a customized FreeBSD branch." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28403 +#: book.translate.xml:28410 msgid "" "Be paranoid about security, reducing as much as possible the possibility of " "compromise." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28408 +#: book.translate.xml:28415 msgid "Save space and inodes, as much as possible." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28412 +#: book.translate.xml:28419 msgid "" "This design relies on a single, read-only master template which is mounted " "into each jail and one read-write device per jail. A device can be a " @@ -41740,68 +42058,68 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28418 +#: book.translate.xml:28425 msgid "The file system layout is as follows:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28422 +#: book.translate.xml:28429 msgid "The jails are based under the <filename>/home</filename> partition." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28427 +#: book.translate.xml:28434 msgid "" "Each jail will be mounted under the <filename>/home/j</filename> directory." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28432 +#: book.translate.xml:28439 msgid "" "The template for each jail and the read-only partition for all of the jails " "is <filename>/home/j/mroot</filename>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28438 +#: book.translate.xml:28445 msgid "" "A blank directory will be created for each jail under the <filename>/home/j</" "filename> directory." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28443 +#: book.translate.xml:28450 msgid "" "Each jail will have a <filename>/s</filename> directory that will be linked " "to the read-write portion of the system." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28449 +#: book.translate.xml:28456 msgid "" "Each jail will have its own read-write system that is based upon <filename>/" "home/j/skel</filename>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:28454 +#: book.translate.xml:28461 msgid "" "The read-write portion of each jail will be created in <filename>/home/js</" "filename>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28462 +#: book.translate.xml:28469 msgid "Creating the Template" msgstr "建立範本" #. (itstool) path: sect2/para -#: book.translate.xml:28464 +#: book.translate.xml:28471 msgid "This section describes the steps needed to create the master template." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28467 +#: book.translate.xml:28474 msgid "" "It is recommended to first update the host FreeBSD system to the latest -" "RELEASE branch using the instructions in <xref linkend=\"makeworld\"/>. " @@ -41811,7 +42129,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28475 +#: book.translate.xml:28482 msgid "" "First, create a directory structure for the read-only file system which will " "contain the FreeBSD binaries for the jails. Then, change directory to the " @@ -41820,7 +42138,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28481 +#: book.translate.xml:28488 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/j /home/j/mroot</userinput>\n" @@ -41829,14 +42147,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28487 +#: book.translate.xml:28494 msgid "" "Next, prepare a FreeBSD Ports Collection for the jails as well as a FreeBSD " "source tree, which is required for <application>mergemaster</application>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28491 +#: book.translate.xml:28498 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j/mroot</userinput>\n" @@ -41846,12 +42164,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28498 +#: book.translate.xml:28505 msgid "Create a skeleton for the read-write portion of the system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28501 +#: book.translate.xml:28508 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/j/skel /home/j/skel/home /home/j/skel/usr-X11R6 /home/j/skel/distfiles</userinput>\n" @@ -41863,7 +42181,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28510 +#: book.translate.xml:28517 msgid "" "Use <application>mergemaster</application> to install missing configuration " "files. Then, remove the extra directories that <application>mergemaster</" @@ -41871,7 +42189,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28515 +#: book.translate.xml:28522 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mergemaster -t /home/j/skel/var/tmp/temproot -D /home/j/skel -i</userinput>\n" @@ -41880,7 +42198,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28521 +#: book.translate.xml:28528 msgid "" "Now, symlink the read-write file system to the read-only file system. Ensure " "that the symlinks are created in the correct <filename>s/</filename> " @@ -41889,7 +42207,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28527 +#: book.translate.xml:28534 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j/mroot</userinput>\n" @@ -41905,20 +42223,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28540 +#: book.translate.xml:28547 msgid "" "As a last step, create a generic <filename>/home/j/skel/etc/make.conf</" "filename> containing this line:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28544 +#: book.translate.xml:28551 #, no-wrap msgid "WRKDIRPREFIX?= /s/portbuild" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28546 +#: book.translate.xml:28553 msgid "" "This makes it possible to compile FreeBSD ports inside each jail. Remember " "that the ports directory is part of the read-only system. The custom path " @@ -41927,12 +42245,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28556 +#: book.translate.xml:28563 msgid "Creating Jails" msgstr "建立 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:28558 +#: book.translate.xml:28565 msgid "" "The jail template can now be used to setup and configure the jails in " "<filename>/etc/rc.conf</filename>. This example demonstrates the creation of " @@ -41941,7 +42259,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28565 +#: book.translate.xml:28572 msgid "" "Add the following lines to <filename>/etc/fstab</filename>, so that the read-" "only template for the jails and the read-write space will be available in " @@ -41949,7 +42267,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28570 +#: book.translate.xml:28577 #, no-wrap msgid "" "/home/j/mroot /home/j/ns nullfs ro 0 0\n" @@ -41961,7 +42279,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28577 +#: book.translate.xml:28584 msgid "" "To prevent <application>fsck</application> from checking " "<application>nullfs</application> mounts during boot and <application>dump</" @@ -41970,12 +42288,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28586 +#: book.translate.xml:28593 msgid "Configure the jails in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28589 +#: book.translate.xml:28596 #, no-wrap msgid "" "jail_enable=\"YES\"\n" @@ -41996,7 +42314,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28605 +#: book.translate.xml:28612 msgid "" "The <varname>jail_<replaceable>name</replaceable>_rootdir</varname> variable " "is set to <filename>/usr/home</filename> instead of <filename>/home</" @@ -42008,26 +42326,26 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28619 +#: book.translate.xml:28626 msgid "" "Create the required mount points for the read-only file system of each jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28622 +#: book.translate.xml:28629 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir /home/j/ns /home/j/mail /home/j/www</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28626 +#: book.translate.xml:28633 msgid "" "Install the read-write template into each jail using <package>sysutils/" "cpdup</package>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28633 +#: book.translate.xml:28640 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/js</userinput>\n" @@ -42037,14 +42355,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28640 +#: book.translate.xml:28647 msgid "" "In this phase, the jails are built and prepared to run. First, mount the " "required file systems for each jail, and then start them:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28644 book.translate.xml:28753 +#: book.translate.xml:28651 book.translate.xml:28760 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount -a</userinput>\n" @@ -42052,14 +42370,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28649 +#: book.translate.xml:28656 msgid "" "The jails should be running now. To check if they have started correctly, " "use <command>jls</command>. Its output should be similar to the following:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:28653 +#: book.translate.xml:28660 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>jls</userinput>\n" @@ -42070,7 +42388,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28659 +#: book.translate.xml:28666 msgid "" "At this point, it should be possible to log onto each jail, add new users, " "or configure daemons. The <literal>JID</literal> column indicates the jail " @@ -42080,18 +42398,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:28666 +#: book.translate.xml:28673 #, no-wrap msgid "<prompt>#</prompt> <userinput>jexec 3 tcsh</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28670 +#: book.translate.xml:28677 msgid "Upgrading" msgstr "升級" #. (itstool) path: sect2/para -#: book.translate.xml:28672 +#: book.translate.xml:28679 msgid "" "The design of this setup provides an easy way to upgrade existing jails " "while minimizing their downtime. Also, it provides a way to roll back to the " @@ -42099,14 +42417,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28679 +#: book.translate.xml:28686 msgid "" "The first step is to upgrade the host system. Then, create a new temporary " "read-only template in <filename>/home/j/mroot2</filename>." msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28683 +#: book.translate.xml:28690 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /home/j/mroot2</userinput>\n" @@ -42118,20 +42436,19 @@ msgid "" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:28690 book.translate.xml:28901 book.translate.xml:45421 -#: book.translate.xml:45425 book.translate.xml:45571 book.translate.xml:45607 +#: book.translate.xml:28697 book.translate.xml:28908 msgid "installworld" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28690 +#: book.translate.xml:28697 msgid "" "The <_:buildtarget-1/> creates a few unnecessary directories, which should " "be removed:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28694 +#: book.translate.xml:28701 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chflags -R 0 var</userinput>\n" @@ -42139,12 +42456,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28699 +#: book.translate.xml:28706 msgid "Recreate the read-write symlinks for the master file system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28702 +#: book.translate.xml:28709 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ln -s s/etc etc</userinput>\n" @@ -42157,25 +42474,25 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28712 +#: book.translate.xml:28719 msgid "Next, stop the jails:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28714 +#: book.translate.xml:28721 #, no-wrap msgid "<prompt>#</prompt> <userinput>service jail stop</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28718 +#: book.translate.xml:28725 msgid "" "Unmount the original file systems as the read-write systems are attached to " "the read-only system (<filename>/s</filename>):" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28725 +#: book.translate.xml:28732 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /home/j/ns/s</userinput>\n" @@ -42187,7 +42504,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28734 +#: book.translate.xml:28741 msgid "" "Move the old read-only file system and replace it with the new one. This " "will serve as a backup and archive of the old read-only file system should " @@ -42197,7 +42514,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28742 +#: book.translate.xml:28749 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /home/j</userinput>\n" @@ -42207,14 +42524,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28749 +#: book.translate.xml:28756 msgid "" "At this point the new read-only template is ready, so the only remaining " "task is to remount the file systems and start the jails:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28758 +#: book.translate.xml:28765 msgid "" "Use <command>jls</command> to check if the jails started correctly. Run " "<command>mergemaster</command> in each jail to update the configuration " @@ -42222,12 +42539,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:28766 +#: book.translate.xml:28773 msgid "Managing Jails with <application>ezjail</application>" msgstr "使用 <application>ezjail</application> 管理 Jail" #. (itstool) path: sect1/para -#: book.translate.xml:28779 +#: book.translate.xml:28786 msgid "" "Creating and managing multiple jails can quickly become tedious and error-" "prone. Dirk Engling's <application>ezjail</application> automates and " @@ -42241,7 +42558,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:28790 +#: book.translate.xml:28797 msgid "" "Additional benefits and features are described in detail on the " "<application>ezjail</application> web site, <link xlink:href=\"https://" @@ -42249,12 +42566,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28794 +#: book.translate.xml:28801 msgid "Installing <application>ezjail</application>" msgstr "安裝 <application>ezjail</application>" #. (itstool) path: sect2/para -#: book.translate.xml:28796 +#: book.translate.xml:28803 msgid "" "Installing <application>ezjail</application> consists of adding a loopback " "interface for use in jails, installing the port or package, and enabling the " @@ -42262,7 +42579,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28802 +#: book.translate.xml:28809 msgid "" "To keep jail loopback traffic off the host's loopback network interface " "<literal>lo0</literal>, a second loopback interface is created by adding an " @@ -42271,13 +42588,13 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: example/programlisting -#: book.translate.xml:28807 book.translate.xml:29296 +#: book.translate.xml:28814 book.translate.xml:29303 #, no-wrap msgid "cloned_interfaces=\"lo1\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28809 +#: book.translate.xml:28816 msgid "" "The second loopback interface <literal>lo1</literal> will be created when " "the system starts. It can also be created manually without a restart:" @@ -42285,7 +42602,7 @@ msgstr "" #. (itstool) path: step/screen #. (itstool) path: example/screen -#: book.translate.xml:28813 book.translate.xml:29300 +#: book.translate.xml:28820 book.translate.xml:29307 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif cloneup</userinput>\n" @@ -42293,14 +42610,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28816 +#: book.translate.xml:28823 msgid "" "Jails can be allowed to use aliases of this secondary loopback interface " "without interfering with the host." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28820 +#: book.translate.xml:28827 msgid "" "Inside a jail, access to the loopback address <systemitem class=\"ipaddress" "\">127.0.0.1</systemitem> is redirected to the first <acronym>IP</acronym> " @@ -42311,7 +42628,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28829 +#: book.translate.xml:28836 msgid "" "Give each jail a unique loopback address in the <systemitem class=\"ipaddress" "\">127.0.0.0</systemitem><systemitem class=\"netmask\">/8</systemitem> " @@ -42319,12 +42636,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28834 +#: book.translate.xml:28841 msgid "Install <package role=\"port\">sysutils/ezjail</package>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28837 +#: book.translate.xml:28844 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/sysutils/ezjail</userinput>\n" @@ -42332,33 +42649,33 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28842 +#: book.translate.xml:28849 msgid "" "Enable <application>ezjail</application> by adding this line to <filename>/" "etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:28845 +#: book.translate.xml:28852 #, no-wrap msgid "ezjail_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28849 +#: book.translate.xml:28856 msgid "" "The service will automatically start on system boot. It can be started " "immediately for the current session:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28853 +#: book.translate.xml:28860 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ezjail start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28861 +#: book.translate.xml:28868 msgid "" "With <application>ezjail</application> installed, the basejail directory " "structure can be created and populated. This step is only needed once on the " @@ -42366,7 +42683,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:28866 +#: book.translate.xml:28873 msgid "" "In both of these examples, <option>-p</option> causes the ports tree to be " "retrieved with <citerefentry><refentrytitle>portsnap</" @@ -42379,12 +42696,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28878 +#: book.translate.xml:28885 msgid "To Populate the Jail with FreeBSD-RELEASE" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28880 +#: book.translate.xml:28887 msgid "" "For a basejail based on the FreeBSD RELEASE matching that of the host " "computer, use <command>install</command>. For example, on a host computer " @@ -42393,30 +42710,30 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28887 +#: book.translate.xml:28894 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin install -p</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:28891 +#: book.translate.xml:28898 msgid "To Populate the Jail with <command>installworld</command>" msgstr "" #. (itstool) path: para/buildtarget -#: book.translate.xml:28895 book.translate.xml:45569 +#: book.translate.xml:28902 book.translate.xml:45547 book.translate.xml:45614 msgid "buildworld" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28894 +#: book.translate.xml:28901 msgid "" "The basejail can be installed from binaries created by <_:buildtarget-1/> on " "the host with <command>ezjail-admin update</command>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28899 +#: book.translate.xml:28906 msgid "" "In this example, FreeBSD 10-STABLE has been built from source. The jail " "directories are created. Then <_:buildtarget-1/> is executed, installing the " @@ -42424,13 +42741,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28906 +#: book.translate.xml:28913 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -i -p</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28908 +#: book.translate.xml:28915 msgid "" "The host's <filename>/usr/src</filename> is used by default. A different " "source directory on the host can be specified with <option>-s</option> and a " @@ -42439,7 +42756,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28919 +#: book.translate.xml:28926 msgid "" "The basejail's ports tree is shared by other jails. However, downloaded " "distfiles are stored in the jail that downloaded them. By default, these " @@ -42449,7 +42766,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28928 +#: book.translate.xml:28935 msgid "" "The <acronym>FTP</acronym> protocol is used by default to download packages " "for the installation of the basejail. Firewall or proxy configurations can " @@ -42461,23 +42778,23 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:28937 +#: book.translate.xml:28944 #, no-wrap msgid "ezjail_ftphost=http://<replaceable>ftp.FreeBSD.org</replaceable>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28939 +#: book.translate.xml:28946 msgid "See <xref linkend=\"mirrors-ftp\"/> for a list of sites." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:28945 +#: book.translate.xml:28952 msgid "Creating and Starting a New Jail" msgstr "建立並啟動新的 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:28947 +#: book.translate.xml:28954 msgid "" "New jails are created with <command>ezjail-admin create</command>. In these " "examples, the <literal>lo1</literal> loopback interface is used as described " @@ -42485,12 +42802,12 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:28953 +#: book.translate.xml:28960 msgid "Create and Start a New Jail" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28956 +#: book.translate.xml:28963 msgid "" "Create the jail, specifying a name and the loopback and network interfaces " "to use, along with their <acronym>IP</acronym> addresses. In this example, " @@ -42498,13 +42815,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28961 +#: book.translate.xml:28968 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin create <replaceable>dnsjail</replaceable> '<replaceable>lo1|127.0.1.1</replaceable>,<replaceable>em0</replaceable>|<replaceable>192.168.1.50</replaceable>'</userinput>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28964 +#: book.translate.xml:28971 msgid "" "Most network services run in jails without problems. A few network services, " "most notably <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</" @@ -42514,7 +42831,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28971 +#: book.translate.xml:28978 msgid "" "Occasionally, a jail genuinely needs raw sockets. For example, network " "monitoring applications often use <citerefentry><refentrytitle>ping</" @@ -42527,61 +42844,61 @@ msgid "" msgstr "" #. (itstool) path: tip/programlisting -#: book.translate.xml:28982 +#: book.translate.xml:28989 #, no-wrap msgid "export jail_<replaceable>jailname</replaceable>_parameters=\"allow.raw_sockets=1\"" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:28984 +#: book.translate.xml:28991 msgid "" "Do not enable raw network sockets unless services in the jail actually " "require them." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28990 +#: book.translate.xml:28997 msgid "Start the jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28992 +#: book.translate.xml:28999 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin start <replaceable>dnsjail</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:28996 +#: book.translate.xml:29003 msgid "Use a console on the jail:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:28998 +#: book.translate.xml:29005 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>dnsjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29002 +#: book.translate.xml:29009 msgid "" "The jail is operating and additional configuration can be completed. Typical " "settings added at this point include:" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:29008 +#: book.translate.xml:29015 msgid "Set the <systemitem class=\"username\">root</systemitem> Password" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:29012 +#: book.translate.xml:29019 msgid "" "Connect to the jail and set the <systemitem class=\"username\">root</" "systemitem> user's password:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:29016 +#: book.translate.xml:29023 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>dnsjail</replaceable></userinput>\n" @@ -42592,12 +42909,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:29024 +#: book.translate.xml:29031 msgid "Time Zone Configuration" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:29026 +#: book.translate.xml:29033 msgid "" "The jail's time zone can be set with <citerefentry><refentrytitle>tzsetup</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. To avoid spurious " @@ -42609,36 +42926,36 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:29035 +#: book.translate.xml:29042 msgid "<acronym>DNS</acronym> Servers" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:29037 +#: book.translate.xml:29044 msgid "" "Enter domain name server lines in <filename>/etc/resolv.conf</filename> so " "<acronym>DNS</acronym> works in the jail." msgstr "" #. (itstool) path: step/title -#: book.translate.xml:29043 +#: book.translate.xml:29050 msgid "Edit <filename>/etc/hosts</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:29045 +#: book.translate.xml:29052 msgid "" "Change the address and add the jail name to the <literal>localhost</literal> " "entries in <filename>/etc/hosts</filename>." msgstr "" #. (itstool) path: step/title -#: book.translate.xml:29051 +#: book.translate.xml:29058 msgid "Configure <filename>/etc/rc.conf</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:29053 +#: book.translate.xml:29060 msgid "" "Enter configuration settings in <filename>/etc/rc.conf</filename>. This is " "much like configuring a full computer. The host name and <acronym>IP</" @@ -42647,14 +42964,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29062 +#: book.translate.xml:29069 msgid "" "With the jail configured, the applications for which the jail was created " "can be installed." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:29066 +#: book.translate.xml:29073 msgid "" "Some ports must be built with special options to be used in a jail. For " "example, both of the network monitoring plugin packages <package role=\"port" @@ -42664,17 +42981,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29077 +#: book.translate.xml:29084 msgid "Updating Jails" msgstr "更新 Jail" #. (itstool) path: sect3/title -#: book.translate.xml:29080 +#: book.translate.xml:29087 msgid "Updating the Operating System" msgstr "更新作業系統" #. (itstool) path: sect3/para -#: book.translate.xml:29082 +#: book.translate.xml:29089 msgid "" "Because the basejail's copy of the userland is shared by the other jails, " "updating the basejail automatically updates all of the other jails. Either " @@ -42682,33 +42999,33 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29087 +#: book.translate.xml:29094 msgid "" "To build the world from source on the host, then install it in the basejail, " "use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29090 +#: book.translate.xml:29097 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -b</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29092 +#: book.translate.xml:29099 msgid "" "If the world has already been compiled on the host, install it in the " "basejail with:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29095 +#: book.translate.xml:29102 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -i</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29097 +#: book.translate.xml:29104 msgid "" "Binary updates use <citerefentry><refentrytitle>freebsd-update</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. These updates have " @@ -42719,20 +43036,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29103 +#: book.translate.xml:29110 msgid "" "Update the basejail to the latest patched release of the version of FreeBSD " "on the host. For example, updating from RELEASE-p1 to RELEASE-p2." msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29107 +#: book.translate.xml:29114 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -u</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29109 +#: book.translate.xml:29116 msgid "" "To upgrade the basejail to a new version, first upgrade the host system as " "described in <xref linkend=\"freebsdupdate-upgrade\"/>. Once the host has " @@ -42746,7 +43063,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29117 +#: book.translate.xml:29124 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>file /usr/jails/basejail/bin/sh</userinput>\n" @@ -42754,20 +43071,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29120 +#: book.translate.xml:29127 msgid "" "Now use this information to perform the upgrade from <literal>9.3-RELEASE</" "literal> to the current version of the host system:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29124 +#: book.translate.xml:29131 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -U -s <replaceable>9.3-RELEASE</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29126 +#: book.translate.xml:29133 msgid "" "After updating the basejail, <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> must be run to update " @@ -42775,7 +43092,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29129 +#: book.translate.xml:29136 msgid "" "How to use <citerefentry><refentrytitle>mergemaster</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> depends on the purpose " @@ -42786,7 +43103,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:29135 +#: book.translate.xml:29142 msgid "" "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on Untrusted Jail" @@ -42795,7 +43112,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" #. (itstool) path: example/para -#: book.translate.xml:29137 +#: book.translate.xml:29144 msgid "" "Delete the link from the jail's <filename>/usr/src</filename> into the " "basejail and create a new <filename>/usr/src</filename> in the jail as a " @@ -42804,7 +43121,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29144 +#: book.translate.xml:29151 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rm /usr/jails/<replaceable>jailname</replaceable>/usr/src</userinput>\n" @@ -42813,25 +43130,25 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29148 +#: book.translate.xml:29155 msgid "Get a console in the jail:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29150 +#: book.translate.xml:29157 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin console <replaceable>jailname</replaceable></userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29152 +#: book.translate.xml:29159 msgid "" "Inside the jail, run <command>mergemaster</command>. Then exit the jail " "console:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29155 +#: book.translate.xml:29162 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -42840,18 +43157,18 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29159 +#: book.translate.xml:29166 msgid "Finally, unmount the jail's <filename>/usr/src</filename>:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29162 +#: book.translate.xml:29169 #, no-wrap msgid "<prompt>#</prompt> <userinput>umount /usr/jails/<replaceable>jailname</replaceable>/usr/src</userinput>" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:29167 +#: book.translate.xml:29174 msgid "" "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on Trusted Jail" @@ -42860,7 +43177,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" #. (itstool) path: example/para -#: book.translate.xml:29169 +#: book.translate.xml:29176 msgid "" "If the users and services in a jail are trusted, " "<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" @@ -42868,25 +43185,25 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29172 +#: book.translate.xml:29179 #, no-wrap msgid "<prompt>#</prompt> <userinput>mergemaster -U -D /usr/jails/<replaceable>jailname</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:29177 +#: book.translate.xml:29184 msgid "Updating Ports" msgstr "更新 Port" #. (itstool) path: sect3/para -#: book.translate.xml:29179 +#: book.translate.xml:29186 msgid "" "The ports tree in the basejail is shared by the other jails. Updating that " "copy of the ports tree gives the other jails the updated version also." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29183 +#: book.translate.xml:29190 msgid "" "The basejail ports tree is updated with " "<citerefentry><refentrytitle>portsnap</refentrytitle><manvolnum>8</" @@ -42894,23 +43211,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29186 +#: book.translate.xml:29193 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin update -P</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29191 +#: book.translate.xml:29198 msgid "Controlling Jails" msgstr "控制 Jail" #. (itstool) path: sect3/title -#: book.translate.xml:29194 +#: book.translate.xml:29201 msgid "Stopping and Starting Jails" msgstr "停止與啟動 Jail" #. (itstool) path: sect3/para -#: book.translate.xml:29196 +#: book.translate.xml:29203 msgid "" "<application>ezjail</application> automatically starts jails when the " "computer is started. Jails can be manually stopped and restarted with " @@ -42918,7 +43235,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29201 +#: book.translate.xml:29208 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin stop <replaceable>sambajail</replaceable></userinput>\n" @@ -42926,43 +43243,43 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29204 +#: book.translate.xml:29211 msgid "" "By default, jails are started automatically when the host computer starts. " "Autostarting can be disabled with <command>config</command>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29208 +#: book.translate.xml:29215 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin config -r norun <replaceable>seldomjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29210 +#: book.translate.xml:29217 msgid "" "This takes effect the next time the host computer is started. A jail that is " "already running will not be stopped." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29214 +#: book.translate.xml:29221 msgid "Enabling autostart is very similar:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29216 +#: book.translate.xml:29223 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin config -r run <replaceable>oftenjail</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:29220 +#: book.translate.xml:29227 msgid "Archiving and Restoring Jails" msgstr "封存與還原 Jail" #. (itstool) path: sect3/para -#: book.translate.xml:29222 +#: book.translate.xml:29229 msgid "" "Use <command>archive</command> to create a <filename>.tar.gz</filename> " "archive of a jail. The file name is composed from the name of the jail and " @@ -42973,7 +43290,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29231 +#: book.translate.xml:29238 msgid "" "The archive file can be copied elsewhere as a backup, or an existing jail " "can be restored from it with <command>restore</command>. A new jail can be " @@ -42981,12 +43298,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29237 +#: book.translate.xml:29244 msgid "Stop and archive a jail named <literal>wwwserver</literal>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29240 +#: book.translate.xml:29247 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin stop <replaceable>wwwserver</replaceable></userinput>\n" @@ -42997,7 +43314,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:29246 +#: book.translate.xml:29253 msgid "" "Create a new jail named <literal>wwwserver-clone</literal> from the archive " "created in the previous step. Use the <filename>em1</filename> interface and " @@ -43006,18 +43323,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:29252 +#: book.translate.xml:29259 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin create -a /usr/jails/ezjail_archives/wwwserver-201407271153.13.tar.gz <replaceable>wwwserver-clone</replaceable> 'lo1|127.0.3.1,em1|192.168.1.51'</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29257 +#: book.translate.xml:29264 msgid "Full Example: <application>BIND</application> in a Jail" msgstr "完整範例:在 Jail 中安裝 <application>BIND</application>" #. (itstool) path: sect2/para -#: book.translate.xml:29260 +#: book.translate.xml:29267 msgid "" "Putting the <application>BIND</application> <acronym>DNS</acronym> server in " "a jail improves security by isolating it. This example creates a simple " @@ -43025,68 +43342,68 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29267 +#: book.translate.xml:29274 msgid "The jail will be called <literal>dns1</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29272 +#: book.translate.xml:29279 msgid "" "The jail will use <acronym>IP</acronym> address <literal>192.168.1.240</" "literal> on the host's <literal>re0</literal> interface." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29278 +#: book.translate.xml:29285 msgid "" "The upstream <acronym>ISP</acronym>'s DNS servers are at <literal>10.0.0.62</" "literal> and <literal>10.0.0.61</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29284 +#: book.translate.xml:29291 msgid "" "The basejail has already been created and a ports tree installed as shown in " "<xref linkend=\"jails-ezjail-initialsetup\"/>." msgstr "" #. (itstool) path: example/title -#: book.translate.xml:29291 +#: book.translate.xml:29298 msgid "Running BIND in a Jail" msgstr "在 Jail 中執行 BIND" #. (itstool) path: example/para -#: book.translate.xml:29293 +#: book.translate.xml:29300 msgid "" "Create a cloned loopback interface by adding a line to <filename>/etc/rc." "conf</filename>:" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29298 +#: book.translate.xml:29305 msgid "Immediately create the new loopback interface:" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29303 +#: book.translate.xml:29310 msgid "Create the jail:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29305 +#: book.translate.xml:29312 #, no-wrap msgid "<prompt>#</prompt> <userinput>ezjail-admin create dns1 'lo1|127.0.2.1,re0|192.168.1.240'</userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29307 +#: book.translate.xml:29314 msgid "" "Start the jail, connect to a console running on it, and perform some basic " "configuration:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29310 +#: book.translate.xml:29317 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ezjail-admin start dns1</userinput>\n" @@ -43101,14 +43418,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29320 +#: book.translate.xml:29327 msgid "" "Temporarily set the upstream <acronym>DNS</acronym> servers in <filename>/" "etc/resolv.conf</filename> so ports can be downloaded:" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29324 +#: book.translate.xml:29331 #, no-wrap msgid "" "nameserver 10.0.0.62\n" @@ -43116,27 +43433,27 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29327 +#: book.translate.xml:29334 msgid "" "Still using the jail console, install <package role=\"port\">dns/bind99</" "package>." msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29330 +#: book.translate.xml:29337 #, no-wrap msgid "<prompt>#</prompt> <userinput>make -C /usr/ports/dns/bind99 install clean</userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29332 +#: book.translate.xml:29339 msgid "" "Configure the name server by editing <filename>/usr/local/etc/namedb/named." "conf</filename>." msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29335 +#: book.translate.xml:29342 msgid "" "Create an Access Control List (<acronym>ACL</acronym>) of addresses and " "networks that are permitted to send <acronym>DNS</acronym> queries to this " @@ -43145,7 +43462,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29341 +#: book.translate.xml:29348 #, no-wrap msgid "" "...\n" @@ -43162,7 +43479,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29353 +#: book.translate.xml:29360 msgid "" "Use the jail <acronym>IP</acronym> address in the <literal>listen-on</" "literal> setting to accept <acronym>DNS</acronym> queries from other " @@ -43170,13 +43487,13 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29358 +#: book.translate.xml:29365 #, no-wrap msgid "\tlisten-on\t{ 192.168.1.240; };" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29360 +#: book.translate.xml:29367 msgid "" "A simple caching-only <acronym>DNS</acronym> name server is created by " "changing the <literal>forwarders</literal> section. The original file " @@ -43184,7 +43501,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29364 +#: book.translate.xml:29371 #, no-wrap msgid "" "/*\n" @@ -43195,7 +43512,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29370 +#: book.translate.xml:29377 msgid "" "Uncomment the section by removing the <literal>/*</literal> and <literal>*/</" "literal> lines. Enter the <acronym>IP</acronym> addresses of the upstream " @@ -43205,7 +43522,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29378 +#: book.translate.xml:29385 #, no-wrap msgid "" "\tforwarders {\n" @@ -43219,24 +43536,24 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29387 +#: book.translate.xml:29394 msgid "Enable the service in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: example/programlisting #. (itstool) path: sect3/programlisting -#: book.translate.xml:29390 book.translate.xml:55634 +#: book.translate.xml:29397 book.translate.xml:55255 #, no-wrap msgid "named_enable=\"YES\"" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29392 +#: book.translate.xml:29399 msgid "Start and test the name server:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29394 +#: book.translate.xml:29401 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service named start</userinput>\n" @@ -43246,31 +43563,31 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29399 +#: book.translate.xml:29406 msgid "A response that includes" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29401 +#: book.translate.xml:29408 #, no-wrap msgid ";; Got answer;" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29403 +#: book.translate.xml:29410 msgid "" "shows that the new <acronym>DNS</acronym> server is working. A long delay " "followed by a response including" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:29407 +#: book.translate.xml:29414 #, no-wrap msgid ";; connection timed out; no servers could be reached" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29409 +#: book.translate.xml:29416 msgid "" "shows a problem. Check the configuration settings and make sure any local " "firewalls allow the new <acronym>DNS</acronym> access to the upstream " @@ -43278,7 +43595,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29414 +#: book.translate.xml:29421 msgid "" "The new <acronym>DNS</acronym> server can use itself for local name " "resolution, just like other local computers. Set the address of the " @@ -43287,13 +43604,13 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:29420 +#: book.translate.xml:29427 #, no-wrap msgid "nameserver 192.168.1.240" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:29422 +#: book.translate.xml:29429 msgid "" "A local <acronym>DHCP</acronym> server can be configured to provide this " "address for a local <acronym>DNS</acronym> server, providing automatic " @@ -43302,22 +43619,22 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: glossentry/glossterm -#: book.translate.xml:29438 book.translate.xml:65535 +#: book.translate.xml:29445 book.translate.xml:65535 msgid "Mandatory Access Control" msgstr "強制存取控制 (MAC)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:29449 +#: book.translate.xml:29456 msgid "<primary>MAC</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:29450 +#: book.translate.xml:29457 msgid "<primary>Mandatory Access Control</primary> <see>MAC</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29455 +#: book.translate.xml:29462 msgid "" "FreeBSD supports security extensions based on the <trademark class=" "\"registered\">POSIX</trademark>.1e draft. These security mechanisms include " @@ -43334,7 +43651,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29470 +#: book.translate.xml:29477 msgid "" "This chapter focuses on the <acronym>MAC</acronym> framework and the set of " "pluggable security policy modules FreeBSD provides for enabling various " @@ -43342,54 +43659,54 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29478 +#: book.translate.xml:29485 msgid "The terminology associated with the <acronym>MAC</acronym> framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29483 +#: book.translate.xml:29490 msgid "" "The capabilities of <acronym>MAC</acronym> security policy modules as well " "as the difference between a labeled and non-labeled policy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29489 +#: book.translate.xml:29496 msgid "" "The considerations to take into account before configuring a system to use " "the <acronym>MAC</acronym> framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29494 +#: book.translate.xml:29501 msgid "" "Which <acronym>MAC</acronym> security policy modules are included in FreeBSD " "and how to configure them." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29499 +#: book.translate.xml:29506 msgid "" "How to implement a more secure environment using the <acronym>MAC</acronym> " "framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29504 +#: book.translate.xml:29511 msgid "" "How to test the <acronym>MAC</acronym> configuration to ensure the framework " "has been properly implemented." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29518 book.translate.xml:31271 book.translate.xml:46275 +#: book.translate.xml:29525 book.translate.xml:31278 book.translate.xml:45896 msgid "" "Have some familiarity with security and how it pertains to FreeBSD (<xref " "linkend=\"security\"/>)." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:29524 +#: book.translate.xml:29531 msgid "" "Improper <acronym>MAC</acronym> configuration may cause loss of system " "access, aggravation of users, or inability to access the features provided " @@ -43401,7 +43718,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:29534 +#: book.translate.xml:29541 msgid "" "The examples contained within this chapter are for demonstration purposes " "and the example settings should <emphasis>not</emphasis> be implemented on a " @@ -43410,7 +43727,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29541 +#: book.translate.xml:29548 msgid "" "While this chapter covers a broad range of security issues relating to the " "<acronym>MAC</acronym> framework, the development of new <acronym>MAC</" @@ -43426,19 +43743,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29554 book.translate.xml:31296 +#: book.translate.xml:29561 book.translate.xml:31303 msgid "Key Terms" msgstr "關鍵詞" #. (itstool) path: sect1/para -#: book.translate.xml:29556 +#: book.translate.xml:29563 msgid "" "The following key terms are used when referring to the <acronym>MAC</" "acronym> framework:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29561 +#: book.translate.xml:29568 msgid "" "<emphasis>compartment</emphasis>: a set of programs and data to be " "partitioned or separated, where users are given explicit access to specific " @@ -43448,7 +43765,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29571 +#: book.translate.xml:29578 msgid "" "<emphasis>integrity</emphasis>: the level of trust which can be placed on " "data. As the integrity of the data is elevated, so does the ability to trust " @@ -43456,7 +43773,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29577 +#: book.translate.xml:29584 msgid "" "<emphasis>level</emphasis>: the increased or decreased setting of a security " "attribute. As the level increases, its security is considered to elevate as " @@ -43464,7 +43781,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29583 +#: book.translate.xml:29590 msgid "" "<emphasis>label</emphasis>: a security attribute which can be applied to " "files, directories, or other items in the system. It could be considered a " @@ -43477,7 +43794,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29597 +#: book.translate.xml:29604 msgid "" "<emphasis>multilabel</emphasis>: this property is a file system option which " "can be set in single-user mode using <citerefentry><refentrytitle>tunefs</" @@ -43490,7 +43807,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29607 +#: book.translate.xml:29614 msgid "" "<emphasis>single label</emphasis>: a policy where the entire file system " "uses one label to enforce access control over the flow of data. Whenever " @@ -43499,7 +43816,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29615 +#: book.translate.xml:29622 msgid "" "<emphasis>object</emphasis>: an entity through which information flows under " "the direction of a <emphasis>subject</emphasis>. This includes directories, " @@ -43509,7 +43826,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29625 +#: book.translate.xml:29632 msgid "" "<emphasis>subject</emphasis>: any active entity that causes information to " "flow between <emphasis>objects</emphasis> such as a user, user process, or " @@ -43518,7 +43835,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29633 +#: book.translate.xml:29640 msgid "" "<emphasis>policy</emphasis>: a collection of rules which defines how " "objectives are to be achieved. A policy usually documents how certain items " @@ -43528,7 +43845,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29642 +#: book.translate.xml:29649 msgid "" "<emphasis>high-watermark</emphasis>: this type of policy permits the raising " "of security levels for the purpose of accessing higher level information. In " @@ -43538,7 +43855,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29651 +#: book.translate.xml:29658 msgid "" "<emphasis>low-watermark</emphasis>: this type of policy permits lowering " "security levels for the purpose of accessing information which is less " @@ -43549,7 +43866,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29660 +#: book.translate.xml:29667 msgid "" "<emphasis>sensitivity</emphasis>: usually used when discussing Multilevel " "Security (<acronym>MLS</acronym>). A sensitivity level describes how " @@ -43558,12 +43875,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29671 +#: book.translate.xml:29678 msgid "Understanding MAC Labels" msgstr "了解 MAC 標籤" #. (itstool) path: sect1/para -#: book.translate.xml:29673 +#: book.translate.xml:29680 msgid "" "A <acronym>MAC</acronym> label is a security attribute which may be applied " "to subjects and objects throughout the system. When setting a label, the " @@ -43574,7 +43891,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29681 +#: book.translate.xml:29688 msgid "" "The security label on an object is used as a part of a security access " "control decision by a policy. With some policies, the label contains all of " @@ -43583,7 +43900,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29687 +#: book.translate.xml:29694 msgid "" "There are two types of label policies: single label and multi label. By " "default, the system will use single label. The administrator should be aware " @@ -43592,7 +43909,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29693 +#: book.translate.xml:29700 msgid "" "A single label security policy only permits one label to be used for every " "subject or object. Since a single label policy enforces one set of access " @@ -43603,7 +43920,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29701 +#: book.translate.xml:29708 msgid "" "A single label policy is somewhat similar to <acronym>DAC</acronym> as " "<systemitem class=\"username\">root</systemitem> configures the policies so " @@ -43615,7 +43932,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29710 +#: book.translate.xml:29717 msgid "" "When appropriate, a multi label policy can be set on a <acronym>UFS</" "acronym> file system by passing <option>multilabel</option> to " @@ -43630,7 +43947,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29722 +#: book.translate.xml:29729 msgid "" "Using a multi label policy on a partition and establishing a multi label " "security model can increase administrative overhead as everything in that " @@ -43639,7 +43956,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29727 +#: book.translate.xml:29734 msgid "" "The following command will set <option>multilabel</option> on the specified " "<acronym>UFS</acronym> file system. This may only be done in single-user " @@ -43647,13 +43964,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:29732 +#: book.translate.xml:29739 #, no-wrap msgid "<prompt>#</prompt> <userinput>tunefs -l enable /</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:29735 +#: book.translate.xml:29742 msgid "" "Some users have experienced problems with setting the <option>multilabel</" "option> flag on the root partition. If this is the case, please review <xref " @@ -43661,7 +43978,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:29740 +#: book.translate.xml:29747 msgid "" "Since the multi label policy is set on a per-file system basis, a multi " "label policy may not be needed if the file system layout is well designed. " @@ -43674,12 +43991,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29752 +#: book.translate.xml:29759 msgid "Label Configuration" msgstr "標籤設定" #. (itstool) path: sect2/para -#: book.translate.xml:29754 +#: book.translate.xml:29761 msgid "" "Virtually all aspects of label policy module configuration will be performed " "using the base system utilities. These commands provide a simple interface " @@ -43688,7 +44005,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29760 +#: book.translate.xml:29767 msgid "" "All configuration may be done using <command>setfmac</command>, which is " "used to set <acronym>MAC</acronym> labels on system objects, and " @@ -43698,13 +44015,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29768 +#: book.translate.xml:29775 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfmac biba/high test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29770 +#: book.translate.xml:29777 msgid "" "If the configuration is successful, the prompt will be returned without " "error. A common error is <errorname>Permission denied</errorname> which " @@ -43721,7 +44038,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29786 +#: book.translate.xml:29793 msgid "" "The system administrator may use <command>setpmac</command> to override the " "policy module's settings by assigning a different label to the invoked " @@ -43729,7 +44046,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29791 +#: book.translate.xml:29798 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac biba/high test</userinput>\n" @@ -43740,7 +44057,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29797 +#: book.translate.xml:29804 msgid "" "For currently running processes, such as <application>sendmail</" "application>, <command>getpmac</command> is usually used instead. This " @@ -43751,12 +44068,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29808 +#: book.translate.xml:29815 msgid "Predefined Labels" msgstr "預先定義的標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29810 +#: book.translate.xml:29817 msgid "" "A few FreeBSD policy modules which support the labeling feature offer three " "predefined labels: <literal>low</literal>, <literal>equal</literal>, and " @@ -43764,7 +44081,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29817 +#: book.translate.xml:29824 msgid "" "<literal>low</literal> is considered the lowest label setting an object or " "subject may have. Setting this on objects or subjects blocks their access to " @@ -43772,7 +44089,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29824 +#: book.translate.xml:29831 msgid "" "<literal>equal</literal> sets the subject or object to be disabled or " "unaffected and should only be placed on objects considered to be exempt from " @@ -43780,14 +44097,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29830 +#: book.translate.xml:29837 msgid "" "<literal>high</literal> grants an object or subject the highest setting " "available in the Biba and <acronym>MLS</acronym> policy modules." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29836 +#: book.translate.xml:29843 msgid "" "Such policy modules include <citerefentry><refentrytitle>mac_biba</" "refentrytitle><manvolnum>4</manvolnum></citerefentry>, " @@ -43800,12 +44117,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29844 +#: book.translate.xml:29851 msgid "Numeric Labels" msgstr "數值標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29846 +#: book.translate.xml:29853 msgid "" "The Biba and <acronym>MLS</acronym> policy modules support a numeric label " "which may be set to indicate the precise level of hierarchical control. This " @@ -43815,20 +44132,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:29853 +#: book.translate.xml:29860 #, no-wrap msgid "biba/10:2+3+6(5:2+3-20:2+3+4+5+6)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29855 +#: book.translate.xml:29862 msgid "" "may be interpreted as <quote>Biba Policy Label/Grade 10:Compartments 2, 3 " "and 6: (grade 5 ...</quote>)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29858 +#: book.translate.xml:29865 msgid "" "In this example, the first grade would be considered the effective grade " "with effective compartments, the second grade is the low grade, and the last " @@ -43837,7 +44154,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29864 +#: book.translate.xml:29871 msgid "" "System objects only have a current grade and compartment. System subjects " "reflect the range of available rights in the system, and network interfaces, " @@ -43845,7 +44162,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29869 +#: book.translate.xml:29876 msgid "" "The grade and compartments in a subject and object pair are used to " "construct a relationship known as <firstterm>dominance</firstterm>, in which " @@ -43860,12 +44177,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29884 +#: book.translate.xml:29891 msgid "User Labels" msgstr "使用者標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29886 +#: book.translate.xml:29893 msgid "" "Users are required to have labels so that their files and processes properly " "interact with the security policy defined on the system. This is configured " @@ -43874,7 +44191,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29893 +#: book.translate.xml:29900 msgid "" "To set the user class default label which will be enforced by <acronym>MAC</" "acronym>, add a <option>label</option> entry. An example <option>label</" @@ -43885,7 +44202,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:29902 +#: book.translate.xml:29909 #, no-wrap msgid "" "default:\\\n" @@ -43914,7 +44231,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29926 +#: book.translate.xml:29933 msgid "" "While users can not modify the default value, they may change their label " "after they login, subject to the constraints of the policy. The example " @@ -43927,14 +44244,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29937 +#: book.translate.xml:29944 msgid "" "After any change to <filename>login.conf</filename>, the login class " "capability database must be rebuilt using <command>cap_mkdb</command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29941 +#: book.translate.xml:29948 msgid "" "Many sites have a large number of users requiring several different user " "classes. In depth planning is required as this can become difficult to " @@ -43942,12 +44259,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:29947 +#: book.translate.xml:29954 msgid "Network Interface Labels" msgstr "網路介面標籤" #. (itstool) path: sect2/para -#: book.translate.xml:29949 +#: book.translate.xml:29956 msgid "" "Labels may be set on network interfaces to help control the flow of data " "across the network. Policies using network interface labels function in the " @@ -43957,20 +44274,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29956 +#: book.translate.xml:29963 msgid "" "When setting the <acronym>MAC</acronym> label on network interfaces, " "<option>maclabel</option> may be passed to <command>ifconfig</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:29960 +#: book.translate.xml:29967 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bge0 maclabel biba/equal</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29962 +#: book.translate.xml:29969 msgid "" "This example will set the <acronym>MAC</acronym> label of <literal>biba/" "equal</literal> on the <literal>bge0</literal> interface. When using a " @@ -43979,7 +44296,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:29969 +#: book.translate.xml:29976 msgid "" "Each policy module which supports labeling has a tunable which may be used " "to disable the <acronym>MAC</acronym> label on network interfaces. Setting " @@ -43990,12 +44307,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:29980 +#: book.translate.xml:29987 msgid "Planning the Security Configuration" msgstr "規劃安全架構" #. (itstool) path: sect1/para -#: book.translate.xml:29982 +#: book.translate.xml:29989 msgid "" "Before implementing any <acronym>MAC</acronym> policies, a planning phase is " "recommended. During the planning stages, an administrator should consider " @@ -44003,26 +44320,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29989 +#: book.translate.xml:29996 msgid "" "How to classify information and resources available on the target systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:29994 +#: book.translate.xml:30001 msgid "" "Which information or resources to restrict access to along with the type of " "restrictions that should be applied." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30000 +#: book.translate.xml:30007 msgid "" "Which <acronym>MAC</acronym> modules will be required to achieve this goal." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30005 +#: book.translate.xml:30012 msgid "" "A trial run of the trusted system and its configuration should occur " "<emphasis>before</emphasis> a <acronym>MAC</acronym> implementation is used " @@ -44032,7 +44349,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30012 +#: book.translate.xml:30019 msgid "" "Consider how the <acronym>MAC</acronym> framework augments the security of " "the system as a whole. The various security policy modules provided by the " @@ -44046,7 +44363,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30025 +#: book.translate.xml:30032 msgid "" "The overhead is minimal when compared to the lasting effect of a framework " "which provides the ability to pick and choose which policies are required " @@ -44059,7 +44376,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30035 +#: book.translate.xml:30042 msgid "" "A system utilizing <acronym>MAC</acronym> guarantees that a user will not be " "permitted to change security attributes at will. All user utilities, " @@ -44070,7 +44387,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30043 +#: book.translate.xml:30050 msgid "" "It is the duty of the system administrator to carefully select the correct " "security policy modules. For an environment that needs to limit access " @@ -44087,7 +44404,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30052 +#: book.translate.xml:30059 msgid "" "Policy decisions could be made based on network configuration. If only " "certain users should be permitted access to " @@ -44105,7 +44422,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30066 +#: book.translate.xml:30073 msgid "" "Each security policy module has a unique way of dealing with the overall " "security of a system. Module selection should be based on a well thought out " @@ -44116,7 +44433,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30074 +#: book.translate.xml:30081 msgid "" "The rest of this chapter covers the available modules, describes their use " "and configuration, and in some cases, provides insight on applicable " @@ -44124,7 +44441,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:30079 +#: book.translate.xml:30086 msgid "" "Implementing <acronym>MAC</acronym> is much like implementing a firewall " "since care must be taken to prevent being completely locked out of the " @@ -44134,12 +44451,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:30089 +#: book.translate.xml:30096 msgid "Available MAC Policies" msgstr "可用的 MAC 管理政策" #. (itstool) path: sect1/para -#: book.translate.xml:30091 +#: book.translate.xml:30098 msgid "" "The default FreeBSD kernel includes <literal>options MAC</literal>. This " "means that every module included with the <acronym>MAC</acronym> framework " @@ -44151,7 +44468,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30101 +#: book.translate.xml:30108 msgid "" "FreeBSD includes a group of policies that will cover most security " "requirements. Each policy is summarized below. The last three policies " @@ -44159,32 +44476,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30107 +#: book.translate.xml:30114 msgid "The MAC See Other UIDs Policy" msgstr "MAC See Other UIDs 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30109 +#: book.translate.xml:30116 msgid "<primary>MAC See Other UIDs Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30112 +#: book.translate.xml:30119 msgid "Module name: <filename>mac_seeotheruids.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30115 +#: book.translate.xml:30122 msgid "Kernel configuration line: <literal>options MAC_SEEOTHERUIDS</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30118 +#: book.translate.xml:30125 msgid "Boot option: <literal>mac_seeotheruids_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30121 +#: book.translate.xml:30128 msgid "" "The <citerefentry><refentrytitle>mac_seeotheruids</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module extends the " @@ -44195,14 +44512,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30128 +#: book.translate.xml:30135 msgid "" "After loading the module, the following <command>sysctl</command> tunables " "may be used to control its features:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30134 +#: book.translate.xml:30141 msgid "" "<varname>security.mac.seeotheruids.enabled</varname> enables the module and " "implements the default settings which deny users the ability to view " @@ -44210,7 +44527,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30141 +#: book.translate.xml:30148 msgid "" "<varname>security.mac.seeotheruids.specificgid_enabled</varname> allows " "specified groups to be exempt from this policy. To exempt specific groups, " @@ -44220,7 +44537,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30152 +#: book.translate.xml:30159 msgid "" "<varname>security.mac.seeotheruids.primarygroup_enabled</varname> is used to " "exempt specific primary groups from this policy. When using this tunable, " @@ -44229,33 +44546,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30163 +#: book.translate.xml:30170 msgid "The MAC BSD Extended Policy" msgstr "MAC BSD Extended 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30165 +#: book.translate.xml:30172 msgid "" "<primary>MAC</primary> <secondary>File System Firewall Policy</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30169 +#: book.translate.xml:30176 msgid "Module name: <filename>mac_bsdextended.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30172 +#: book.translate.xml:30179 msgid "Kernel configuration line: <literal>options MAC_BSDEXTENDED</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30175 +#: book.translate.xml:30182 msgid "Boot option: <literal>mac_bsdextended_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30178 +#: book.translate.xml:30185 msgid "" "The <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module enforces a file " @@ -44272,7 +44589,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30191 +#: book.translate.xml:30198 msgid "" "The rule list may be entered using <citerefentry><refentrytitle>ugidfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> which has a syntax " @@ -44283,7 +44600,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30196 +#: book.translate.xml:30203 msgid "" "After the <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> module has been " @@ -44292,7 +44609,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30200 +#: book.translate.xml:30207 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ugidfw list</userinput>\n" @@ -44300,7 +44617,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30203 +#: book.translate.xml:30210 msgid "" "By default, no rules are defined and everything is completely accessible. To " "create a rule which blocks all access by users but leaves <systemitem class=" @@ -44308,13 +44625,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30207 +#: book.translate.xml:30214 #, no-wrap msgid "<prompt>#</prompt> <userinput>ugidfw add subject not uid root new object not uid root mode n</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30209 +#: book.translate.xml:30216 msgid "" "While this rule is simple to implement, it is a very bad idea as it blocks " "all users from issuing any commands. A more realistic example blocks " @@ -44324,7 +44641,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30215 +#: book.translate.xml:30222 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ugidfw set 2 subject uid <replaceable>user1</replaceable> object uid <replaceable>user2</replaceable> mode n</userinput>\n" @@ -44332,7 +44649,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30218 +#: book.translate.xml:30225 msgid "" "Instead of <systemitem class=\"username\">user1</systemitem>, <option>not " "uid <replaceable>user2</replaceable></option> could be used in order to " @@ -44341,39 +44658,39 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30225 +#: book.translate.xml:30232 msgid "" "Extreme caution should be taken when working with this module as incorrect " "use could block access to certain parts of the file system." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30232 +#: book.translate.xml:30239 msgid "The MAC Interface Silencing Policy" msgstr "MAC Interface Silencing 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30234 +#: book.translate.xml:30241 msgid "<primary>MAC Interface Silencing Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30237 +#: book.translate.xml:30244 msgid "Module name: <filename>mac_ifoff.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30239 +#: book.translate.xml:30246 msgid "Kernel configuration line: <literal>options MAC_IFOFF</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30242 +#: book.translate.xml:30249 msgid "Boot option: <literal>mac_ifoff_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30245 +#: book.translate.xml:30252 msgid "" "The <citerefentry><refentrytitle>mac_ifoff</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module is used to disable network interfaces on " @@ -44383,14 +44700,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30251 +#: book.translate.xml:30258 msgid "" "Most of this module's control is performed through these <command>sysctl</" "command> tunables:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30256 +#: book.translate.xml:30263 msgid "" "<varname>security.mac.ifoff.lo_enabled</varname> enables or disables all " "traffic on the loopback, <citerefentry><refentrytitle>lo</" @@ -44398,7 +44715,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30262 +#: book.translate.xml:30269 msgid "" "<varname>security.mac.ifoff.bpfrecv_enabled</varname> enables or disables " "all traffic on the Berkeley Packet Filter interface, " @@ -44407,14 +44724,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30268 +#: book.translate.xml:30275 msgid "" "<varname>security.mac.ifoff.other_enabled</varname> enables or disables " "traffic on all other interfaces." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30274 +#: book.translate.xml:30281 msgid "" "One of the most common uses of <citerefentry><refentrytitle>mac_ifoff</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> is network monitoring " @@ -44425,32 +44742,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30284 +#: book.translate.xml:30291 msgid "The MAC Port Access Control List Policy" msgstr "MAC Port Access Control 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30286 +#: book.translate.xml:30293 msgid "<primary>MAC Port Access Control List Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30289 +#: book.translate.xml:30296 msgid "Module name: <filename>mac_portacl.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30291 +#: book.translate.xml:30298 msgid "Kernel configuration line: <literal>MAC_PORTACL</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30294 +#: book.translate.xml:30301 msgid "Boot option: <literal>mac_portacl_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30297 +#: book.translate.xml:30304 msgid "" "The <citerefentry><refentrytitle>mac_portacl</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module is used to limit binding to local " @@ -44460,21 +44777,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30302 +#: book.translate.xml:30309 msgid "" "Once loaded, this module enables the <acronym>MAC</acronym> policy on all " "sockets. The following tunables are available:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30308 +#: book.translate.xml:30315 msgid "" "<varname>security.mac.portacl.enabled</varname> enables or disables the " "policy completely." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30313 +#: book.translate.xml:30320 msgid "" "<varname>security.mac.portacl.port_high</varname> sets the highest port " "number that <citerefentry><refentrytitle>mac_portacl</" @@ -44482,7 +44799,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30319 +#: book.translate.xml:30326 msgid "" "<varname>security.mac.portacl.suser_exempt</varname>, when set to a non-zero " "value, exempts the <systemitem class=\"username\">root</systemitem> user " @@ -44490,7 +44807,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30325 +#: book.translate.xml:30332 msgid "" "<varname>security.mac.portacl.rules</varname> specifies the policy as a text " "string of the form <literal>rule[,rule,...]</literal>, with as many rules as " @@ -44504,7 +44821,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30341 +#: book.translate.xml:30348 msgid "" "By default, ports below 1024 can only be used by privileged processes which " "run as <systemitem class=\"username\">root</systemitem>. For " @@ -44514,7 +44831,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30347 +#: book.translate.xml:30354 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.port_high=1023</userinput>\n" @@ -44523,7 +44840,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30351 +#: book.translate.xml:30358 msgid "" "To prevent the <systemitem class=\"username\">root</systemitem> user from " "being affected by this policy, set <varname>security.mac.portacl." @@ -44531,13 +44848,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30356 +#: book.translate.xml:30363 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.suser_exempt=1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30358 +#: book.translate.xml:30365 msgid "" "To allow the <systemitem class=\"username\">www</systemitem> user with " "<acronym>UID</acronym> 80 to bind to port 80 without ever needing " @@ -44545,51 +44862,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30362 +#: book.translate.xml:30369 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.rules=uid:80:tcp:80</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30364 +#: book.translate.xml:30371 msgid "" "This next example permits the user with the <acronym>UID</acronym> of 1001 " "to bind to <acronym>TCP</acronym> ports 110 (POP3) and 995 (POP3s):" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30369 +#: book.translate.xml:30376 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl security.mac.portacl.rules=uid:1001:tcp:110,uid:1001:tcp:995</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30373 +#: book.translate.xml:30380 msgid "The MAC Partition Policy" msgstr "MAC Partition 政策" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30375 +#: book.translate.xml:30382 msgid "<primary>MAC Process Partition Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30378 +#: book.translate.xml:30385 msgid "Module name: <filename>mac_partition.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30380 +#: book.translate.xml:30387 msgid "Kernel configuration line: <literal>options MAC_PARTITION</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30383 +#: book.translate.xml:30390 msgid "Boot option: <literal>mac_partition_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30386 +#: book.translate.xml:30393 msgid "" "The <citerefentry><refentrytitle>mac_partition</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> policy drops processes into specific " @@ -44601,14 +44918,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30395 +#: book.translate.xml:30402 msgid "" "<varname>security.mac.partition.enabled</varname> enables the enforcement of " "<acronym>MAC</acronym> process partitions." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30401 +#: book.translate.xml:30408 msgid "" "When this policy is enabled, users will only be permitted to see their " "processes, and any others within their partition, but will not be permitted " @@ -44619,7 +44936,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30409 +#: book.translate.xml:30416 msgid "" "This example adds <command>top</command> to the label set on users in the " "<literal>insecure</literal> class. All processes spawned by users in the " @@ -44628,37 +44945,37 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30415 +#: book.translate.xml:30422 #, no-wrap msgid "<prompt>#</prompt> <userinput>setpmac partition/13 top</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30417 +#: book.translate.xml:30424 msgid "This command displays the partition label and the process list:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30420 +#: book.translate.xml:30427 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps Zax</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30422 +#: book.translate.xml:30429 msgid "" "This command displays another user's process partition label and that user's " "currently running processes:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30425 +#: book.translate.xml:30432 #, no-wrap msgid "<prompt>#</prompt> <userinput>ps -ZU trhodes</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30428 +#: book.translate.xml:30435 msgid "" "Users can see processes in <systemitem class=\"username\">root</" "systemitem>'s label unless the " @@ -44667,32 +44984,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30434 +#: book.translate.xml:30441 msgid "The MAC Multi-Level Security Module" msgstr "MAC Multi-Level Security 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30436 +#: book.translate.xml:30443 msgid "<primary>MAC Multi-Level Security Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30439 +#: book.translate.xml:30446 msgid "Module name: <filename>mac_mls.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30441 +#: book.translate.xml:30448 msgid "Kernel configuration line: <literal>options MAC_MLS</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30444 +#: book.translate.xml:30451 msgid "Boot option: <literal>mac_mls_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30446 +#: book.translate.xml:30453 msgid "" "The <citerefentry><refentrytitle>mac_mls</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> policy controls access between subjects and " @@ -44700,7 +45017,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30450 +#: book.translate.xml:30457 msgid "" "In <acronym>MLS</acronym> environments, a <quote>clearance</quote> level is " "set in the label of each subject or object, along with compartments. Since " @@ -44712,7 +45029,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30462 +#: book.translate.xml:30469 msgid "" "Anything labeled with <literal>mls/low</literal> will have a low clearance " "level and not be permitted to access information of a higher level. This " @@ -44721,14 +45038,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30470 +#: book.translate.xml:30477 msgid "" "<literal>mls/equal</literal> should be placed on objects which should be " "exempt from the policy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30475 +#: book.translate.xml:30482 msgid "" "<literal>mls/high</literal> is the highest level of clearance possible. " "Objects assigned this label will hold dominance over all other objects in " @@ -44737,18 +45054,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30483 +#: book.translate.xml:30490 msgid "<acronym>MLS</acronym> provides:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30487 +#: book.translate.xml:30494 msgid "" "A hierarchical security level with a set of non-hierarchical categories." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30492 +#: book.translate.xml:30499 msgid "" "Fixed rules of <literal>no read up, no write down</literal>. This means that " "a subject can have read access to objects on its own level or below, but not " @@ -44757,12 +45074,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30500 +#: book.translate.xml:30507 msgid "Secrecy, or the prevention of inappropriate disclosure of data." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30505 +#: book.translate.xml:30512 msgid "" "A basis for the design of systems that concurrently handle data at multiple " "sensitivity levels without leaking information between secret and " @@ -44770,19 +45087,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30511 +#: book.translate.xml:30518 msgid "The following <command>sysctl</command> tunables are available:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30516 +#: book.translate.xml:30523 msgid "" "<varname>security.mac.mls.enabled</varname> is used to enable or disable the " "<acronym>MLS</acronym> policy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30522 +#: book.translate.xml:30529 msgid "" "<varname>security.mac.mls.ptys_equal</varname> labels all " "<citerefentry><refentrytitle>pty</refentrytitle><manvolnum>4</manvolnum></" @@ -44790,21 +45107,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30528 +#: book.translate.xml:30535 msgid "" "<varname>security.mac.mls.revocation_enabled</varname> revokes access to " "objects after their label changes to a label of a lower grade." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30534 +#: book.translate.xml:30541 msgid "" "<varname>security.mac.mls.max_compartments</varname> sets the maximum number " "of compartment levels allowed on a system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30540 +#: book.translate.xml:30547 msgid "" "To manipulate <acronym>MLS</acronym> labels, use " "<citerefentry><refentrytitle>setfmac</refentrytitle><manvolnum>8</" @@ -44812,26 +45129,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30543 +#: book.translate.xml:30550 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfmac mls/5 test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30545 +#: book.translate.xml:30552 msgid "" "To get the <acronym>MLS</acronym> label for the file <filename>test</" "filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30548 +#: book.translate.xml:30555 #, no-wrap msgid "<prompt>#</prompt> <userinput>getfmac test</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30550 +#: book.translate.xml:30557 msgid "" "Another approach is to create a master policy file in <filename>/etc/</" "filename> which specifies the <acronym>MLS</acronym> policy information and " @@ -44839,7 +45156,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30555 +#: book.translate.xml:30562 msgid "" "When using the <acronym>MLS</acronym> policy module, an administrator plans " "to control the flow of sensitive information. The default <literal>block " @@ -44849,7 +45166,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30562 +#: book.translate.xml:30569 msgid "" "Beyond the three basic label options, an administrator may group users and " "groups as required to block the information flow between them. It might be " @@ -44862,7 +45179,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30573 +#: book.translate.xml:30580 msgid "" "Some example situations for the <acronym>MLS</acronym> policy module include " "an e-commerce web server, a file server holding critical company " @@ -44870,32 +45187,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30580 +#: book.translate.xml:30587 msgid "The MAC Biba Module" msgstr "MAC Biba 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30582 +#: book.translate.xml:30589 msgid "<primary>MAC Biba Integrity Policy</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30585 +#: book.translate.xml:30592 msgid "Module name: <filename>mac_biba.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30587 +#: book.translate.xml:30594 msgid "Kernel configuration line: <literal>options MAC_BIBA</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30590 +#: book.translate.xml:30597 msgid "Boot option: <literal>mac_biba_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30592 +#: book.translate.xml:30599 msgid "" "The <citerefentry><refentrytitle>mac_biba</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> module loads the <acronym>MAC</acronym> Biba " @@ -44907,7 +45224,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30600 +#: book.translate.xml:30607 msgid "" "In Biba environments, an <quote>integrity</quote> label is set on each " "subject or object. These labels are made up of hierarchical grades and non-" @@ -44915,14 +45232,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30605 +#: book.translate.xml:30612 msgid "" "Supported labels are <literal>biba/low</literal>, <literal>biba/equal</" "literal>, and <literal>biba/high</literal>, where:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30611 +#: book.translate.xml:30618 msgid "" "<literal>biba/low</literal> is considered the lowest integrity an object or " "subject may have. Setting this on objects or subjects blocks their write " @@ -44931,14 +45248,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30619 +#: book.translate.xml:30626 msgid "" "<literal>biba/equal</literal> should only be placed on objects considered to " "be exempt from the policy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30624 +#: book.translate.xml:30631 msgid "" "<literal>biba/high</literal> permits writing to objects set at a lower " "label, but does not permit reading that object. It is recommended that this " @@ -44946,19 +45263,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30632 +#: book.translate.xml:30639 msgid "Biba provides:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30636 +#: book.translate.xml:30643 msgid "" "Hierarchical integrity levels with a set of non-hierarchical integrity " "categories." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30641 +#: book.translate.xml:30648 msgid "" "Fixed rules are <literal>no write up, no read down</literal>, the opposite " "of <acronym>MLS</acronym>. A subject can have write access to objects on its " @@ -44967,29 +45284,29 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30650 +#: book.translate.xml:30657 msgid "Integrity by preventing inappropriate modification of data." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30655 +#: book.translate.xml:30662 msgid "Integrity levels instead of <acronym>MLS</acronym> sensitivity levels." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30660 +#: book.translate.xml:30667 msgid "The following tunables can be used to manipulate the Biba policy:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30665 +#: book.translate.xml:30672 msgid "" "<varname>security.mac.biba.enabled</varname> is used to enable or disable " "enforcement of the Biba policy on the target machine." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30671 +#: book.translate.xml:30678 msgid "" "<varname>security.mac.biba.ptys_equal</varname> is used to disable the Biba " "policy on <citerefentry><refentrytitle>pty</refentrytitle><manvolnum>4</" @@ -44997,7 +45314,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:30677 +#: book.translate.xml:30684 msgid "" "<varname>security.mac.biba.revocation_enabled</varname> forces the " "revocation of access to objects if the label is changed to dominate the " @@ -45005,14 +45322,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30683 +#: book.translate.xml:30690 msgid "" "To access the Biba policy setting on system objects, use <command>setfmac</" "command> and <command>getfmac</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30687 +#: book.translate.xml:30694 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac biba/low test</userinput>\n" @@ -45021,7 +45338,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30691 +#: book.translate.xml:30698 msgid "" "Integrity, which is different from sensitivity, is used to guarantee that " "information is not manipulated by untrusted parties. This includes " @@ -45035,7 +45352,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30701 +#: book.translate.xml:30708 msgid "" "During the initial planning phase, an administrator must be prepared to " "partition users into grades, levels, and areas. The system will default to a " @@ -45049,7 +45366,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30714 +#: book.translate.xml:30721 msgid "" "A lower integrity subject is unable to write to a higher integrity subject " "and a higher integrity subject cannot list or read a lower integrity object. " @@ -45061,32 +45378,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30726 +#: book.translate.xml:30733 msgid "The MAC Low-watermark Module" msgstr "MAC Low-watermark 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30728 +#: book.translate.xml:30735 msgid "<primary>MAC LOMAC</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30731 +#: book.translate.xml:30738 msgid "Module name: <filename>mac_lomac.ko</filename>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30733 +#: book.translate.xml:30740 msgid "Kernel configuration line: <literal>options MAC_LOMAC</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30736 +#: book.translate.xml:30743 msgid "Boot option: <literal>mac_lomac_load=\"YES\"</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30739 +#: book.translate.xml:30746 msgid "" "Unlike the <acronym>MAC</acronym> Biba policy, the " "<citerefentry><refentrytitle>mac_lomac</refentrytitle><manvolnum>4</" @@ -45095,7 +45412,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30744 +#: book.translate.xml:30751 msgid "" "The Low-watermark integrity policy works almost identically to Biba, with " "the exception of using floating labels to support subject demotion via an " @@ -45106,7 +45423,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30753 +#: book.translate.xml:30760 msgid "" "This policy relies on the ubiquitous labeling of all system objects with " "integrity labels, permitting subjects to read from low integrity objects and " @@ -45117,7 +45434,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30761 +#: book.translate.xml:30768 msgid "" "Like the Biba and <acronym>MLS</acronym> policies, <command>setfmac</" "command> and <command>setpmac</command> are used to place labels on system " @@ -45125,7 +45442,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30765 +#: book.translate.xml:30772 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>setfmac /usr/home/trhodes lomac/high[low]</userinput>\n" @@ -45133,19 +45450,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30768 +#: book.translate.xml:30775 msgid "" "The auxiliary grade <literal>low</literal> is a feature provided only by the " "<acronym>MAC</acronym> <acronym>LOMAC</acronym> policy." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:30775 +#: book.translate.xml:30782 msgid "User Lock Down" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30777 +#: book.translate.xml:30784 msgid "" "This example considers a relatively small storage system with fewer than " "fifty users. Users will have login capabilities and are permitted to store " @@ -45153,7 +45470,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30782 +#: book.translate.xml:30789 msgid "" "For this scenario, the <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> and " @@ -45163,19 +45480,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30786 +#: book.translate.xml:30793 msgid "" "Begin by adding the following line to <filename>/boot/loader.conf</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:30789 +#: book.translate.xml:30796 #, no-wrap msgid "mac_seeotheruids_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30791 +#: book.translate.xml:30798 msgid "" "The <citerefentry><refentrytitle>mac_bsdextended</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> security policy module " @@ -45183,13 +45500,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:30795 +#: book.translate.xml:30802 #, no-wrap msgid "ugidfw_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30797 +#: book.translate.xml:30804 msgid "" "Default rules stored in <filename>/etc/rc.bsdextended</filename> will be " "loaded at system initialization. However, the default entries may need " @@ -45199,7 +45516,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30805 +#: book.translate.xml:30812 msgid "" "Add the required users to this machine and reboot. For testing purposes, try " "logging in as a different user across two consoles. Run <command>ps aux</" @@ -45209,7 +45526,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30811 +#: book.translate.xml:30818 msgid "" "Do not try to test with the <systemitem class=\"username\">root</systemitem> " "user unless the specific <command>sysctl</command>s have been modified to " @@ -45217,7 +45534,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:30816 +#: book.translate.xml:30823 msgid "" "When a new user is added, their " "<citerefentry><refentrytitle>mac_bsdextended</refentrytitle><manvolnum>4</" @@ -45229,17 +45546,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:30824 +#: book.translate.xml:30831 msgid "Nagios in a MAC Jail" msgstr "在 MAC Jail 中使用 Nagios" #. (itstool) path: sect1/indexterm -#: book.translate.xml:30826 +#: book.translate.xml:30833 msgid "<primary>Nagios in a MAC Jail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30830 +#: book.translate.xml:30837 msgid "" "This section demonstrates the steps that are needed to implement the " "<application>Nagios</application> network monitoring system in a " @@ -45250,7 +45567,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:30837 +#: book.translate.xml:30844 msgid "" "This example requires <option>multilabel</option> to be set on each file " "system. It also assumes that <package>net-mgmt/nagios-plugins</package>, " @@ -45260,19 +45577,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30846 +#: book.translate.xml:30853 msgid "Create an Insecure User Class" msgstr "建立不安全的使用者類別" #. (itstool) path: sect2/para -#: book.translate.xml:30848 +#: book.translate.xml:30855 msgid "" "Begin the procedure by adding the following user class to <filename>/etc/" "login.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30851 +#: book.translate.xml:30858 #, no-wrap msgid "" "insecure:\\\n" @@ -45301,41 +45618,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30875 +#: book.translate.xml:30882 msgid "Then, add the following line to the default user class section:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30878 +#: book.translate.xml:30885 #, no-wrap msgid ":label=biba/high:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30880 +#: book.translate.xml:30887 msgid "Save the edits and issue the following command to rebuild the database:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30887 +#: book.translate.xml:30894 msgid "Configure Users" msgstr "設定使用者" #. (itstool) path: sect2/para -#: book.translate.xml:30889 +#: book.translate.xml:30896 msgid "" "Set the <systemitem class=\"username\">root</systemitem> user to the default " "class using:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30892 +#: book.translate.xml:30899 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw usermod root -L default</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30894 +#: book.translate.xml:30901 msgid "" "All user accounts that are not <systemitem class=\"username\">root</" "systemitem> will now require a login class. The login class is required, " @@ -45344,7 +45661,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30899 +#: book.translate.xml:30906 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>for x in `awk -F: '($3 >= 1001) && ($3 != 65534) { print $1 }' \\</userinput>\n" @@ -45352,7 +45669,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30902 +#: book.translate.xml:30909 msgid "" "Next, drop the <systemitem class=\"username\">nagios</systemitem> and " "<systemitem class=\"username\">www</systemitem> accounts into the insecure " @@ -45360,7 +45677,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30905 +#: book.translate.xml:30912 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw usermod nagios -L insecure</userinput>\n" @@ -45368,19 +45685,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30910 +#: book.translate.xml:30917 msgid "Create the Contexts File" msgstr "建立關聯檔 (Context File)" #. (itstool) path: sect2/para -#: book.translate.xml:30912 +#: book.translate.xml:30919 msgid "" "A contexts file should now be created as <filename>/etc/policy.contexts</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30915 +#: book.translate.xml:30922 #, no-wrap msgid "" "# This is the default BIBA policy for this system.\n" @@ -45411,7 +45728,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30941 +#: book.translate.xml:30948 msgid "" "This policy enforces security by setting restrictions on the flow of " "information. In this specific configuration, users, including <systemitem " @@ -45422,27 +45739,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30949 +#: book.translate.xml:30956 msgid "" "This file will be read after running <command>setfsmac</command> on every " "file system. This example sets the policy on the root file system:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:30953 +#: book.translate.xml:30960 #, no-wrap msgid "<prompt>#</prompt> <userinput>setfsmac -ef /etc/policy.contexts /</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30955 +#: book.translate.xml:30962 msgid "" "Next, add these edits to the main section of <filename>/etc/mac.conf</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30958 +#: book.translate.xml:30965 #, no-wrap msgid "" "default_labels file ?biba\n" @@ -45452,19 +45769,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30965 +#: book.translate.xml:30972 msgid "Loader Configuration" msgstr "載入程式設定" #. (itstool) path: sect2/para -#: book.translate.xml:30967 +#: book.translate.xml:30974 msgid "" "To finish the configuration, add the following lines to <filename>/boot/" "loader.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30970 +#: book.translate.xml:30977 #, no-wrap msgid "" "mac_biba_load=\"YES\"\n" @@ -45473,7 +45790,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30974 +#: book.translate.xml:30981 msgid "" "And the following line to the network card configuration stored in " "<filename>/etc/rc.conf</filename>. If the primary network configuration is " @@ -45482,23 +45799,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:30980 +#: book.translate.xml:30987 #, no-wrap msgid "maclabel biba/equal" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:30984 +#: book.translate.xml:30991 msgid "Testing the Configuration" msgstr "測試設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:30986 +#: book.translate.xml:30993 msgid "<primary>MAC Configuration Testing</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:30990 +#: book.translate.xml:30997 msgid "" "First, ensure that the web server and <application>Nagios</application> will " "not be started on system initialization and reboot. Ensure that <systemitem " @@ -45510,14 +45827,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31000 +#: book.translate.xml:31007 msgid "" "If all seems well, <application>Nagios</application>, <application>Apache</" "application>, and <application>Sendmail</application> can now be started:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:31004 +#: book.translate.xml:31011 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /etc/mail && make stop && \\\n" @@ -45526,7 +45843,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31008 +#: book.translate.xml:31015 msgid "" "Double check to ensure that everything is working properly. If not, check " "the log files for error messages. If needed, use " @@ -45537,7 +45854,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:31015 +#: book.translate.xml:31022 msgid "" "The <systemitem class=\"username\">root</systemitem> user can still change " "the security enforcement and edit its configuration files. The following " @@ -45546,13 +45863,13 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:31021 +#: book.translate.xml:31028 #, no-wrap msgid "<prompt>#</prompt> <userinput>setpmac biba/10 csh</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:31023 +#: book.translate.xml:31030 msgid "" "To block this from happening, force the user into a range using " "<citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</" @@ -45564,59 +45881,59 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:31034 +#: book.translate.xml:31041 msgid "Troubleshooting the MAC Framework" msgstr "MAC 架構疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31036 +#: book.translate.xml:31043 msgid "<primary>MAC Troubleshooting</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31040 +#: book.translate.xml:31047 msgid "" "This section discusses common configuration errors and how to resolve them." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:31045 +#: book.translate.xml:31052 msgid "" "The <option>multilabel</option> flag does not stay enabled on the root " "(<filename>/</filename>) partition:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31050 +#: book.translate.xml:31057 msgid "The following steps may resolve this transient error:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31055 +#: book.translate.xml:31062 msgid "" "Edit <filename>/etc/fstab</filename> and set the root partition to " "<option>ro</option> for read-only." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31061 +#: book.translate.xml:31068 msgid "Reboot into single user mode." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31065 +#: book.translate.xml:31072 msgid "" "Run <command>tunefs</command> <option>-l enable</option> on <filename>/</" "filename>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31070 +#: book.translate.xml:31077 msgid "Reboot the system." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31074 +#: book.translate.xml:31081 msgid "" "Run <command>mount</command> <option>-urw</option> <filename>/</filename> " "and change the <option>ro</option> back to <option>rw</option> in <filename>/" @@ -45624,21 +45941,21 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31082 +#: book.translate.xml:31089 msgid "" "Double-check the output from <command>mount</command> to ensure that " "<option>multilabel</option> has been properly set on the root file system." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:31092 +#: book.translate.xml:31099 msgid "" "After establishing a secure environment with <acronym>MAC</acronym>, " "<application>Xorg</application> no longer starts:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31096 +#: book.translate.xml:31103 msgid "" "This could be caused by the <acronym>MAC</acronym> <literal>partition</" "literal> policy or by a mislabeling in one of the <acronym>MAC</acronym> " @@ -45646,7 +45963,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31103 +#: book.translate.xml:31110 msgid "" "Check the error message. If the user is in the <literal>insecure</literal> " "class, the <literal>partition</literal> policy may be the culprit. Try " @@ -45656,14 +45973,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31113 +#: book.translate.xml:31120 msgid "" "Double-check that the label policies are set correctly for the user, " "<application>Xorg</application>, and the <filename>/dev</filename> entries." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:31120 +#: book.translate.xml:31127 msgid "" "If neither of these resolve the problem, send the error message and a " "description of the environment to the <link xlink:href=\"http://lists." @@ -45672,14 +45989,14 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:31129 +#: book.translate.xml:31136 msgid "" "The <errorname>_secure_path: unable to stat .login_conf</errorname> error " "appears:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31132 +#: book.translate.xml:31139 msgid "" "This error can appear when a user attempts to switch from the <systemitem " "class=\"username\">root</systemitem> user to another user in the system. " @@ -45697,21 +46014,21 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:31149 +#: book.translate.xml:31156 msgid "" "The system no longer recognizes <systemitem class=\"username\">root</" "systemitem>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31151 +#: book.translate.xml:31158 msgid "" "When this occurs, <command>whoami</command> returns <literal>0</literal> and " "<command>su</command> returns <errorname>who are you?</errorname>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31155 +#: book.translate.xml:31162 msgid "" "This can happen if a labeling policy has been disabled by " "<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></" @@ -45723,7 +46040,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31164 +#: book.translate.xml:31171 msgid "" "This may also happen if a policy restricts access to <filename>master." "passwd</filename>. This is usually caused by an administrator altering the " @@ -45736,29 +46053,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:31194 +#: book.translate.xml:31201 msgid "Security Event Auditing" msgstr "安全事件稽查" #. (itstool) path: authorgroup/author -#: book.translate.xml:31205 +#: book.translate.xml:31212 msgid "" "<personname> <firstname>Robert</firstname> <surname>Watson</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31217 +#: book.translate.xml:31224 msgid "<primary>AUDIT</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:31218 +#: book.translate.xml:31225 msgid "<primary>Security Event Auditing</primary> <see>MAC</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31223 +#: book.translate.xml:31230 msgid "" "The FreeBSD operating system includes support for security event auditing. " "Event auditing supports reliable, fine-grained, and configurable logging of " @@ -45773,7 +46090,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31235 +#: book.translate.xml:31242 msgid "" "This chapter focuses on the installation and configuration of event " "auditing. It explains audit policies and provides an example audit " @@ -45781,30 +46098,30 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31243 +#: book.translate.xml:31250 msgid "What event auditing is and how it works." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31247 +#: book.translate.xml:31254 msgid "How to configure event auditing on FreeBSD for users and processes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31252 +#: book.translate.xml:31259 msgid "" "How to review the audit trail using the audit reduction and review tools." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31266 +#: book.translate.xml:31273 msgid "" "Be familiar with the basics of kernel configuration/compilation (<xref " "linkend=\"kernelconfig\"/>)." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31277 +#: book.translate.xml:31284 msgid "" "The audit facility has some known limitations. Not all security-relevant " "system events are auditable and some login mechanisms, such as " @@ -45813,7 +46130,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31283 +#: book.translate.xml:31290 msgid "" "The security event auditing facility is able to generate very detailed logs " "of system activity. On a busy system, trail file data can be very large when " @@ -45826,12 +46143,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31298 +#: book.translate.xml:31305 msgid "The following terms are related to security event auditing:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31303 +#: book.translate.xml:31310 msgid "" "<emphasis>event</emphasis>: an auditable event is any event that can be " "logged using the audit subsystem. Examples of security-relevant events " @@ -45843,7 +46160,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31316 +#: book.translate.xml:31323 msgid "" "<emphasis>class</emphasis>: a named set of related events which are used in " "selection expressions. Commonly used classes of events include <quote>file " @@ -45852,7 +46169,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31324 +#: book.translate.xml:31331 msgid "" "<emphasis>record</emphasis>: an audit log entry describing a security event. " "Records contain a record event type, information on the subject (user) " @@ -45861,7 +46178,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31333 +#: book.translate.xml:31340 msgid "" "<emphasis>trail</emphasis>: a log file consisting of a series of audit " "records describing security events. Trails are in roughly chronological " @@ -45870,14 +46187,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31341 +#: book.translate.xml:31348 msgid "" "<emphasis>selection expression</emphasis>: a string containing a list of " "prefixes and audit event class names used to match events." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31347 +#: book.translate.xml:31354 msgid "" "<emphasis>preselection</emphasis>: the process by which the system " "identifies which events are of interest to the administrator. The " @@ -45887,7 +46204,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31357 +#: book.translate.xml:31364 msgid "" "<emphasis>reduction</emphasis>: the process by which records from existing " "audit trails are selected for preservation, printing, or analysis. Likewise, " @@ -45899,12 +46216,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:31371 +#: book.translate.xml:31378 msgid "Audit Configuration" msgstr "稽查設定" #. (itstool) path: sect1/para -#: book.translate.xml:31373 +#: book.translate.xml:31380 msgid "" "User space support for event auditing is installed as part of the base " "FreeBSD operating system. Kernel support is available in the " @@ -45915,42 +46232,42 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31380 +#: book.translate.xml:31387 #, no-wrap msgid "auditd_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31382 +#: book.translate.xml:31389 msgid "Then, start the audit daemon:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31384 +#: book.translate.xml:31391 #, no-wrap msgid "<prompt>#</prompt> <userinput>service auditd start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31386 +#: book.translate.xml:31393 msgid "" "Users who prefer to compile a custom kernel must include the following line " "in their custom kernel configuration file:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31389 +#: book.translate.xml:31396 #, no-wrap msgid "options\tAUDIT" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31392 +#: book.translate.xml:31399 msgid "Event Selection Expressions" msgstr "事件選擇表示法" #. (itstool) path: sect2/para -#: book.translate.xml:31394 +#: book.translate.xml:31401 msgid "" "Selection expressions are used in a number of places in the audit " "configuration to determine which events should be audited. Expressions " @@ -45960,104 +46277,104 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31401 +#: book.translate.xml:31408 msgid "" "<xref linkend=\"event-selection\"/> summarizes the default audit event " "classes:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:31405 +#: book.translate.xml:31412 msgid "Default Audit Event Classes" msgstr "預設稽查事件類別" #. (itstool) path: row/entry -#: book.translate.xml:31410 +#: book.translate.xml:31417 msgid "Class Name" msgstr "類別名稱" #. (itstool) path: row/entry -#: book.translate.xml:31412 book.translate.xml:31576 +#: book.translate.xml:31419 book.translate.xml:31583 msgid "Action" msgstr "動作" #. (itstool) path: row/entry -#: book.translate.xml:31418 book.translate.xml:31419 +#: book.translate.xml:31425 book.translate.xml:31426 msgid "all" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31420 +#: book.translate.xml:31427 msgid "Match all event classes." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31424 +#: book.translate.xml:31431 msgid "aa" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31425 +#: book.translate.xml:31432 msgid "authentication and authorization" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31430 +#: book.translate.xml:31437 msgid "ad" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31431 +#: book.translate.xml:31438 msgid "administrative" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31432 +#: book.translate.xml:31439 msgid "Administrative actions performed on the system as a whole." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31437 +#: book.translate.xml:31444 msgid "ap" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31438 +#: book.translate.xml:31445 msgid "application" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31439 +#: book.translate.xml:31446 msgid "Application defined action." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31443 +#: book.translate.xml:31450 msgid "cl" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31444 +#: book.translate.xml:31451 msgid "file close" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31445 +#: book.translate.xml:31452 msgid "Audit calls to the <function>close</function> system call." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31450 +#: book.translate.xml:31457 msgid "ex" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31451 +#: book.translate.xml:31458 msgid "exec" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31452 +#: book.translate.xml:31459 msgid "" "Audit program execution. Auditing of command line arguments and " "environmental variables is controlled via " @@ -46067,17 +46384,17 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31461 +#: book.translate.xml:31468 msgid "fa" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31462 +#: book.translate.xml:31469 msgid "file attribute access" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31463 +#: book.translate.xml:31470 msgid "" "Audit the access of object attributes such as " "<citerefentry><refentrytitle>stat</refentrytitle><manvolnum>1</manvolnum></" @@ -46086,47 +46403,47 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31468 +#: book.translate.xml:31475 msgid "fc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31469 +#: book.translate.xml:31476 msgid "file create" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31470 +#: book.translate.xml:31477 msgid "Audit events where a file is created as a result." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31475 +#: book.translate.xml:31482 msgid "fd" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31476 +#: book.translate.xml:31483 msgid "file delete" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31477 +#: book.translate.xml:31484 msgid "Audit events where file deletion occurs." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31481 +#: book.translate.xml:31488 msgid "fm" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31482 +#: book.translate.xml:31489 msgid "file attribute modify" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31483 +#: book.translate.xml:31490 msgid "" "Audit events where file attribute modification occurs, such as by " "<citerefentry><refentrytitle>chown</refentrytitle><manvolnum>8</manvolnum></" @@ -46137,79 +46454,79 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31489 +#: book.translate.xml:31496 msgid "fr" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31490 +#: book.translate.xml:31497 msgid "file read" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31491 +#: book.translate.xml:31498 msgid "Audit events in which data is read or files are opened for reading." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31496 +#: book.translate.xml:31503 msgid "fw" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31497 +#: book.translate.xml:31504 msgid "file write" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31498 +#: book.translate.xml:31505 msgid "Audit events in which data is written or files are written or modified." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31503 +#: book.translate.xml:31510 msgid "io" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31504 +#: book.translate.xml:31511 msgid "ioctl" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31505 +#: book.translate.xml:31512 msgid "Audit use of the <function>ioctl</function> system call." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31510 +#: book.translate.xml:31517 msgid "ip" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31511 +#: book.translate.xml:31518 msgid "ipc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31512 +#: book.translate.xml:31519 msgid "" "Audit various forms of Inter-Process Communication, including POSIX pipes " "and System V <acronym>IPC</acronym> operations." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31518 +#: book.translate.xml:31525 msgid "lo" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31519 +#: book.translate.xml:31526 msgid "login_logout" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31520 +#: book.translate.xml:31527 msgid "" "Audit <citerefentry><refentrytitle>login</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>logout</" @@ -46217,47 +46534,47 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31525 +#: book.translate.xml:31532 msgid "na" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31526 +#: book.translate.xml:31533 msgid "non attributable" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31527 +#: book.translate.xml:31534 msgid "Audit non-attributable events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31531 +#: book.translate.xml:31538 msgid "no" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31532 +#: book.translate.xml:31539 msgid "invalid class" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31533 +#: book.translate.xml:31540 msgid "Match no audit events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31537 +#: book.translate.xml:31544 msgid "nt" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31538 +#: book.translate.xml:31545 msgid "network" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31539 +#: book.translate.xml:31546 msgid "" "Audit events related to network actions such as " "<citerefentry><refentrytitle>connect</refentrytitle><manvolnum>2</" @@ -46266,32 +46583,32 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31544 +#: book.translate.xml:31551 msgid "ot" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31545 +#: book.translate.xml:31552 msgid "other" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31546 +#: book.translate.xml:31553 msgid "Audit miscellaneous events." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31550 +#: book.translate.xml:31557 msgid "pc" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31551 +#: book.translate.xml:31558 msgid "process" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31552 +#: book.translate.xml:31559 msgid "" "Audit process operations such as <citerefentry><refentrytitle>exec</" "refentrytitle><manvolnum>3</manvolnum></citerefentry> and " @@ -46300,7 +46617,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31559 +#: book.translate.xml:31566 msgid "" "These audit event classes may be customized by modifying the " "<filename>audit_class</filename> and <filename>audit_event</filename> " @@ -46308,7 +46625,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31563 +#: book.translate.xml:31570 msgid "" "Each audit event class may be combined with a prefix indicating whether " "successful/failed operations are matched, and whether the entry is adding or " @@ -46317,91 +46634,91 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:31570 +#: book.translate.xml:31577 msgid "Prefixes for Audit Event Classes" msgstr "稽查事件類別字首" #. (itstool) path: row/entry -#: book.translate.xml:31575 +#: book.translate.xml:31582 msgid "Prefix" msgstr "字首" #. (itstool) path: row/entry -#: book.translate.xml:31583 +#: book.translate.xml:31590 msgid "Audit successful events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31588 +#: book.translate.xml:31595 msgid "Audit failed events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31592 +#: book.translate.xml:31599 msgid "^" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31593 +#: book.translate.xml:31600 msgid "Audit neither successful nor failed events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31598 +#: book.translate.xml:31605 msgid "^+" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31599 +#: book.translate.xml:31606 msgid "Do not audit successful events in this class." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31604 +#: book.translate.xml:31611 msgid "^-" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:31605 +#: book.translate.xml:31612 msgid "Do not audit failed events in this class." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31611 +#: book.translate.xml:31618 msgid "" "If no prefix is present, both successful and failed instances of the event " "will be audited." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31614 +#: book.translate.xml:31621 msgid "" "The following example selection string selects both successful and failed " "login/logout events, but only successful execution events:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31618 +#: book.translate.xml:31625 #, no-wrap msgid "lo,+ex" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31624 +#: book.translate.xml:31631 msgid "" "The following configuration files for security event auditing are found in " "<filename>/etc/security</filename>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31630 +#: book.translate.xml:31637 msgid "" "<filename>audit_class</filename>: contains the definitions of the audit " "classes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31635 +#: book.translate.xml:31642 msgid "" "<filename>audit_control</filename>: controls aspects of the audit subsystem, " "such as default audit classes, minimum disk space to leave on the audit log " @@ -46409,21 +46726,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31642 +#: book.translate.xml:31649 msgid "" "<filename>audit_event</filename>: textual names and descriptions of system " "audit events and a list of which classes each event is in." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31648 +#: book.translate.xml:31655 msgid "" "<filename>audit_user</filename>: user-specific audit requirements to be " "combined with the global defaults at login." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:31654 +#: book.translate.xml:31661 msgid "" "<filename>audit_warn</filename>: a customizable shell script used by " "<citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</manvolnum></" @@ -46433,14 +46750,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31663 +#: book.translate.xml:31670 msgid "" "Audit configuration files should be edited and maintained carefully, as " "errors in configuration may result in improper logging of events." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31668 +#: book.translate.xml:31675 msgid "" "In most cases, administrators will only need to modify " "<filename>audit_control</filename> and <filename>audit_user</filename>. The " @@ -46449,19 +46766,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:31675 +#: book.translate.xml:31682 msgid "The <filename>audit_control</filename> File" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31677 +#: book.translate.xml:31684 msgid "" "A number of defaults for the audit subsystem are specified in " "<filename>audit_control</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:31680 +#: book.translate.xml:31687 #, no-wrap msgid "" "dir:/var/audit\n" @@ -46475,7 +46792,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31689 +#: book.translate.xml:31696 msgid "" "The <option>dir</option> entry is used to set one or more directories where " "audit logs will be stored. If more than one directory entry appears, they " @@ -46486,7 +46803,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31697 +#: book.translate.xml:31704 msgid "" "If the <option>dist</option> field is set to <literal>on</literal> or " "<literal>yes</literal>, hard links will be created to all trail files in " @@ -46494,7 +46811,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31702 +#: book.translate.xml:31709 msgid "" "The <option>flags</option> field sets the system-wide default preselection " "mask for attributable events. In the example above, successful and failed " @@ -46503,14 +46820,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31708 +#: book.translate.xml:31715 msgid "" "The <option>minfree</option> entry defines the minimum percentage of free " "space for the file system where the audit trail is stored." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31712 +#: book.translate.xml:31719 msgid "" "The <option>naflags</option> entry specifies audit classes to be audited for " "non-attributed events, such as the login/logout process and authentication " @@ -46518,7 +46835,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31717 +#: book.translate.xml:31724 msgid "" "The <option>policy</option> entry specifies a comma-separated list of policy " "flags controlling various aspects of audit behavior. The <literal>cnt</" @@ -46530,7 +46847,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31726 +#: book.translate.xml:31733 msgid "" "The <option>filesz</option> entry specifies the maximum size for an audit " "trail before automatically terminating and rotating the trail file. A value " @@ -46540,19 +46857,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31733 +#: book.translate.xml:31740 msgid "" "The <option>expire-after</option> field specifies when audit log files will " "expire and be removed." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:31738 +#: book.translate.xml:31745 msgid "The <filename>audit_user</filename> File" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31740 +#: book.translate.xml:31747 msgid "" "The administrator can specify further audit requirements for specific users " "in <filename>audit_user</filename>. Each line configures auditing for a user " @@ -46563,7 +46880,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:31748 +#: book.translate.xml:31755 msgid "" "The following example entries audit login/logout events and successful " "command execution for <systemitem class=\"username\">root</systemitem> and " @@ -46576,7 +46893,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:31755 +#: book.translate.xml:31762 #, no-wrap msgid "" "root:lo,+ex:no\n" @@ -46584,12 +46901,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:31762 +#: book.translate.xml:31769 msgid "Working with Audit Trails" msgstr "查看稽查線索" #. (itstool) path: sect1/para -#: book.translate.xml:31764 +#: book.translate.xml:31771 msgid "" "Since audit trails are stored in the <acronym>BSM</acronym> binary format, " "several built-in tools are available to modify or convert these trails to " @@ -46601,25 +46918,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31774 +#: book.translate.xml:31781 msgid "" "For example, to dump the entire contents of a specified audit log in plain " "text:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31777 +#: book.translate.xml:31784 #, no-wrap msgid "<prompt>#</prompt> <userinput>praudit /var/audit/<replaceable>AUDITFILE</replaceable></userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31779 +#: book.translate.xml:31786 msgid "Where <replaceable>AUDITFILE</replaceable> is the audit log to dump." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31782 +#: book.translate.xml:31789 msgid "" "Audit trails consist of a series of audit records made up of tokens, which " "<command>praudit</command> prints sequentially, one per line. Each token is " @@ -46629,7 +46946,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:31790 +#: book.translate.xml:31797 #, no-wrap msgid "" "header,133,10,execve(2),0,Mon Sep 25 15:58:03 2006, + 384 msec\n" @@ -46642,7 +46959,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31798 +#: book.translate.xml:31805 msgid "" "This audit represents a successful <literal>execve</literal> call, in which " "the command <literal>finger doug</literal> has been run. The <literal>exec " @@ -46661,14 +46978,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31817 +#: book.translate.xml:31824 msgid "" "<acronym>XML</acronym> output format is also supported and can be selected " "by including <option>-x</option>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31820 +#: book.translate.xml:31827 msgid "" "Since audit logs may be very large, a subset of records can be selected " "using <command>auditreduce</command>. This example selects all audit records " @@ -46677,13 +46994,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:31826 +#: book.translate.xml:31833 #, no-wrap msgid "<prompt>#</prompt> <userinput>auditreduce -u <replaceable>trhodes</replaceable> /var/audit/<replaceable>AUDITFILE</replaceable> | praudit</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:31828 +#: book.translate.xml:31835 msgid "" "Members of the <systemitem class=\"groupname\">audit</systemitem> group have " "permission to read audit trails in <filename>/var/audit</filename>. By " @@ -46697,12 +47014,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31838 +#: book.translate.xml:31845 msgid "Live Monitoring Using Audit Pipes" msgstr "使用 Audit Pipes 即時監視" #. (itstool) path: sect2/para -#: book.translate.xml:31840 +#: book.translate.xml:31847 msgid "" "Audit pipes are cloning pseudo-devices which allow applications to tap the " "live audit record stream. This is primarily of interest to authors of " @@ -46714,13 +47031,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:31849 +#: book.translate.xml:31856 #, no-wrap msgid "<prompt>#</prompt> <userinput>praudit /dev/auditpipe</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31851 +#: book.translate.xml:31858 msgid "" "By default, audit pipe device nodes are accessible only to the <systemitem " "class=\"username\">root</systemitem> user. To make them accessible to the " @@ -46729,13 +47046,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31857 +#: book.translate.xml:31864 #, no-wrap msgid "add path 'auditpipe*' mode 0440 group audit" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31859 +#: book.translate.xml:31866 msgid "" "See <citerefentry><refentrytitle>devfs.rules</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more information on configuring the devfs file " @@ -46743,7 +47060,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:31863 +#: book.translate.xml:31870 msgid "" "It is easy to produce audit event feedback cycles, in which the viewing of " "each audit event results in the generation of more audit events. For " @@ -46756,12 +47073,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:31878 +#: book.translate.xml:31885 msgid "Rotating and Compressing Audit Trail Files" msgstr "翻轉與壓縮 Audit Trail 檔" #. (itstool) path: sect2/para -#: book.translate.xml:31880 +#: book.translate.xml:31887 msgid "" "Audit trails are written to by the kernel and managed by the audit daemon, " "<citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</manvolnum></" @@ -46776,13 +47093,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:31892 +#: book.translate.xml:31899 #, no-wrap msgid "<prompt>#</prompt> <userinput>audit -n</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31894 +#: book.translate.xml:31901 msgid "" "If <citerefentry><refentrytitle>auditd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is not currently running, this command will fail " @@ -46790,26 +47107,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31897 +#: book.translate.xml:31904 msgid "" "Adding the following line to <filename>/etc/crontab</filename> will schedule " "this rotation every twelve hours:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31901 +#: book.translate.xml:31908 #, no-wrap msgid "0 */12 * * * root /usr/sbin/audit -n" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31903 +#: book.translate.xml:31910 msgid "" "The change will take effect once <filename>/etc/crontab</filename> is saved." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31906 +#: book.translate.xml:31913 msgid "" "Automatic rotation of the audit trail file based on file size is possible " "using <option>filesz</option> in <filename>audit_control</filename> as " @@ -46817,7 +47134,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31910 +#: book.translate.xml:31917 msgid "" "As audit trail files can become very large, it is often desirable to " "compress or otherwise archive trails once they have been closed by the audit " @@ -46829,7 +47146,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:31920 +#: book.translate.xml:31927 #, no-wrap msgid "" "#\n" @@ -46841,7 +47158,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:31927 +#: book.translate.xml:31934 msgid "" "Other archiving activities might include copying trail files to a " "centralized server, deleting old trail files, or reducing the audit trail to " @@ -46851,12 +47168,12 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:31946 +#: book.translate.xml:31953 msgid "Storage" msgstr "儲存設備" #. (itstool) path: sect1/para -#: book.translate.xml:31951 +#: book.translate.xml:31958 msgid "" "This chapter covers the use of disks and storage media in FreeBSD. This " "includes <acronym>SCSI</acronym> and <acronym>IDE</acronym> disks, " @@ -46868,22 +47185,22 @@ msgstr "" "acronym> 媒體、記憶體磁碟及 <acronym>USB</acronym> 儲存裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:31961 +#: book.translate.xml:31968 msgid "How to add additional hard disks to a FreeBSD system." msgstr "如何在 FreeBSD 系統加入額外的硬碟。" #. (itstool) path: listitem/para -#: book.translate.xml:31966 +#: book.translate.xml:31973 msgid "How to grow the size of a disk's partition on FreeBSD." msgstr "如何在 FreeBSD 擴增磁碟分割區的大小。" #. (itstool) path: listitem/para -#: book.translate.xml:31971 +#: book.translate.xml:31978 msgid "How to configure FreeBSD to use <acronym>USB</acronym> storage devices." msgstr "如何設定 FreeBSD 使用 <acronym>USB</acronym> 儲存裝置。" #. (itstool) path: listitem/para -#: book.translate.xml:31976 +#: book.translate.xml:31983 msgid "" "How to use <acronym>CD</acronym> and <acronym>DVD</acronym> media on a " "FreeBSD system." @@ -46892,37 +47209,37 @@ msgstr "" "體。" #. (itstool) path: listitem/para -#: book.translate.xml:31981 +#: book.translate.xml:31988 msgid "How to use the backup programs available under FreeBSD." msgstr "如何使用在 FreeBSD 下可用的備份程式。" #. (itstool) path: listitem/para -#: book.translate.xml:31986 +#: book.translate.xml:31993 msgid "How to set up memory disks." msgstr "如何設定記憶體磁碟。" #. (itstool) path: listitem/para -#: book.translate.xml:31990 +#: book.translate.xml:31997 msgid "What file system snapshots are and how to use them efficiently." msgstr "什麼是檔案系統快照 (Snapshot) 以及如何有效使用。" #. (itstool) path: listitem/para -#: book.translate.xml:31995 +#: book.translate.xml:32002 msgid "How to use quotas to limit disk space usage." msgstr "如何使用配額 (Quota) 來限制磁碟空間使用量。" #. (itstool) path: listitem/para -#: book.translate.xml:31999 +#: book.translate.xml:32006 msgid "How to encrypt disks and swap to secure them against attackers." msgstr "如何加密磁碟及交換空間來防範攻擊者。" #. (itstool) path: listitem/para -#: book.translate.xml:32004 +#: book.translate.xml:32011 msgid "How to configure a highly available storage network." msgstr "如何設定高可用性 (Highly available) 的儲存網路。" #. (itstool) path: listitem/para -#: book.translate.xml:32013 +#: book.translate.xml:32020 msgid "" "Know how to <link linkend=\"kernelconfig\">configure and install a new " "FreeBSD kernel</link>." @@ -46930,24 +47247,24 @@ msgstr "" "了解如何 <link linkend=\"kernelconfig\">設定並安裝新的 FreeBSD 核心</link>。" #. (itstool) path: info/title -#: book.translate.xml:32021 +#: book.translate.xml:32028 msgid "Adding Disks" msgstr "加入磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:32024 +#: book.translate.xml:32031 msgid "" "<personname> <firstname>David</firstname> <surname>O'Brien</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32034 +#: book.translate.xml:32041 msgid "<primary>disks</primary> <secondary>adding</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32039 +#: book.translate.xml:32046 msgid "" "This section describes how to add a new <acronym>SATA</acronym> disk to a " "machine that currently only has a single drive. First, turn off the computer " @@ -46960,7 +47277,7 @@ msgstr "" "重新啟動系統並登入 <systemitem class=\"username\">root</systemitem>。" #. (itstool) path: sect1/para -#: book.translate.xml:32047 +#: book.translate.xml:32054 msgid "" "Inspect <filename>/var/run/dmesg.boot</filename> to ensure the new disk was " "found. In this example, the newly added <acronym>SATA</acronym> drive will " @@ -46971,12 +47288,12 @@ msgstr "" "碟。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32053 book.translate.xml:32149 +#: book.translate.xml:32060 book.translate.xml:32156 msgid "<primary><command>gpart</command></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32057 +#: book.translate.xml:32064 msgid "" "For this example, a single large partition will be created on the new disk. " "The <link xlink:href=\"http://en.wikipedia.org/wiki/GUID_Partition_Table\"> " @@ -46988,7 +47305,7 @@ msgstr "" "分割表格式而非較舊與通用性較差的 <acronym>MBR</acronym> 結構。" #. (itstool) path: note/para -#: book.translate.xml:32064 +#: book.translate.xml:32071 msgid "" "If the disk to be added is not blank, old partition information can be " "removed with <command>gpart delete</command>. See " @@ -47000,7 +47317,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 取得詳細資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:32070 +#: book.translate.xml:32077 msgid "" "The partition scheme is created, and then a single partition is added. To " "improve performance on newer disks with larger hardware block sizes, the " @@ -47010,7 +47327,7 @@ msgstr "" "塊大小 (Block size),此分割區會對齊 1 MB 的邊界:" #. (itstool) path: sect1/screen -#: book.translate.xml:32075 +#: book.translate.xml:32082 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s GPT ada1</userinput>\n" @@ -47018,7 +47335,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32078 +#: book.translate.xml:32085 msgid "" "Depending on use, several smaller partitions may be desired. See " "<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" @@ -47029,14 +47346,14 @@ msgstr "" "citerefentry> 來取得建立較小分割區的選項。" #. (itstool) path: sect1/para -#: book.translate.xml:32082 +#: book.translate.xml:32089 msgid "" "The disk partition information can be viewed with <command>gpart show</" "command>:" msgstr "磁碟分割區資訊可以使用 <command>gpart show</command> 檢視:" #. (itstool) path: sect1/screen -#: book.translate.xml:32085 +#: book.translate.xml:32092 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>gpart show ada1</userinput>\n" @@ -47047,18 +47364,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32091 +#: book.translate.xml:32098 msgid "A file system is created in the new partition on the new disk:" msgstr "在新磁碟的新分割區上建立檔案系統:" #. (itstool) path: sect1/screen -#: book.translate.xml:32093 +#: book.translate.xml:32100 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/ada1p1</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32095 +#: book.translate.xml:32102 msgid "" "An empty directory is created as a <emphasis>mountpoint</emphasis>, a " "location for mounting the new disk in the original disk's file system:" @@ -47067,13 +47384,13 @@ msgstr "" "磁碟的檔案系統上可用來掛載新磁碟的位置:" #. (itstool) path: sect1/screen -#: book.translate.xml:32099 +#: book.translate.xml:32106 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir /newdisk</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32101 +#: book.translate.xml:32108 msgid "" "Finally, an entry is added to <filename>/etc/fstab</filename> so the new " "disk will be mounted automatically at startup:" @@ -47082,41 +47399,41 @@ msgstr "" "的磁碟:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:32105 +#: book.translate.xml:32112 #, no-wrap msgid "/dev/ada1p1\t/newdisk\tufs\trw\t2\t2" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32107 +#: book.translate.xml:32114 msgid "The new disk can be mounted manually, without restarting the system:" msgstr "新的磁碟也可手動掛載,無須重新啟動系統:" #. (itstool) path: sect1/screen -#: book.translate.xml:32110 +#: book.translate.xml:32117 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /newdisk</userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:32115 +#: book.translate.xml:32122 msgid "Resizing and Growing Disks" msgstr "重設大小與擴增磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:32118 +#: book.translate.xml:32125 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32128 +#: book.translate.xml:32135 msgid "<primary>disks</primary> <secondary>resizing</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32133 +#: book.translate.xml:32140 msgid "" "A disk's capacity can increase without any changes to the data already " "present. This happens commonly with virtual machines, when the virtual disk " @@ -47131,7 +47448,7 @@ msgstr "" "emphasis> 磁碟內容來使用增加的容量。" #. (itstool) path: sect1/para -#: book.translate.xml:32142 +#: book.translate.xml:32149 msgid "" "Determine the device name of the disk to be resized by inspecting <filename>/" "var/run/dmesg.boot</filename>. In this example, there is only one " @@ -47143,12 +47460,12 @@ msgstr "" "以 <filename>ada0</filename> 表示。" #. (itstool) path: sect1/para -#: book.translate.xml:32153 +#: book.translate.xml:32160 msgid "List the partitions on the disk to see the current configuration:" msgstr "列出在磁碟上的分割區來查看目前的設定:" #. (itstool) path: sect1/screen -#: book.translate.xml:32156 +#: book.translate.xml:32163 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show <replaceable>ada0</replaceable></userinput>\n" @@ -47160,7 +47477,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32164 +#: book.translate.xml:32171 msgid "" "If the disk was formatted with the <link xlink:href=\"http://en.wikipedia." "org/wiki/GUID_Partition_Table\"> <acronym>GPT</acronym></link> partitioning " @@ -47174,7 +47491,7 @@ msgstr "" "分割區已不存在於磁碟結尾。 使用 <command>gpart</command> 來修正備份分割區:" #. (itstool) path: note/screen -#: book.translate.xml:32172 +#: book.translate.xml:32179 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart recover <replaceable>ada0</replaceable></userinput>\n" @@ -47182,7 +47499,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32176 +#: book.translate.xml:32183 msgid "" "Now the additional space on the disk is available for use by a new " "partition, or an existing partition can be expanded:" @@ -47191,7 +47508,7 @@ msgstr "" "區:" #. (itstool) path: sect1/screen -#: book.translate.xml:32180 +#: book.translate.xml:32187 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show <replaceable>ada0</replaceable></userinput>\n" @@ -47203,7 +47520,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32187 +#: book.translate.xml:32194 msgid "" "Partitions can only be resized into contiguous free space. Here, the last " "partition on the disk is the swap partition, but the second partition is the " @@ -47216,7 +47533,7 @@ msgstr "" "的資料,所以可以安全的卸載、刪除,然後在重設其他分割區大小之後再重建。" #. (itstool) path: sect1/screen -#: book.translate.xml:32194 +#: book.translate.xml:32201 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>swapoff <replaceable>/dev/ada0p3</replaceable></userinput>\n" @@ -47230,7 +47547,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:32204 +#: book.translate.xml:32211 msgid "" "There is risk of data loss when modifying the partition table of a mounted " "file system. It is best to perform the following steps on an unmounted file " @@ -47244,13 +47561,13 @@ msgstr "" "在掛載的檔案系統上修改分割區表:" #. (itstool) path: warning/screen -#: book.translate.xml:32212 +#: book.translate.xml:32219 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl kern.geom.debugflags=16</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32215 +#: book.translate.xml:32222 msgid "" "Resize the partition, leaving room to recreate a swap partition of the " "desired size. This only modifies the size of the partition. The file system " @@ -47260,7 +47577,7 @@ msgstr "" "分割區中的檔案系統會在另一個步驟擴增。" #. (itstool) path: sect1/screen -#: book.translate.xml:32220 +#: book.translate.xml:32227 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart resize -i <replaceable>2</replaceable> -a 4k -s <replaceable>47G</replaceable> <replaceable>ada0</replaceable></userinput>\n" @@ -47273,12 +47590,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32228 +#: book.translate.xml:32235 msgid "Recreate the swap partition:" msgstr "重新建立交換分割區:" #. (itstool) path: sect1/screen -#: book.translate.xml:32230 +#: book.translate.xml:32237 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart add -t freebsd-swap -a 4k <replaceable>ada0</replaceable></userinput>\n" @@ -47292,14 +47609,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32239 +#: book.translate.xml:32246 msgid "" "Grow the <acronym>UFS</acronym> file system to use the new capacity of the " "resized partition:" msgstr "擴增 <acronym>UFS</acronym> 檔案系統來使用重設分割區大小之後的新容量:" #. (itstool) path: note/para -#: book.translate.xml:32243 +#: book.translate.xml:32250 msgid "" "Growing a live <acronym>UFS</acronym> file system is only possible in " "FreeBSD 10.0-RELEASE and later. For earlier versions, the file system must " @@ -47309,7 +47626,7 @@ msgstr "" "檔案系統,較先前的版本必須將檔案系統卸載。" #. (itstool) path: sect1/screen -#: book.translate.xml:32248 +#: book.translate.xml:32255 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>growfs <replaceable>/dev/ada0p2</replaceable></userinput>\n" @@ -47322,24 +47639,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32256 +#: book.translate.xml:32263 msgid "" "Both the partition and the file system on it have now been resized to use " "the newly-available disk space." msgstr "現在分割區與檔案系統已透過重設大小來使用新增加的磁碟空間。" #. (itstool) path: info/title -#: book.translate.xml:32262 +#: book.translate.xml:32269 msgid "<acronym>USB</acronym> Storage Devices" msgstr "<acronym>USB</acronym> 儲存裝置" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32275 +#: book.translate.xml:32282 msgid "<primary>USB</primary> <secondary>disks</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32280 +#: book.translate.xml:32287 msgid "" "Many external storage solutions, such as hard drives, <acronym>USB</acronym> " "thumbdrives, and <acronym>CD</acronym> and <acronym>DVD</acronym> burners, " @@ -47352,7 +47669,7 @@ msgstr "" "<acronym>USB</acronym> 1.x, 2.0 及 3.0 裝置的支援。" #. (itstool) path: note/para -#: book.translate.xml:32287 +#: book.translate.xml:32294 msgid "" "<acronym>USB</acronym> 3.0 support is not compatible with some hardware, " "including Haswell (Lynx point) chipsets. If FreeBSD boots with a " @@ -47364,7 +47681,7 @@ msgstr "" "在系統 <acronym>BIOS</acronym> 關閉 xHCI/USB3。" #. (itstool) path: sect1/para -#: book.translate.xml:32294 +#: book.translate.xml:32301 msgid "" "Support for <acronym>USB</acronym> storage devices is built into the " "<filename>GENERIC</filename> kernel. For a custom kernel, be sure that the " @@ -47374,7 +47691,7 @@ msgstr "" "filename> 核心,若為自訂的核心,請確定在核心設定檔中有下列幾行設定:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:32299 +#: book.translate.xml:32306 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47390,7 +47707,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32310 +#: book.translate.xml:32317 msgid "" "FreeBSD uses the <citerefentry><refentrytitle>umass</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver which uses the " @@ -47409,7 +47726,7 @@ msgstr "" "emphasis>在自訂核心設定檔中引用 <option>device atapicam</option>。" #. (itstool) path: sect1/para -#: book.translate.xml:32320 +#: book.translate.xml:32327 msgid "" "The rest of this section demonstrates how to verify that a <acronym>USB</" "acronym> storage device is recognized by FreeBSD and how to configure the " @@ -47419,12 +47736,12 @@ msgstr "" "以及如何設定該裝置。" #. (itstool) path: sect2/title -#: book.translate.xml:32325 +#: book.translate.xml:32332 msgid "Device Configuration" msgstr "裝置設定" #. (itstool) path: sect2/para -#: book.translate.xml:32327 +#: book.translate.xml:32334 msgid "" "To test the <acronym>USB</acronym> configuration, plug in the <acronym>USB</" "acronym> device. Use <command>dmesg</command> to confirm that the drive " @@ -47435,7 +47752,7 @@ msgstr "" "如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:32333 +#: book.translate.xml:32340 #, no-wrap msgid "" "umass0: <STECH Simple Drive, class 0/0, rev 2.00/1.04, addr 3> on usbus0\n" @@ -47450,7 +47767,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32343 +#: book.translate.xml:32350 msgid "" "The brand, device node (<filename>da0</filename>), speed, and size will " "differ according to the device." @@ -47458,7 +47775,7 @@ msgstr "" "不同的裝置會有不同的廠牌、裝置節點 (<filename>da0</filename>)、速度與大小。" #. (itstool) path: sect2/para -#: book.translate.xml:32346 +#: book.translate.xml:32353 msgid "" "Since the <acronym>USB</acronym> device is seen as a <acronym>SCSI</acronym> " "one, <command>camcontrol</command> can be used to list the <acronym>USB</" @@ -47469,7 +47786,7 @@ msgstr "" "存裝置:" #. (itstool) path: sect2/screen -#: book.translate.xml:32351 +#: book.translate.xml:32358 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -47477,7 +47794,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32354 +#: book.translate.xml:32361 msgid "" "Alternately, <command>usbconfig</command> can be used to list the device. " "Refer to <citerefentry vendor=\"current\"><refentrytitle>usbconfig</" @@ -47489,7 +47806,7 @@ msgstr "" "manvolnum></citerefentry> 來取得更多有關此指令的資訊。" #. (itstool) path: sect2/screen -#: book.translate.xml:32358 +#: book.translate.xml:32365 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>usbconfig</userinput>\n" @@ -47497,7 +47814,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32361 +#: book.translate.xml:32368 msgid "" "If the device has not been formatted, refer to <xref linkend=\"disks-adding" "\"/> for instructions on how to format and create partitions on the " @@ -47511,7 +47828,7 @@ msgstr "" "\"mount-unmount\"/> 中的說明掛載磁碟。" #. (itstool) path: warning/para -#: book.translate.xml:32368 +#: book.translate.xml:32375 msgid "" "Allowing untrusted users to mount arbitrary media, by enabling <varname>vfs." "usermount</varname> as described below, should not be considered safe from a " @@ -47523,7 +47840,7 @@ msgstr "" "裝置。" #. (itstool) path: sect2/para -#: book.translate.xml:32375 +#: book.translate.xml:32382 msgid "" "To make the device mountable as a normal user, one solution is to make all " "users of the device a member of the <systemitem class=\"groupname" @@ -47541,7 +47858,7 @@ msgstr "" "systemitem> 能夠讀取與寫入裝置:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32382 +#: book.translate.xml:32389 #, no-wrap msgid "" "[localrules=5]\n" @@ -47549,7 +47866,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32386 +#: book.translate.xml:32393 msgid "" "If internal <acronym>SCSI</acronym> disks are also installed in the system, " "change the second line as follows:" @@ -47557,13 +47874,13 @@ msgstr "" "若系統也同時安裝了內建 <acronym>SCSI</acronym> 磁碟,請更改第二行如下:" #. (itstool) path: note/programlisting -#: book.translate.xml:32390 +#: book.translate.xml:32397 #, no-wrap msgid "add path 'da[<replaceable>3</replaceable>-9]*' mode 0660 group operator" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32392 +#: book.translate.xml:32399 msgid "" "This will exclude the first three <acronym>SCSI</acronym> disks " "(<filename>da0</filename> to <filename>da2</filename>)from belonging to the " @@ -47581,18 +47898,18 @@ msgstr "" "資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:32400 +#: book.translate.xml:32407 msgid "Next, enable the ruleset in <filename>/etc/rc.conf</filename>:" msgstr "接著,在 <filename>/etc/rc.conf</filename> 開啟規則:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32403 +#: book.translate.xml:32410 #, no-wrap msgid "devfs_system_ruleset=\"localrules\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32405 +#: book.translate.xml:32412 msgid "" "Then, instruct the system to allow regular users to mount file systems by " "adding the following line to <filename>/etc/sysctl.conf</filename>:" @@ -47601,13 +47918,13 @@ msgstr "" "者掛載檔案系統:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32409 +#: book.translate.xml:32416 #, no-wrap msgid "vfs.usermount=1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32411 +#: book.translate.xml:32418 msgid "" "Since this only takes effect after the next reboot, use <command>sysctl</" "command> to set this variable now:" @@ -47616,7 +47933,7 @@ msgstr "" "變數:" #. (itstool) path: sect2/screen -#: book.translate.xml:32414 +#: book.translate.xml:32421 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sysctl vfs.usermount=1</userinput>\n" @@ -47624,7 +47941,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32417 +#: book.translate.xml:32424 msgid "" "The final step is to create a directory where the file system is to be " "mounted. This directory needs to be owned by the user that is to mount the " @@ -47642,7 +47959,7 @@ msgstr "" "組:" #. (itstool) path: sect2/screen -#: book.translate.xml:32427 +#: book.translate.xml:32434 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /mnt/<replaceable>username</replaceable></userinput>\n" @@ -47650,7 +47967,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32430 +#: book.translate.xml:32437 msgid "" "Suppose a <acronym>USB</acronym> thumbdrive is plugged in, and a device " "<filename>/dev/da0s1</filename> appears. If the device is formatted with a " @@ -47661,33 +47978,33 @@ msgstr "" "使用以下指令掛載該檔案系統:" #. (itstool) path: sect2/screen -#: book.translate.xml:32435 +#: book.translate.xml:32442 #, no-wrap msgid "<prompt>%</prompt> <userinput>mount -t msdosfs -o -m=644,-M=755 /dev/da0s1 /mnt/<replaceable>username</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32437 +#: book.translate.xml:32444 msgid "" "Before the device can be unplugged, it <emphasis>must</emphasis> be " "unmounted first:" msgstr "在裝置可以被拔除前,<emphasis>必須</emphasis>先卸載:" #. (itstool) path: sect2/screen -#: book.translate.xml:32440 +#: book.translate.xml:32447 #, no-wrap msgid "<prompt>%</prompt> <userinput>umount /mnt/<replaceable>username</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32442 +#: book.translate.xml:32449 msgid "" "After device removal, the system message buffer will show messages similar " "to the following:" msgstr "裝置移除之後,系統訊息緩衝區會顯示如下的訊息:" #. (itstool) path: sect2/screen -#: book.translate.xml:32445 +#: book.translate.xml:32452 #, no-wrap msgid "" "umass0: at uhub3, port 2, addr 3 (disconnected)\n" @@ -47697,12 +48014,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32452 +#: book.translate.xml:32459 msgid "Automounting Removable Media" msgstr "自動掛載可移除的媒體" #. (itstool) path: note/para -#: book.translate.xml:32455 +#: book.translate.xml:32462 msgid "" "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" "citerefentry> supports automatic mounting of removable media starting with " @@ -47713,7 +48030,7 @@ msgstr "" "體。" #. (itstool) path: sect2/para -#: book.translate.xml:32459 +#: book.translate.xml:32466 msgid "" "<acronym>USB</acronym> devices can be automatically mounted by uncommenting " "this line in <filename>/etc/auto_master</filename>:" @@ -47722,18 +48039,18 @@ msgstr "" "<acronym>USB</acronym> 裝置:" #. (itstool) path: sect2/screen -#: book.translate.xml:32463 +#: book.translate.xml:32470 #, no-wrap msgid "/media\t\t-media\t\t-nosuid" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32465 +#: book.translate.xml:32472 msgid "Then add these lines to <filename>/etc/devd.conf</filename>:" msgstr "然後加入這些行到 <filename>/etc/devd.conf</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:32468 +#: book.translate.xml:32475 #, no-wrap msgid "" "notify 100 {\n" @@ -47744,7 +48061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32474 +#: book.translate.xml:32481 msgid "" "Reload the configuration if <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry> and " @@ -47757,7 +48074,7 @@ msgstr "" "載入設定:" #. (itstool) path: sect2/screen -#: book.translate.xml:32477 +#: book.translate.xml:32484 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount reload</userinput>\n" @@ -47765,7 +48082,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32480 +#: book.translate.xml:32487 msgid "" "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" "citerefentry> can be set to start at boot by adding this line to <filename>/" @@ -47776,13 +48093,13 @@ msgstr "" "filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32483 book.translate.xml:53341 +#: book.translate.xml:32490 book.translate.xml:52962 #, no-wrap msgid "autofs_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32485 +#: book.translate.xml:32492 msgid "" "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" "citerefentry> requires <citerefentry><refentrytitle>devd</" @@ -47794,12 +48111,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>,預設已經開啟。" #. (itstool) path: sect2/para -#: book.translate.xml:32488 +#: book.translate.xml:32495 msgid "Start the services immediately with:" msgstr "立即啟動服務:" #. (itstool) path: sect2/screen -#: book.translate.xml:32490 +#: book.translate.xml:32497 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount start</userinput>\n" @@ -47809,7 +48126,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32495 +#: book.translate.xml:32502 msgid "" "Each file system that can be automatically mounted appears as a directory in " "<filename>/media/</filename>. The directory is named after the file system " @@ -47819,7 +48136,7 @@ msgstr "" "檔案系統的標籤來命名目錄,若標籤遺失,則會以裝置節點命名。" #. (itstool) path: sect2/para -#: book.translate.xml:32500 +#: book.translate.xml:32507 msgid "" "The file system is transparently mounted on the first access, and unmounted " "after a period of inactivity. Automounted drives can also be unmounted " @@ -47829,13 +48146,13 @@ msgstr "" "碟也可手動卸載:" #. (itstool) path: sect2/screen -#: book.translate.xml:32504 +#: book.translate.xml:32511 #, no-wrap msgid "<prompt>#</prompt> <userinput>automount -fu</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32506 +#: book.translate.xml:32513 msgid "" "This mechanism is typically used for memory cards and <acronym>USB</acronym> " "memory sticks. It can be used with any block device, including optical " @@ -47844,26 +48161,248 @@ msgstr "" "這個機制一般會用在記憶卡與 <acronym>USB</acronym> 隨身碟,也可用在任何 Block " "裝置,包含光碟機或 <acronym>iSCSI</acronym> <acronym>LUN</acronym>。" +#. (itstool) path: sect2/title +#: book.translate.xml:32520 +msgid "<acronym>USB</acronym> Mass Storage Target" +msgstr "<acronym>USB</acronym> 大容量儲存目標" + +#. (itstool) path: note/para +#: book.translate.xml:32523 +msgid "" +"The <citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> driver is a <acronym>USB</acronym> device mode " +"driver first available in FreeBSD 12.0." +msgstr "" +"<citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> 驅動程式是一個在 FreeBSD 12.0 之後才可用的 " +"<acronym>USB</acronym> 裝置模式驅動程式。" + +#. (itstool) path: sect2/para +#: book.translate.xml:32527 +msgid "" +"When running on <acronym>USB</acronym> <acronym>OTG</acronym>-compliant " +"hardware like that built into many embedded boards, the FreeBSD " +"<acronym>USB</acronym> stack can run in <emphasis>device mode</emphasis>. " +"Device mode makes it possible for the computer to present itself as " +"different kinds of <acronym>USB</acronym> device classes, including serial " +"ports, network adapters, and mass storage. A <acronym>USB</acronym> host " +"like a laptop or desktop computer is able to access them just like physical " +"<acronym>USB</acronym> devices." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32538 +msgid "" +"The <citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> kernel module allows the <acronym>USB</acronym> " +"stack to switch between host-side and device-side automatically, depending " +"on what is connected to the <acronym>USB</acronym> port. Connecting a " +"<acronym>USB</acronym> device like a memory stick to the <acronym>USB</" +"acronym> <acronym>OTG</acronym> port causes FreeBSD to switch to host mode. " +"Connecting a <acronym>USB</acronym> host like a computer causes FreeBSD to " +"switch to device mode." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32548 +msgid "" +"What FreeBSD presents to the <acronym>USB</acronym> host depends on the " +"<varname>hw.usb.template</varname> sysctl. See " +"<citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> for the list of available values. Note that for " +"the host to notice the configuration change, it must be either physically " +"disconnected and reconnected, or forced to rescan the <acronym>USB</acronym> " +"bus in a system-specific way. When FreeBSD is running on the host, " +"<citerefentry vendor=\"current\"><refentrytitle>usbconfig</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> <command>reset</" +"command> can be used. This also must be done after loading " +"<filename>usb_template.ko</filename> if the <acronym>USB</acronym> host was " +"already connected to the <acronym>USB</acronym> <acronym>OTG</acronym> " +"socket." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32560 +msgid "" +"The <varname>hw.usb.template</varname> sysctl is set to 0 by default, making " +"FreeBSD work as a <acronym>USB</acronym> Mass Storage target. Both " +"<citerefentry><refentrytitle>usb_template</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> and <citerefentry><refentrytitle>cfumass</" +"refentrytitle><manvolnum>4</manvolnum></citerefentry> kernel modules must be " +"loaded. <citerefentry><refentrytitle>cfumass</refentrytitle><manvolnum>4</" +"manvolnum></citerefentry> interfaces to the CTL subsystem, the same one that " +"is used for <acronym>iSCSI</acronym> or Fibre Channel targets. On the host " +"side, <acronym>USB</acronym> Mass Storage initiators can only access a " +"single <acronym>LUN</acronym>, <acronym>LUN</acronym> 0." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32571 +msgid "" +"<acronym>USB</acronym> Mass Storage does not require the " +"<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> daemon to be running, although it can be used if desired. This " +"is different from <acronym>iSCSI</acronym>. Thus, there are two ways to " +"configure the target: <citerefentry><refentrytitle>ctladm</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>, or " +"<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry>. Both require the <filename>cfumass.ko</filename> kernel " +"module to be loaded. The module can be loaded manually:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:32579 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>kldload cfumass</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32581 +msgid "" +"If <filename>cfumass.ko</filename> has not been built into the kernel, " +"<filename>/boot/loader.conf</filename> can be set to load the module at boot:" +msgstr "" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:32585 +#, no-wrap +msgid "cfumass_load=\"YES\"" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32587 +msgid "" +"A <acronym>LUN</acronym> can be created without the " +"<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> daemon:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:32590 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>ctladm create -b block -o file=/data/target0</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32592 +msgid "" +"This presents the contents of the image file <filename>/data/target0</" +"filename> as a <acronym>LUN</acronym> to the <acronym>USB</acronym> host. " +"The file must exist before executing the command. To configure the " +"<acronym>LUN</acronym> at system startup, add the command to <filename>/etc/" +"rc.local</filename>." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32599 +msgid "" +"<citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</manvolnum></" +"citerefentry> can also be used to manage <acronym>LUN</acronym>s. Create " +"<filename>/etc/ctl.conf</filename>, add a line to <filename>/etc/rc.conf</" +"filename> to make sure <citerefentry><refentrytitle>ctld</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> is automatically " +"started at boot, and then start the daemon." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32606 +msgid "" +"This is an example of a simple <filename>/etc/ctl.conf</filename> " +"configuration file. Refer to <citerefentry><refentrytitle>ctl.conf</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry> for a more complete " +"description of the options." +msgstr "" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:32611 +#, no-wrap +msgid "" +"target naa.50015178f369f092 {\n" +"\tlun 0 {\n" +"\t\tpath /data/target0\n" +"\t\tsize 4G\n" +"\t}\n" +"}" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32618 +msgid "" +"The example creates a single target with a single <acronym>LUN</acronym>. " +"The <literal>naa.50015178f369f092</literal> is a device identifier composed " +"of 32 random hexadecimal digits. The <literal>path</literal> line defines " +"the full path to a file or zvol backing the <acronym>LUN</acronym>. That " +"file must exist before starting <citerefentry><refentrytitle>ctld</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>. The second line is " +"optional and specifies the size of the <acronym>LUN</acronym>." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32628 +msgid "" +"To make sure the <citerefentry><refentrytitle>ctld</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon is started at " +"boot, add this line to <filename>/etc/rc.conf</filename>:" +msgstr "" + +#. (itstool) path: sect2/programlisting +#: book.translate.xml:32632 book.translate.xml:57488 +#, no-wrap +msgid "ctld_enable=\"YES\"" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32634 book.translate.xml:57490 +msgid "" +"To start <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> now, run this command:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:32636 book.translate.xml:57492 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>service ctld start</userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:32638 +msgid "" +"As the <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> daemon is started, it reads <filename>/etc/ctl." +"conf</filename>. If this file is edited after the daemon starts, reload the " +"changes so they take effect immediately:" +msgstr "" +"當 <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> Daemon 啟動後,它會讀取 <filename>/etc/ctl.conf</" +"filename>,若這個檔案在 Daemon 啟動之後才做修改,要重新載入變更的內容才能立即" +"生效:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:32643 book.translate.xml:57499 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>service ctld reload</userinput>" +msgstr "" + #. (itstool) path: info/title -#: book.translate.xml:32515 +#: book.translate.xml:32649 msgid "Creating and Using <acronym>CD</acronym> Media" msgstr "建立與使用 <acronym>CD</acronym> 媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:32518 book.translate.xml:46096 +#: book.translate.xml:32652 book.translate.xml:45717 msgid "" "<personname> <firstname>Mike</firstname> <surname>Meyer</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32528 +#: book.translate.xml:32662 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>creating</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32533 +#: book.translate.xml:32667 msgid "" "Compact Disc (<acronym>CD</acronym>) media provide a number of features that " "differentiate them from conventional disks. They are designed so that they " @@ -47875,25 +48414,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32542 +#: book.translate.xml:32676 msgid "<primary><acronym>ISO</acronym> 9660</primary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:32544 book.translate.xml:32734 +#: book.translate.xml:32678 book.translate.xml:32868 msgid "<primary>file systems</primary> <secondary>ISO 9660</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32549 +#: book.translate.xml:32683 msgid "" "<primary><acronym>CD</acronym> burner</primary> <secondary><acronym>ATAPI</" "acronym></secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32554 +#: book.translate.xml:32688 msgid "" "The FreeBSD Ports Collection provides several utilities for burning and " "duplicating audio and data <acronym>CD</acronym>s. This chapter demonstrates " @@ -47903,19 +48442,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:32564 +#: book.translate.xml:32698 msgid "Supported Devices" msgstr "支援的裝置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32577 +#: book.translate.xml:32711 msgid "" "<primary><acronym>CD</acronym> burner</primary> <secondary>ATAPI/CAM driver</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32582 +#: book.translate.xml:32716 msgid "" "The <filename>GENERIC</filename> kernel provides support for <acronym>SCSI</" "acronym>, <acronym>USB</acronym>, and <acronym>ATAPI</acronym> <acronym>CD</" @@ -47925,13 +48464,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32589 +#: book.translate.xml:32723 msgid "" "For a <acronym>SCSI</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32592 +#: book.translate.xml:32726 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47941,13 +48480,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32597 +#: book.translate.xml:32731 msgid "" "For a <acronym>USB</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32600 +#: book.translate.xml:32734 #, no-wrap msgid "" "device scbus\t# SCSI bus (required for ATA/SCSI)\n" @@ -47963,13 +48502,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32611 +#: book.translate.xml:32745 msgid "" "For an <acronym>ATAPI</acronym> burner, make sure these options are present:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32614 +#: book.translate.xml:32748 #, no-wrap msgid "" "device ata\t# Legacy ATA/SATA controllers\n" @@ -47979,40 +48518,40 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32620 +#: book.translate.xml:32754 msgid "" "On FreeBSD versions prior to 10.x, this line is also needed in the kernel " "configuration file if the burner is an <acronym>ATAPI</acronym> device:" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:32624 +#: book.translate.xml:32758 #, no-wrap msgid "device atapicam" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32626 +#: book.translate.xml:32760 msgid "" "Alternately, this driver can be loaded at boot time by adding the following " "line to <filename>/boot/loader.conf</filename>:" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:32630 +#: book.translate.xml:32764 #, no-wrap msgid "atapicam_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32632 +#: book.translate.xml:32766 msgid "" "This will require a reboot of the system as this driver can only be loaded " "at boot time." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32636 +#: book.translate.xml:32770 msgid "" "To verify that FreeBSD recognizes the device, run <command>dmesg</command> " "and look for an entry for the device. On systems prior to 10.x, the device " @@ -48021,7 +48560,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32642 +#: book.translate.xml:32776 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>dmesg | grep cd</userinput>\n" @@ -48033,12 +48572,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32651 +#: book.translate.xml:32785 msgid "Burning a <acronym>CD</acronym>" msgstr "燒錄 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32653 +#: book.translate.xml:32787 msgid "" "In FreeBSD, <command>cdrecord</command> can be used to burn <acronym>CD</" "acronym>s. This command is installed with the <package>sysutils/cdrtools</" @@ -48046,7 +48585,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32657 +#: book.translate.xml:32791 msgid "" "While <command>cdrecord</command> has many options, basic usage is simple. " "Specify the name of the <acronym>ISO</acronym> file to burn and, if the " @@ -48054,26 +48593,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32663 +#: book.translate.xml:32797 #, no-wrap msgid "<prompt>#</prompt> <userinput>cdrecord <replaceable>dev=device</replaceable> <replaceable>imagefile.iso</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32665 +#: book.translate.xml:32799 msgid "" "To determine the device name of the burner, use <option>-scanbus</option> " "which might produce results like this:" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32669 +#: book.translate.xml:32803 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>burning</secondary>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32673 +#: book.translate.xml:32807 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cdrecord -scanbus</userinput>\n" @@ -48100,7 +48639,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32695 +#: book.translate.xml:32829 msgid "" "Locate the entry for the <acronym>CD</acronym> burner and use the three " "numbers separated by commas as the value for <option>dev</option>. In this " @@ -48112,14 +48651,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32704 +#: book.translate.xml:32838 msgid "" "Alternately, run the following command to get the device address of the " "burner:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32707 +#: book.translate.xml:32841 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>camcontrol devlist</userinput>\n" @@ -48127,7 +48666,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32710 +#: book.translate.xml:32844 msgid "" "Use the numeric values for <literal>scbus</literal>, <literal>target</" "literal>, and <literal>lun</literal>. For this example, <literal>1,0,0</" @@ -48135,12 +48674,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32717 +#: book.translate.xml:32851 msgid "Writing Data to an <acronym>ISO</acronym> File System" msgstr "寫入資料到一個 <acronym>ISO</acronym> 檔案系統" #. (itstool) path: sect2/para -#: book.translate.xml:32720 +#: book.translate.xml:32854 msgid "" "In order to produce a data <acronym>CD</acronym>, the data files that are " "going to make up the tracks on the <acronym>CD</acronym> must be prepared " @@ -48154,13 +48693,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32732 +#: book.translate.xml:32866 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkisofs -o <replaceable>imagefile.iso</replaceable> <replaceable>/path/to/tree</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32739 +#: book.translate.xml:32873 msgid "" "This command maps the file names in the specified path to names that fit the " "limitations of the standard <acronym>ISO</acronym> 9660 file system, and " @@ -48169,12 +48708,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32745 +#: book.translate.xml:32879 msgid "<primary>file systems</primary> <secondary>Joliet</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32750 +#: book.translate.xml:32884 msgid "" "A number of options are available to overcome the restrictions imposed by " "the standard. In particular, <option>-R</option> enables the Rock Ridge " @@ -48184,7 +48723,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32756 +#: book.translate.xml:32890 msgid "" "For <acronym>CD</acronym>s that are going to be used only on FreeBSD " "systems, <option>-U</option> can be used to disable all filename " @@ -48194,14 +48733,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:32763 +#: book.translate.xml:32897 msgid "" "<primary><acronym>CD-ROM</acronym>s</primary> <secondary>creating bootable</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32768 +#: book.translate.xml:32902 msgid "" "The last option of general use is <option>-b</option>. This is used to " "specify the location of a boot image for use in producing an <quote>El " @@ -48218,20 +48757,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32786 +#: book.translate.xml:32920 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/myboot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32788 +#: book.translate.xml:32922 msgid "" "The resulting <acronym>ISO</acronym> image can be mounted as a memory disk " "with:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32791 +#: book.translate.xml:32925 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t vnode -f /tmp/bootable.iso -u 0</userinput>\n" @@ -48239,14 +48778,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32794 +#: book.translate.xml:32928 msgid "" "One can then verify that <filename>/mnt</filename> and <filename>/tmp/" "myboot</filename> are identical." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32797 +#: book.translate.xml:32931 msgid "" "There are many other options available for <command>mkisofs</command> to " "fine-tune its behavior. Refer to <citerefentry vendor=\"ports" @@ -48255,7 +48794,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32802 +#: book.translate.xml:32936 msgid "" "It is possible to copy a data <acronym>CD</acronym> to an image file that is " "functionally equivalent to the image file created with <command>mkisofs</" @@ -48265,25 +48804,25 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32809 +#: book.translate.xml:32943 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=/dev/<replaceable>cd0</replaceable> of=<replaceable>file.iso</replaceable> bs=2048</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32811 +#: book.translate.xml:32945 msgid "" "The resulting image file can be burned to <acronym>CD</acronym> as described " "in <xref linkend=\"cdrecord\"/>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32817 +#: book.translate.xml:32951 msgid "Using Data <acronym>CD</acronym>s" msgstr "使用資料 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32819 +#: book.translate.xml:32953 msgid "" "Once an <acronym>ISO</acronym> has been burned to a <acronym>CD</acronym>, " "it can be mounted by specifying the file system type, the name of the device " @@ -48291,13 +48830,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:32824 +#: book.translate.xml:32958 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t cd9660 <replaceable>/dev/cd0</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32826 +#: book.translate.xml:32960 msgid "" "Since <command>mount</command> assumes that a file system is of type " "<literal>ufs</literal>, a <errorname>Incorrect super block</errorname> error " @@ -48306,7 +48845,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32832 +#: book.translate.xml:32966 msgid "" "While any data <acronym>CD</acronym> can be mounted this way, disks with " "certain <acronym>ISO</acronym> 9660 extensions might behave oddly. For " @@ -48318,7 +48857,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32841 +#: book.translate.xml:32975 msgid "" "In order to do this character conversion with the help of <option>-C</" "option>, the kernel requires the <filename>cd9660_iconv.ko</filename> module " @@ -48327,20 +48866,20 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:32847 +#: book.translate.xml:32981 #, no-wrap msgid "cd9660_iconv_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32849 +#: book.translate.xml:32983 msgid "" "and then rebooting the machine, or by directly loading the module with " "<command>kldload</command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32853 +#: book.translate.xml:32987 msgid "" "Occasionally, <errorname>Device not configured</errorname> will be displayed " "when trying to mount a data <acronym>CD</acronym>. This usually means that " @@ -48350,7 +48889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32862 +#: book.translate.xml:32996 msgid "" "Sometimes, a <acronym>SCSI</acronym> <acronym>CD</acronym> drive may be " "missed because it did not have enough time to answer the bus reset. To " @@ -48361,13 +48900,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:32870 +#: book.translate.xml:33004 #, no-wrap msgid "options SCSI_DELAY=15000" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32872 +#: book.translate.xml:33006 msgid "" "This tells the <acronym>SCSI</acronym> bus to pause 15 seconds during boot, " "to give the <acronym>CD</acronym> drive every possible chance to answer the " @@ -48375,7 +48914,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32877 +#: book.translate.xml:33011 msgid "" "It is possible to burn a file directly to <acronym>CD</acronym>, without " "creating an <acronym>ISO</acronym> 9660 file system. This is known as " @@ -48384,7 +48923,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32883 +#: book.translate.xml:33017 msgid "" "This type of disk can not be mounted as a normal data <acronym>CD</acronym>. " "In order to retrieve the data burned to such a <acronym>CD</acronym>, the " @@ -48394,25 +48933,25 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:32891 +#: book.translate.xml:33025 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xzvf /dev/<replaceable>cd1</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:32893 +#: book.translate.xml:33027 msgid "" "In order to mount a data <acronym>CD</acronym>, the data must be written " "using <command>mkisofs</command>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:32900 +#: book.translate.xml:33034 msgid "Duplicating Audio <acronym>CD</acronym>s" msgstr "複製音樂 <acronym>CD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:32902 +#: book.translate.xml:33036 msgid "" "To duplicate an audio <acronym>CD</acronym>, extract the audio data from the " "<acronym>CD</acronym> to a series of files, then write these files to a " @@ -48420,7 +48959,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:32907 +#: book.translate.xml:33041 msgid "" "<xref linkend=\"using-cdrecord\"/> describes how to duplicate and burn an " "audio <acronym>CD</acronym>. If the FreeBSD version is less than 10.0 and " @@ -48429,12 +48968,12 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:32914 +#: book.translate.xml:33048 msgid "Duplicating an Audio <acronym>CD</acronym>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32917 +#: book.translate.xml:33051 msgid "" "The <package>sysutils/cdrtools</package> package or port installs " "<command>cdda2wav</command>. This command can be used to extract all of the " @@ -48443,13 +48982,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:32923 +#: book.translate.xml:33057 #, no-wrap msgid "<prompt>%</prompt> <userinput>cdda2wav -vall -B -Owav</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32925 +#: book.translate.xml:33059 msgid "" "A device name does not need to be specified if there is only one " "<acronym>CD</acronym> device on the system. Refer to the <command>cdda2wav</" @@ -48458,44 +48997,44 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32933 +#: book.translate.xml:33067 msgid "" "Use <command>cdrecord</command> to write the <filename>.wav</filename> files:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:32936 +#: book.translate.xml:33070 #, no-wrap msgid "<prompt>%</prompt> <userinput>cdrecord -v dev=<replaceable>2,0</replaceable> -dao -useinfo *.wav</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:32938 +#: book.translate.xml:33072 msgid "" "Make sure that <replaceable>2,0</replaceable> is set appropriately, as " "described in <xref linkend=\"cdrecord\"/>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:32947 +#: book.translate.xml:33081 msgid "Creating and Using <acronym>DVD</acronym> Media" msgstr "建立與使用 <acronym>DVD</acronym> 媒體" #. (itstool) path: authorgroup/author -#: book.translate.xml:32959 +#: book.translate.xml:33093 msgid "" "<personname> <firstname>Andy</firstname> <surname>Polyakov</surname> </" "personname> <contrib>With inputs from </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:32969 +#: book.translate.xml:33103 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary>burning</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32974 +#: book.translate.xml:33108 msgid "" "Compared to the <acronym>CD</acronym>, the <acronym>DVD</acronym> is the " "next generation of optical media storage technology. The <acronym>DVD</" @@ -48504,14 +49043,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:32980 +#: book.translate.xml:33114 msgid "" "Five physical recordable formats can be defined for a recordable " "<acronym>DVD</acronym>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32985 +#: book.translate.xml:33119 msgid "" "DVD-R: This was the first <acronym>DVD</acronym> recordable format " "available. The DVD-R standard is defined by the <link xlink:href=\"http://" @@ -48520,14 +49059,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32992 +#: book.translate.xml:33126 msgid "" "<acronym>DVD-RW</acronym>: This is the rewritable version of the DVD-R " "standard. A <acronym>DVD-RW</acronym> can be rewritten about 1000 times." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:32999 +#: book.translate.xml:33133 msgid "" "<acronym>DVD-RAM</acronym>: This is a rewritable format which can be seen as " "a removable hard drive. However, this media is not compatible with most " @@ -48538,7 +49077,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33009 +#: book.translate.xml:33143 msgid "" "<acronym>DVD+RW</acronym>: This is a rewritable format defined by the <link " "xlink:href=\"http://www.dvdrw.com/\"><acronym>DVD+RW</acronym> Alliance</" @@ -48546,14 +49085,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33016 +#: book.translate.xml:33150 msgid "" "DVD+R: This format is the write once variation of the <acronym>DVD+RW</" "acronym> format." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33021 +#: book.translate.xml:33155 msgid "" "A single layer recordable <acronym>DVD</acronym> can hold up to " "4,700,000,000 bytes which is actually 4.38 GB or 4485 MB as 1 kilobyte is " @@ -48561,7 +49100,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33026 +#: book.translate.xml:33160 msgid "" "A distinction must be made between the physical media and the application. " "For example, a DVD-Video is a specific file layout that can be written on " @@ -48572,12 +49111,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33036 book.translate.xml:57212 +#: book.translate.xml:33170 book.translate.xml:56833 msgid "Configuration" msgstr "設定" #. (itstool) path: sect2/para -#: book.translate.xml:33038 +#: book.translate.xml:33172 msgid "" "To perform <acronym>DVD</acronym> recording, use <citerefentry vendor=\"ports" "\"><refentrytitle>growisofs</refentrytitle><manvolnum>1</manvolnum></" @@ -48586,7 +49125,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33043 +#: book.translate.xml:33177 msgid "" "These tools use the <acronym>SCSI</acronym> subsystem to access the devices, " "therefore <link linkend=\"atapicam\">ATAPI/CAM support</link> must be loaded " @@ -48597,20 +49136,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33050 +#: book.translate.xml:33184 msgid "" "DMA access must also be enabled for <acronym>ATAPI</acronym> devices, by " "adding the following line to <filename>/boot/loader.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:33054 book.translate.xml:33366 +#: book.translate.xml:33188 book.translate.xml:33500 #, no-wrap msgid "hw.ata.atapi_dma=\"1\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33056 +#: book.translate.xml:33190 msgid "" "Before attempting to use <application>dvd+rw-tools</application>, consult " "the <link xlink:href=\"http://fy.chalmers.se/~appro/linux/DVD+RW/hcn.html" @@ -48618,7 +49157,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33061 +#: book.translate.xml:33195 msgid "" "For a graphical user interface, consider using <package>sysutils/k3b</" "package> which provides a user friendly interface to <citerefentry vendor=" @@ -48627,12 +49166,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33069 +#: book.translate.xml:33203 msgid "Burning Data <acronym>DVD</acronym>s" msgstr "燒錄資料 <acronym>DVD</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:33071 +#: book.translate.xml:33205 msgid "" "Since <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> is a front-end to " @@ -48644,20 +49183,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33077 +#: book.translate.xml:33211 msgid "" "To burn to a DVD+R or a DVD-R the data in <filename>/path/to/data</" "filename>, use the following command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33081 +#: book.translate.xml:33215 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -dvd-compat -Z <replaceable>/dev/cd0</replaceable> -J -R <replaceable>/path/to/data</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33083 +#: book.translate.xml:33217 msgid "" "In this example, <option>-J -R</option> is passed to <citerefentry vendor=" "\"ports\"><refentrytitle>mkisofs</refentrytitle><manvolnum>8</manvolnum></" @@ -48667,7 +49206,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33088 +#: book.translate.xml:33222 msgid "" "For the initial session recording, <option>-Z</option> is used for both " "single and multiple sessions. Replace <replaceable>/dev/cd0</replaceable>, " @@ -48678,20 +49217,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33097 +#: book.translate.xml:33231 msgid "" "To burn a pre-mastered image, such as <replaceable>imagefile.iso</" "replaceable>, use:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33100 +#: book.translate.xml:33234 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -dvd-compat -Z <replaceable>/dev/cd0</replaceable>=<replaceable>imagefile.iso</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33102 +#: book.translate.xml:33236 msgid "" "The write speed should be detected and automatically set according to the " "media and the drive being used. To force the write speed, use <option>-" @@ -48701,7 +49240,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33108 +#: book.translate.xml:33242 msgid "" "In order to support working files larger than 4.38GB, an UDF/ISO-9660 hybrid " "file system must be created by passing <option>-udf -iso-level 3</option> to " @@ -48717,29 +49256,29 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33119 +#: book.translate.xml:33253 msgid "To create this type of ISO file:" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:33121 +#: book.translate.xml:33255 #, no-wrap msgid "<prompt>%</prompt> <userinput>mkisofs -R -J -udf -iso-level 3 -o <replaceable>imagefile.iso</replaceable> <replaceable>/path/to/data</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33123 +#: book.translate.xml:33257 msgid "To burn files directly to a disk:" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:33125 +#: book.translate.xml:33259 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -dvd-compat -udf -iso-level 3 -Z <replaceable>/dev/cd0</replaceable> -J -R <replaceable>/path/to/data</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33127 +#: book.translate.xml:33261 msgid "" "When an ISO image already contains large files, no additional options are " "required for <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -48748,7 +49287,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33131 +#: book.translate.xml:33265 msgid "" "Be sure to use an up-to-date version of <package>sysutils/cdrtools</" "package>, which contains <citerefentry vendor=\"ports" @@ -48760,18 +49299,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33141 +#: book.translate.xml:33275 msgid "Burning a <acronym>DVD</acronym>-Video" msgstr "燒錄 <acronym>DVD</acronym>-Video" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33143 +#: book.translate.xml:33277 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary>DVD-Video</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33148 +#: book.translate.xml:33282 msgid "" "A DVD-Video is a specific file layout based on the ISO 9660 and micro-UDF (M-" "UDF) specifications. Since DVD-Video presents a specific data structure " @@ -48780,7 +49319,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33154 +#: book.translate.xml:33288 msgid "" "If an image of the DVD-Video file system already exists, it can be burned in " "the same way as any other image. If <command>dvdauthor</command> was used to " @@ -48789,13 +49328,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33161 +#: book.translate.xml:33295 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -Z <replaceable>/dev/cd0</replaceable> -dvd-video <replaceable>/path/to/video</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33163 +#: book.translate.xml:33297 msgid "" "<option>-dvd-video</option> is passed to <citerefentry vendor=\"ports" "\"><refentrytitle>mkisofs</refentrytitle><manvolnum>8</manvolnum></" @@ -48806,19 +49345,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33170 +#: book.translate.xml:33304 msgid "Using a <acronym>DVD+RW</acronym>" msgstr "使用 <acronym>DVD+RW</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33172 +#: book.translate.xml:33306 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD+RW</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33177 +#: book.translate.xml:33311 msgid "" "Unlike CD-RW, a virgin <acronym>DVD+RW</acronym> needs to be formatted " "before first use. It is <emphasis>recommended</emphasis> to let " @@ -48829,13 +49368,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33184 book.translate.xml:33290 +#: book.translate.xml:33318 book.translate.xml:33424 #, no-wrap msgid "<prompt>#</prompt> <userinput>dvd+rw-format <replaceable>/dev/cd0</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33186 +#: book.translate.xml:33320 msgid "" "Only perform this operation once and keep in mind that only virgin " "<acronym>DVD+RW</acronym> medias need to be formatted. Once formatted, the " @@ -48843,7 +49382,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33191 +#: book.translate.xml:33325 msgid "" "To burn a totally new file system and not just append some data onto a " "<acronym>DVD+RW</acronym>, the media does not need to be blanked first. " @@ -48851,13 +49390,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33196 +#: book.translate.xml:33330 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -Z <replaceable>/dev/cd0</replaceable> -J -R <replaceable>/path/to/newdata</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33198 +#: book.translate.xml:33332 msgid "" "The <acronym>DVD+RW</acronym> format supports appending data to a previous " "recording. This operation consists of merging a new session to the existing " @@ -48868,20 +49407,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33205 +#: book.translate.xml:33339 msgid "" "For example, to append data to a <acronym>DVD+RW</acronym>, use the " "following:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33208 book.translate.xml:33312 +#: book.translate.xml:33342 book.translate.xml:33446 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -M <replaceable>/dev/cd0</replaceable> -J -R <replaceable>/path/to/nextdata</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33210 +#: book.translate.xml:33344 msgid "" "The same <citerefentry vendor=\"ports\"><refentrytitle>mkisofs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> options used to burn " @@ -48889,7 +49428,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33214 +#: book.translate.xml:33348 msgid "" "Use <option>-dvd-compat</option> for better media compatibility with " "<acronym>DVD-ROM</acronym> drives. When using <acronym>DVD+RW</acronym>, " @@ -48897,30 +49436,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33220 +#: book.translate.xml:33354 msgid "To blank the media, use:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33222 +#: book.translate.xml:33356 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -Z <replaceable>/dev/cd0</replaceable>=<replaceable>/dev/zero</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33226 +#: book.translate.xml:33360 msgid "Using a <acronym>DVD-RW</acronym>" msgstr "使用 <acronym>DVD-RW</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33228 +#: book.translate.xml:33362 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD-RW</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33233 +#: book.translate.xml:33367 msgid "" "A <acronym>DVD-RW</acronym> accepts two disc formats: incremental sequential " "and restricted overwrite. By default, <acronym>DVD-RW</acronym> discs are in " @@ -48928,7 +49467,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33238 +#: book.translate.xml:33372 msgid "" "A virgin <acronym>DVD-RW</acronym> can be directly written without being " "formatted. However, a non-virgin <acronym>DVD-RW</acronym> in sequential " @@ -48936,18 +49475,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33243 +#: book.translate.xml:33377 msgid "To blank a <acronym>DVD-RW</acronym> in sequential mode:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33246 book.translate.xml:33294 +#: book.translate.xml:33380 book.translate.xml:33428 #, no-wrap msgid "<prompt>#</prompt> <userinput>dvd+rw-format -blank=full <replaceable>/dev/cd0</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33249 +#: book.translate.xml:33383 msgid "" "A full blanking using <option>-blank=full</option> will take about one hour " "on a 1x media. A fast blanking can be performed using <option>-blank</" @@ -48957,13 +49496,13 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:33256 +#: book.translate.xml:33390 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -use-the-force-luke=dao -Z <replaceable>/dev/cd0</replaceable>=<replaceable>imagefile.iso</replaceable></userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33258 +#: book.translate.xml:33392 msgid "" "Since <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> automatically attempts " @@ -48972,7 +49511,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33263 +#: book.translate.xml:33397 msgid "" "One should instead use restricted overwrite mode with any <acronym>DVD-RW</" "acronym> as this format is more flexible than the default of incremental " @@ -48980,20 +49519,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33268 +#: book.translate.xml:33402 msgid "" "To write data on a sequential <acronym>DVD-RW</acronym>, use the same " "instructions as for the other <acronym>DVD</acronym> formats:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33272 +#: book.translate.xml:33406 #, no-wrap msgid "<prompt>#</prompt> <userinput>growisofs -Z <replaceable>/dev/cd0</replaceable> -J -R <replaceable>/path/to/data</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33274 +#: book.translate.xml:33408 msgid "" "To append some data to a previous recording, use <option>-M</option> with " "<citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -49004,7 +49543,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33280 +#: book.translate.xml:33414 msgid "" "A <acronym>DVD-RW</acronym> in restricted overwrite format does not need to " "be blanked before a new initial session. Instead, overwrite the disc with " @@ -49014,24 +49553,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33287 +#: book.translate.xml:33421 msgid "" "To put a <acronym>DVD-RW</acronym> in restricted overwrite format, the " "following command must be used:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33292 +#: book.translate.xml:33426 msgid "To change back to sequential format, use:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33298 +#: book.translate.xml:33432 msgid "Multi-Session" msgstr "多階段燒錄 (Multi-Session)" #. (itstool) path: sect2/para -#: book.translate.xml:33300 +#: book.translate.xml:33434 msgid "" "Few <acronym>DVD-ROM</acronym> drives support multi-session DVDs and most of " "the time only read the first session. DVD+R, DVD-R and <acronym>DVD-RW</" @@ -49041,7 +49580,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33308 +#: book.translate.xml:33442 msgid "" "Using the following command after an initial non-closed session on a DVD+R, " "DVD-R, or <acronym>DVD-RW</acronym> in sequential format, will add a new " @@ -49049,7 +49588,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33314 +#: book.translate.xml:33448 msgid "" "Using this command with a <acronym>DVD+RW</acronym> or a <acronym>DVD-RW</" "acronym> in restricted overwrite mode will append data while merging the new " @@ -49058,7 +49597,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33322 +#: book.translate.xml:33456 msgid "" "Since some space on the media is used between each session to mark the end " "and start of sessions, one should add sessions with a large amount of data " @@ -49067,12 +49606,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33332 book.translate.xml:65535 +#: book.translate.xml:33466 book.translate.xml:65535 msgid "For More Information" msgstr "取得更多資訊" #. (itstool) path: sect2/para -#: book.translate.xml:33334 +#: book.translate.xml:33468 msgid "" "To obtain more information about a <acronym>DVD</acronym>, use <command>dvd" "+rw-mediainfo <replaceable>/dev/cd0</replaceable></command> while the disc " @@ -49080,7 +49619,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33339 +#: book.translate.xml:33473 msgid "" "More information about <application>dvd+rw-tools</application> can be found " "in <citerefentry vendor=\"ports\"><refentrytitle>growisofs</" @@ -49091,7 +49630,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:33346 +#: book.translate.xml:33480 msgid "" "When creating a problem report related to the use of <application>dvd+rw-" "tools</application>, always include the output of <command>dvd+rw-mediainfo</" @@ -49099,19 +49638,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33353 +#: book.translate.xml:33487 msgid "Using a <acronym>DVD-RAM</acronym>" msgstr "使用 <acronym>DVD-RAM</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33355 +#: book.translate.xml:33489 msgid "" "<primary><acronym>DVD</acronym></primary> <secondary><acronym>DVD-RAM</" "acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33360 +#: book.translate.xml:33494 msgid "" "<acronym>DVD-RAM</acronym> writers can use either a <acronym>SCSI</acronym> " "or <acronym>ATAPI</acronym> interface. For <acronym>ATAPI</acronym> devices, " @@ -49120,7 +49659,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33368 +#: book.translate.xml:33502 msgid "" "A <acronym>DVD-RAM</acronym> can be seen as a removable hard drive. Like any " "other hard drive, the <acronym>DVD-RAM</acronym> must be formatted before it " @@ -49129,7 +49668,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33374 +#: book.translate.xml:33508 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>/dev/acd0</replaceable> bs=2k count=1</userinput>\n" @@ -49138,49 +49677,49 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33378 +#: book.translate.xml:33512 msgid "" "The <acronym>DVD</acronym> device, <filename>acd0</filename>, must be " "changed according to the configuration." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33382 +#: book.translate.xml:33516 msgid "" "Once the <acronym>DVD-RAM</acronym> has been formatted, it can be mounted as " "a normal hard drive:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33385 +#: book.translate.xml:33519 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount <replaceable>/dev/acd0</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33387 +#: book.translate.xml:33521 msgid "" "Once mounted, the <acronym>DVD-RAM</acronym> will be both readable and " "writeable." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:33393 +#: book.translate.xml:33527 msgid "Creating and Using Floppy Disks" msgstr "建立與使用軟碟" #. (itstool) path: sect1/para -#: book.translate.xml:33417 +#: book.translate.xml:33551 msgid "This section explains how to format a 3.5 inch floppy disk in FreeBSD." msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:33421 +#: book.translate.xml:33555 msgid "Steps to Format a Floppy" msgstr "" #. (itstool) path: procedure/para -#: book.translate.xml:33423 +#: book.translate.xml:33557 msgid "" "A floppy disk needs to be low-level formatted before it can be used. This is " "usually done by the vendor, but formatting is a good way to check media " @@ -49191,20 +49730,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33432 +#: book.translate.xml:33566 msgid "" "To format the floppy, insert a new 3.5 inch floppy disk into the first " "floppy drive and issue:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:33435 +#: book.translate.xml:33569 #, no-wrap msgid "<prompt>#</prompt> <userinput>/usr/sbin/fdformat -f 1440 /dev/fd0</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33439 +#: book.translate.xml:33573 msgid "" "After low-level formatting the disk, create a disk label as it is needed by " "the system to determine the size of the disk and its geometry. The supported " @@ -49212,20 +49751,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33444 +#: book.translate.xml:33578 msgid "" "To write the disk label, use <citerefentry><refentrytitle>bsdlabel</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:33446 +#: book.translate.xml:33580 #, no-wrap msgid "<prompt>#</prompt> <userinput>/sbin/bsdlabel -B -w /dev/fd0 fd1440</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33450 +#: book.translate.xml:33584 msgid "" "The floppy is now ready to be high-level formatted with a file system. The " "floppy's file system can be either UFS or FAT, where FAT is generally a " @@ -49233,18 +49772,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:33455 +#: book.translate.xml:33589 msgid "To format the floppy with FAT, issue:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:33457 +#: book.translate.xml:33591 #, no-wrap msgid "<prompt>#</prompt> <userinput>/sbin/newfs_msdos /dev/fd0</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33461 +#: book.translate.xml:33595 msgid "" "The disk is now ready for use. To use the floppy, mount it with " "<citerefentry><refentrytitle>mount_msdosfs</refentrytitle><manvolnum>8</" @@ -49253,12 +49792,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:33468 +#: book.translate.xml:33602 msgid "Backup Basics" msgstr "備份基礎概念" #. (itstool) path: sect1/para -#: book.translate.xml:33482 +#: book.translate.xml:33616 msgid "" "Implementing a backup plan is essential in order to have the ability to " "recover from disk failure, accidental file deletion, random file corruption, " @@ -49268,7 +49807,7 @@ msgstr "" "毀壞進行恢復,執行備份計劃是必要的。" #. (itstool) path: sect1/para -#: book.translate.xml:33487 +#: book.translate.xml:33621 msgid "" "The backup type and schedule will vary, depending upon the importance of the " "data, the granularity needed for file restores, and the amount of acceptable " @@ -49278,7 +49817,7 @@ msgstr "" "可接受的停機時間。一些可用來備份的技術有:" #. (itstool) path: listitem/para -#: book.translate.xml:33494 +#: book.translate.xml:33628 msgid "" "Archives of the whole system, backed up onto permanent, off-site media. This " "provides protection against all of the problems listed above, but is slow " @@ -49288,7 +49827,7 @@ msgstr "" "護,但要還原會較慢且不方便,特別是對於沒有權限的使用者。" #. (itstool) path: listitem/para -#: book.translate.xml:33501 +#: book.translate.xml:33635 msgid "" "File system snapshots, which are useful for restoring deleted files or " "previous versions of files." @@ -49296,7 +49835,7 @@ msgstr "" "檔案系統快照 (Snapshot),對於還原已刪除的檔案或先前版本的檔案非常有用。" #. (itstool) path: listitem/para -#: book.translate.xml:33506 +#: book.translate.xml:33640 msgid "" "Copies of whole file systems or disks which are synchronized with another " "system on the network using a scheduled <package>net/rsync</package>." @@ -49305,7 +49844,7 @@ msgstr "" "的另一個系統同步。" #. (itstool) path: listitem/para -#: book.translate.xml:33512 +#: book.translate.xml:33646 msgid "" "Hardware or software <acronym>RAID</acronym>, which minimizes or avoids " "downtime when a disk fails." @@ -49313,7 +49852,7 @@ msgstr "" "硬體或軟體 <acronym>RAID</acronym>,來最小化或避免當磁碟故障時的停機時間。" #. (itstool) path: sect1/para -#: book.translate.xml:33517 +#: book.translate.xml:33651 msgid "" "Typically, a mix of backup techniques is used. For example, one could create " "a schedule to automate a weekly, full system backup that is stored off-site " @@ -49326,35 +49865,35 @@ msgstr "" "各別目錄或檔案。" #. (itstool) path: sect1/para -#: book.translate.xml:33524 +#: book.translate.xml:33658 msgid "" "This section describes some of the utilities which can be used to create and " "manage backups on a FreeBSD system." msgstr "本章節會介紹一些可以用來在 FreeBSD 上建立與管理系統備份的工具。" #. (itstool) path: sect2/title -#: book.translate.xml:33528 +#: book.translate.xml:33662 msgid "File System Backups" msgstr "檔案系統備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33530 +#: book.translate.xml:33664 msgid "" "<primary>backup software</primary> <secondary>dump / restore</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33534 +#: book.translate.xml:33668 msgid "<primary><command>dump</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33537 +#: book.translate.xml:33671 msgid "<primary><command>restore</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33541 +#: book.translate.xml:33675 msgid "" "The traditional <trademark class=\"registered\">UNIX</trademark> programs " "for backing up a file system are <citerefentry><refentrytitle>dump</" @@ -49380,7 +49919,7 @@ msgstr "" "始資料區塊,而非直接備份檔案與目錄。" #. (itstool) path: note/para -#: book.translate.xml:33554 +#: book.translate.xml:33688 msgid "" "If <command>dump</command> is used on the root directory, it will not back " "up <filename>/home</filename>, <filename>/usr</filename> or many other " @@ -49392,7 +49931,7 @@ msgstr "" "掛載點或連結到其他檔案系統的符號連結。" #. (itstool) path: sect2/para -#: book.translate.xml:33561 +#: book.translate.xml:33695 msgid "" "When used to restore data, <command>restore</command> stores temporary files " "in <filename>/tmp/</filename> by default. When using a recovery disk with a " @@ -49404,7 +49943,7 @@ msgstr "" "<envar>TMPDIR</envar> 到一個擁有較多可用空間的目錄以讓還原可以順利執行。" #. (itstool) path: sect2/para -#: book.translate.xml:33568 +#: book.translate.xml:33702 msgid "" "When using <command>dump</command>, be aware that some quirks remain from " "its early days in Version 6 of AT&T <trademark class=\"registered" @@ -49418,12 +49957,12 @@ msgstr "" "必須另外在指令列修改這個預設值。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33575 +#: book.translate.xml:33709 msgid "<primary><filename>.rhosts</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33578 +#: book.translate.xml:33712 msgid "" "It is possible to backup a file system across the network to a another " "system or to a tape drive attached to another computer. While the " @@ -49439,7 +49978,7 @@ msgstr "" "全性並不足夠。" #. (itstool) path: sect2/para -#: book.translate.xml:33584 +#: book.translate.xml:33718 msgid "" "Instead, one can use <command>dump</command> and <command>restore</command> " "in a more secure fashion over an <acronym>SSH</acronym> connection. This " @@ -49453,12 +49992,12 @@ msgstr "" "機。" #. (itstool) path: example/title -#: book.translate.xml:33592 +#: book.translate.xml:33726 msgid "Using <command>dump</command> over <application>ssh</application>" msgstr "在 <application>ssh</application> 使用 <command>dump</command>" #. (itstool) path: example/screen -#: book.translate.xml:33595 +#: book.translate.xml:33729 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>/sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \\\n" @@ -49466,7 +50005,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33599 +#: book.translate.xml:33733 msgid "" "This example sets <envar>RSH</envar> in order to write the backup to a tape " "drive on a remote system over a <acronym>SSH</acronym> connection:" @@ -49475,7 +50014,7 @@ msgstr "" "份到遠端系統的磁帶機:" #. (itstool) path: example/title -#: book.translate.xml:33604 +#: book.translate.xml:33738 msgid "" "Using <command>dump</command> over <application>ssh</application> with " "<envar>RSH</envar> Set" @@ -49484,32 +50023,32 @@ msgstr "" "<envar>RSH</envar> 設定" #. (itstool) path: example/screen -#: book.translate.xml:33608 +#: book.translate.xml:33742 #, no-wrap msgid "<prompt>#</prompt> <userinput>env RSH=/usr/bin/ssh /sbin/dump -0uan -f targetuser@targetmachine.example.com:/dev/sa0 /usr</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33613 +#: book.translate.xml:33747 msgid "Directory Backups" msgstr "目錄備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33615 +#: book.translate.xml:33749 msgid "" "<primary>backup software</primary> <secondary><command>tar</command></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33620 +#: book.translate.xml:33754 msgid "" "Several built-in utilities are available for backing up and restoring " "specified files and directories as needed." msgstr "系統已有內建數個工具可在需要時用來備份與還原指定的檔案與目錄。" #. (itstool) path: sect2/para -#: book.translate.xml:33624 +#: book.translate.xml:33758 msgid "" "A good choice for making a backup of all of the files in a directory is " "<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></" @@ -49524,12 +50063,12 @@ msgstr "" "預設會做一個遞迴備份到一個磁帶機,可以使用參數來改指定備份檔案的名稱。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33630 +#: book.translate.xml:33764 msgid "<primary><command>tar</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33632 +#: book.translate.xml:33766 msgid "" "This example creates a compressed backup of the current directory and saves " "it to <filename>/tmp/mybackup.tgz</filename>. When creating a backup file, " @@ -49541,18 +50080,18 @@ msgstr "" "錄。" #. (itstool) path: example/title -#: book.translate.xml:33639 +#: book.translate.xml:33773 msgid "Backing Up the Current Directory with <command>tar</command>" msgstr "使用 <command>tar</command> 備份目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33642 +#: book.translate.xml:33776 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar czvf <replaceable>/tmp/mybackup.tgz</replaceable> . </userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33645 +#: book.translate.xml:33779 msgid "" "To restore the entire backup, <command>cd</command> into the directory to " "restore into and specify the name of the backup. Note that this will " @@ -49565,18 +50104,18 @@ msgstr "" "還原到一個暫時的目錄或指定備份檔中的檔案做還原。" #. (itstool) path: example/title -#: book.translate.xml:33653 +#: book.translate.xml:33787 msgid "Restoring Up the Current Directory with <command>tar</command>" msgstr "使用 <command>tar</command> 還原目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33656 +#: book.translate.xml:33790 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xzvf <replaceable>/tmp/mybackup.tgz</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33659 +#: book.translate.xml:33793 msgid "" "There are dozens of available switches which are described in " "<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></" @@ -49590,14 +50129,14 @@ msgstr "" "檔案時排除。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33665 +#: book.translate.xml:33799 msgid "" "<primary>backup software</primary> <secondary><command>cpio</command></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33670 +#: book.translate.xml:33804 msgid "" "To create a backup using a specified list of files and directories, " "<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></" @@ -49611,7 +50150,7 @@ msgstr "" "必須提供檔案的清單才能做備份。" #. (itstool) path: sect2/para -#: book.translate.xml:33676 +#: book.translate.xml:33810 msgid "" "For example, a list of files can be created using <command>ls</command> or " "<command>find</command>. This example creates a recursive listing of the " @@ -49623,7 +50162,7 @@ msgstr "" "command> 來建立名稱為 <filename>/tmp/mybackup.cpio</filename> 的備份檔。" #. (itstool) path: example/title -#: book.translate.xml:33684 +#: book.translate.xml:33818 msgid "" "Using <command>ls</command> and <command>cpio</command> to Make a Recursive " "Backup of the Current Directory" @@ -49632,36 +50171,36 @@ msgstr "" "份" #. (itstool) path: example/screen -#: book.translate.xml:33687 +#: book.translate.xml:33821 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls -R | cpio -ovF <replaceable>/tmp/mybackup.cpio</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33690 +#: book.translate.xml:33824 msgid "" "<primary>backup software</primary> <secondary><command>pax</command></" "secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33694 +#: book.translate.xml:33828 msgid "<primary><command>pax</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: para/indexterm -#: book.translate.xml:33695 book.translate.xml:43193 +#: book.translate.xml:33829 book.translate.xml:43402 msgid "<primary>POSIX</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33696 +#: book.translate.xml:33830 msgid "<primary>IEEE</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33698 +#: book.translate.xml:33832 msgid "" "A backup utility which tries to bridge the features provided by " "<command>tar</command> and <command>cpio</command> is " @@ -49680,34 +50219,34 @@ msgstr "" "<command>cpio</command> and <command>tar</command> 格式並加入自己的新格式。" #. (itstool) path: sect2/para -#: book.translate.xml:33707 +#: book.translate.xml:33841 msgid "" "The <command>pax</command> equivalent to the previous examples would be:" msgstr "以先前的例子改使用 <command>pax</command> 會是:" #. (itstool) path: example/title -#: book.translate.xml:33711 +#: book.translate.xml:33845 msgid "Backing Up the Current Directory with <command>pax</command>" msgstr "使用 <command>pax</command> 備份目前目錄" #. (itstool) path: example/screen -#: book.translate.xml:33714 +#: book.translate.xml:33848 #, no-wrap msgid "<prompt>#</prompt> <userinput>pax -wf <replaceable>/tmp/mybackup.pax</replaceable> .</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33719 +#: book.translate.xml:33853 msgid "Using Data Tapes for Backups" msgstr "使用資料磁帶備份" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33721 +#: book.translate.xml:33855 msgid "<primary>tape media</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33723 +#: book.translate.xml:33857 msgid "" "While tape technology has continued to evolve, modern backup systems tend to " "combine off-site backups with local removable media. FreeBSD supports any " @@ -49721,7 +50260,7 @@ msgstr "" "與 <acronym>USB</acronym> 磁帶機。" #. (itstool) path: sect2/para -#: book.translate.xml:33731 +#: book.translate.xml:33865 msgid "" "For <acronym>SCSI</acronym> tape devices, FreeBSD uses the " "<citerefentry><refentrytitle>sa</refentrytitle><manvolnum>4</manvolnum></" @@ -49741,7 +50280,7 @@ msgstr "" "<filename>/dev/esa0</filename> 時,當關閉裝置後便會退出磁帶。" #. (itstool) path: sect2/para -#: book.translate.xml:33742 +#: book.translate.xml:33876 msgid "" "In FreeBSD, <command>mt</command> is used to control operations of the tape " "drive, such as seeking through files on a tape or writing tape control marks " @@ -49753,13 +50292,13 @@ msgstr "" "新檔案前跳過這些檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:33748 +#: book.translate.xml:33882 #, no-wrap msgid "<prompt>#</prompt> <userinput>mt -f /dev/nsa0 fsf 3</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33750 +#: book.translate.xml:33884 msgid "" "This utility supports many operations. Refer to " "<citerefentry><refentrytitle>mt</refentrytitle><manvolnum>1</manvolnum></" @@ -49769,7 +50308,7 @@ msgstr "" "refentrytitle><manvolnum>1</manvolnum></citerefentry> 了解詳情。" #. (itstool) path: sect2/para -#: book.translate.xml:33753 +#: book.translate.xml:33887 msgid "" "To write a single file to tape using <command>tar</command>, specify the " "name of the tape device and the file to backup:" @@ -49778,26 +50317,26 @@ msgstr "" "備份的檔案:" #. (itstool) path: sect2/screen -#: book.translate.xml:33757 +#: book.translate.xml:33891 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar cvf /dev/sa0 <replaceable>file</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33759 +#: book.translate.xml:33893 msgid "" "To recover files from a <command>tar</command> archive on tape into the " "current directory:" msgstr "要從磁帶上的 <command>tar</command> 封存檔還原檔案到目前的目錄可:" #. (itstool) path: sect2/screen -#: book.translate.xml:33762 +#: book.translate.xml:33896 #, no-wrap msgid "<prompt>#</prompt> <userinput>tar xvf /dev/sa0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33764 +#: book.translate.xml:33898 msgid "" "To backup a <acronym>UFS</acronym> file system, use <command>dump</command>. " "This examples backs up <filename>/usr</filename> without rewinding the tape " @@ -49807,36 +50346,36 @@ msgstr "" "下例子會備份 <filename>/usr</filename> 並在完成時不做倒帶:" #. (itstool) path: sect2/screen -#: book.translate.xml:33769 +#: book.translate.xml:33903 #, no-wrap msgid "<prompt>#</prompt> <userinput>dump -0aL -b64 -f /dev/nsa0 /usr</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33771 +#: book.translate.xml:33905 msgid "" "To interactively restore files from a <command>dump</command> file on tape " "into the current directory:" msgstr "要以互動的方式從磁帶上的 <command>dump</command> 檔案還原到目前目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:33775 +#: book.translate.xml:33909 #, no-wrap msgid "<prompt>#</prompt> <userinput>restore -i -f /dev/nsa0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33779 +#: book.translate.xml:33913 msgid "Third-Party Backup Utilities" msgstr "第三方備份工具" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33781 +#: book.translate.xml:33915 msgid "<primary>backup software</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33785 +#: book.translate.xml:33919 msgid "" "The FreeBSD Ports Collection provides many third-party utilities which can " "be used to schedule the creation of backups, simplify tape backup, and make " @@ -49849,7 +50388,7 @@ msgstr "" "或網路上所有電腦的備份。" #. (itstool) path: sect2/para -#: book.translate.xml:33792 +#: book.translate.xml:33926 msgid "" "Popular utilities include <application>Amanda</application>, " "<application>Bacula</application>, <application>rsync</application>, and " @@ -49860,49 +50399,49 @@ msgstr "" "application>。" #. (itstool) path: sect2/title -#: book.translate.xml:33800 +#: book.translate.xml:33934 msgid "Emergency Recovery" msgstr "緊急還原" #. (itstool) path: sect2/para -#: book.translate.xml:33802 +#: book.translate.xml:33936 msgid "" "In addition to regular backups, it is recommended to perform the following " "steps as part of an emergency preparedness plan." msgstr "除了正常的備份外,建議將下以步驟做為緊急準備計劃的一部份。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33806 +#: book.translate.xml:33940 msgid "<primary><command>bsdlabel</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33809 +#: book.translate.xml:33943 msgid "Create a print copy of the output of the following commands:" msgstr "替以下指令的輸出建立一份可列印的複本:" #. (itstool) path: listitem/para -#: book.translate.xml:33814 +#: book.translate.xml:33948 msgid "<command>gpart show</command>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33818 +#: book.translate.xml:33952 msgid "<command>more /etc/fstab</command>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:33822 +#: book.translate.xml:33956 msgid "<command>dmesg</command>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33826 +#: book.translate.xml:33960 msgid "<primary>livefs <acronym>CD</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33829 +#: book.translate.xml:33963 msgid "" "Store this printout and a copy of the installation media in a secure " "location. Should an emergency restore be needed, boot into the installation " @@ -49916,7 +50455,7 @@ msgstr "" "後自備份還原資料。" #. (itstool) path: note/para -#: book.translate.xml:33838 +#: book.translate.xml:33972 msgid "" "The installation media for FreeBSD/i386 10.3-RELEASE does not include a " "rescue shell. For this version, instead download and burn a Livefs " @@ -49932,7 +50471,7 @@ msgstr "" "載 <acronym>CD</acronym> 映像檔並燒錄。" #. (itstool) path: sect2/para -#: book.translate.xml:33845 +#: book.translate.xml:33979 msgid "" "Next, test the rescue shell and the backups. Make notes of the procedure. " "Store these notes with the media, the printouts, and the backups. These " @@ -49943,7 +50482,7 @@ msgstr "" "份檔一併保存,這份記錄可以避免在緊張壓力下做緊急還原時因不慎造成備份的毀壞。" #. (itstool) path: sect2/para -#: book.translate.xml:33851 +#: book.translate.xml:33985 msgid "" "For an added measure of security, store the latest backup at a remote " "location which is physically separated from the computers and disk drives by " @@ -49953,19 +50492,19 @@ msgstr "" "位置。" #. (itstool) path: info/title -#: book.translate.xml:33859 +#: book.translate.xml:33993 msgid "Memory Disks" msgstr "記憶體磁碟" #. (itstool) path: authorgroup/author -#: book.translate.xml:33862 +#: book.translate.xml:33996 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33872 +#: book.translate.xml:34006 msgid "" "In addition to physical disks, FreeBSD also supports the creation and use of " "memory disks. One possible use for a memory disk is to access the contents " @@ -49975,7 +50514,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:33879 +#: book.translate.xml:34013 msgid "" "In FreeBSD, the <citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</" "manvolnum></citerefentry> driver is used to provide support for memory " @@ -49984,23 +50523,23 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:33884 +#: book.translate.xml:34018 #, no-wrap msgid "device md" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33887 +#: book.translate.xml:34021 msgid "Attaching and Detaching Existing Images" msgstr "連接與解除連接既有的映象檔" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33889 +#: book.translate.xml:34023 msgid "<primary>disks</primary> <secondary>memory</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33894 +#: book.translate.xml:34028 msgid "" "To mount an existing file system image, use <command>mdconfig</command> to " "specify the name of the <acronym>ISO</acronym> file and a free unit number. " @@ -50012,7 +50551,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33904 +#: book.translate.xml:34038 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -f <replaceable>diskimage.iso</replaceable> -u <replaceable>0</replaceable></userinput>\n" @@ -50020,7 +50559,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33907 +#: book.translate.xml:34041 msgid "" "If a unit number is not specified with <option>-u</option>, " "<command>mdconfig</command> will automatically allocate an unused memory " @@ -50031,12 +50570,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33914 +#: book.translate.xml:34048 msgid "<primary>disks</primary> <secondary>detaching a memory disk</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33919 +#: book.translate.xml:34053 msgid "" "When a memory disk is no longer in use, its resources should be released " "back to the system. First, unmount the file system, then use " @@ -50045,7 +50584,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33925 +#: book.translate.xml:34059 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /mnt</userinput>\n" @@ -50053,24 +50592,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33928 +#: book.translate.xml:34062 msgid "" "To determine if any memory disks are still attached to the system, type " "<command>mdconfig -l</command>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:33933 +#: book.translate.xml:34067 msgid "Creating a File- or Memory-Backed Memory Disk" msgstr "建立以檔案或記憶體為基底的磁碟" #. (itstool) path: sect2/indexterm -#: book.translate.xml:33935 +#: book.translate.xml:34069 msgid "<primary>disks</primary> <secondary>memory file system</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33939 +#: book.translate.xml:34073 msgid "" "FreeBSD also supports memory disks where the storage to use is allocated " "from either a hard disk or an area of memory. The first method is commonly " @@ -50080,7 +50619,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33946 +#: book.translate.xml:34080 msgid "" "To create a new memory-backed file system, specify a type of <literal>swap</" "literal> and the size of the memory disk to create. Then, format the memory " @@ -50090,7 +50629,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33954 +#: book.translate.xml:34088 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t swap -s <replaceable>5</replaceable>m -u <replaceable>1</replaceable></userinput>\n" @@ -50107,7 +50646,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33966 +#: book.translate.xml:34100 msgid "" "To create a new file-backed memory disk, first allocate an area of disk to " "use. This example creates an empty 5K file named <filename>newimage</" @@ -50115,7 +50654,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33970 +#: book.translate.xml:34104 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/zero of=<replaceable>newimage</replaceable> bs=1k count=<replaceable>5</replaceable>k</userinput>\n" @@ -50124,7 +50663,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33974 +#: book.translate.xml:34108 msgid "" "Next, attach that file to a memory disk, label the memory disk and format it " "with the <acronym>UFS</acronym> file system, mount the memory disk, and " @@ -50132,7 +50671,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:33979 +#: book.translate.xml:34113 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -f <replaceable>newimage</replaceable> -u <replaceable>0</replaceable></userinput>\n" @@ -50149,7 +50688,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:33991 +#: book.translate.xml:34125 msgid "" "It takes several commands to create a file- or memory-backed file system " "using <command>mdconfig</command>. FreeBSD also comes with <command>mdmfs</" @@ -50161,26 +50700,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34002 +#: book.translate.xml:34136 #, no-wrap msgid "<prompt>#</prompt> <userinput>mdmfs -F <replaceable>newimage</replaceable> -s <replaceable>5</replaceable>m md<replaceable>0</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34004 +#: book.translate.xml:34138 msgid "" "To instead create a new memory-based memory disk with <command>mdmfs</" "command>, use this one command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34007 +#: book.translate.xml:34141 #, no-wrap msgid "<prompt>#</prompt> <userinput>mdmfs -s <replaceable>5</replaceable>m md<replaceable>1</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34009 +#: book.translate.xml:34143 msgid "" "If the unit number is not specified, <command>mdmfs</command> will " "automatically select an unused memory device. For more details about " @@ -50189,24 +50728,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34018 +#: book.translate.xml:34152 msgid "File System Snapshots" msgstr "檔案系統快照" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34031 +#: book.translate.xml:34165 msgid "<primary>file systems</primary> <secondary>snapshots</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34036 +#: book.translate.xml:34170 msgid "" "FreeBSD offers a feature in conjunction with <link linkend=\"soft-updates" "\">Soft Updates</link>: file system snapshots." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34040 +#: book.translate.xml:34174 msgid "" "UFS snapshots allow a user to create images of specified file systems, and " "treat them as a file. Snapshot files must be created in the file system that " @@ -50221,7 +50760,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34052 +#: book.translate.xml:34186 msgid "" "The un-alterable <option>snapshot</option> file flag is set by " "<citerefentry><refentrytitle>mksnap_ffs</refentrytitle><manvolnum>8</" @@ -50232,7 +50771,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34057 +#: book.translate.xml:34191 msgid "" "Snapshots are created using <citerefentry><refentrytitle>mount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. To place a snapshot " @@ -50241,26 +50780,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:34062 +#: book.translate.xml:34196 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -u -o snapshot /var/snapshot/snap /var</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34064 +#: book.translate.xml:34198 msgid "" "Alternatively, use <citerefentry><refentrytitle>mksnap_ffs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to create the snapshot:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:34067 +#: book.translate.xml:34201 #, no-wrap msgid "<prompt>#</prompt> <userinput>mksnap_ffs /var /var/snapshot/snap</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34069 +#: book.translate.xml:34203 msgid "" "One can find snapshot files on a file system, such as <filename>/var</" "filename>, using <citerefentry><refentrytitle>find</" @@ -50268,25 +50807,25 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:34073 +#: book.translate.xml:34207 #, no-wrap msgid "<prompt>#</prompt> <userinput>find /var -flags snapshot</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34075 +#: book.translate.xml:34209 msgid "Once a snapshot has been created, it has several uses:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34080 +#: book.translate.xml:34214 msgid "" "Some administrators will use a snapshot file for backup purposes, because " "the snapshot can be transferred to <acronym>CD</acronym>s or tape." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34086 +#: book.translate.xml:34220 msgid "" "The file system integrity checker, <citerefentry><refentrytitle>fsck</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, may be run on the " @@ -50295,7 +50834,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34093 +#: book.translate.xml:34227 msgid "" "Running <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on the snapshot will produce a dump file that is " @@ -50306,7 +50845,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34101 +#: book.translate.xml:34235 msgid "" "The snapshot can be mounted as a frozen image of the file system. To " "<citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></" @@ -50314,7 +50853,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:34105 +#: book.translate.xml:34239 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mdconfig -a -t vnode -o readonly -f /var/snapshot/snap -u 4</userinput>\n" @@ -50322,7 +50861,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34110 +#: book.translate.xml:34244 msgid "" "The frozen <filename>/var</filename> is now available through <filename>/" "mnt</filename>. Everything will initially be in the same state it was during " @@ -50331,7 +50870,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:34116 +#: book.translate.xml:34250 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /mnt</userinput>\n" @@ -50339,7 +50878,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34119 +#: book.translate.xml:34253 msgid "" "For more information about <option>softupdates</option> and file system " "snapshots, including technical papers, visit Marshall Kirk McKusick's " @@ -50348,17 +50887,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:34125 +#: book.translate.xml:34259 msgid "Disk Quotas" msgstr "磁碟配額" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34127 +#: book.translate.xml:34261 msgid "<primary>accounting</primary> <secondary>disk space</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34133 +#: book.translate.xml:34267 msgid "" "Disk quotas can be used to limit the amount of disk space or the number of " "files a user or members of a group may allocate on a per-file system basis. " @@ -50369,7 +50908,7 @@ msgstr "" "案數量。這個可避免一個使用者或群組成員耗盡所有磁碟的可用空間。" #. (itstool) path: sect1/para -#: book.translate.xml:34138 +#: book.translate.xml:34272 msgid "" "This section describes how to configure disk quotas for the <acronym>UFS</" "acronym> file system. To configure quotas on the <acronym>ZFS</acronym> file " @@ -50380,17 +50919,17 @@ msgstr "" "quota\"/>" #. (itstool) path: sect2/title -#: book.translate.xml:34143 +#: book.translate.xml:34277 msgid "Enabling Disk Quotas" msgstr "開啟磁碟配額" #. (itstool) path: sect2/para -#: book.translate.xml:34145 +#: book.translate.xml:34279 msgid "To determine if the FreeBSD kernel provides support for disk quotas:" msgstr "查看 FreeBSD 核心是否支援磁碟配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:34148 +#: book.translate.xml:34282 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sysctl kern.features.ufs_quota</userinput>\n" @@ -50398,7 +50937,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34151 +#: book.translate.xml:34285 msgid "" "In this example, the <literal>1</literal> indicates quota support. If the " "value is instead <literal>0</literal>, add the following line to a custom " @@ -50410,29 +50949,29 @@ msgstr "" "\"kernelconfig\"/> 的指示重新編譯核心:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34156 +#: book.translate.xml:34290 #, no-wrap msgid "options QUOTA" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34158 +#: book.translate.xml:34292 msgid "Next, enable disk quotas in <filename>/etc/rc.conf</filename>:" msgstr "接著,在 <filename>/etc/rc.conf</filename> 開啟磁碟配額:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34161 +#: book.translate.xml:34295 #, no-wrap msgid "quota_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34163 book.translate.xml:34297 +#: book.translate.xml:34297 book.translate.xml:34431 msgid "<primary>disk quotas</primary> <secondary>checking</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34167 +#: book.translate.xml:34301 msgid "" "Normally on bootup, the quota integrity of each file system is checked by " "<citerefentry><refentrytitle>quotacheck</refentrytitle><manvolnum>8</" @@ -50449,13 +50988,13 @@ msgstr "" "到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34175 +#: book.translate.xml:34309 #, no-wrap msgid "check_quotas=\"NO\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34177 +#: book.translate.xml:34311 msgid "" "Finally, edit <filename>/etc/fstab</filename> to enable disk quotas on a per-" "file system basis. To enable per-user quotas on a file system, add " @@ -50467,13 +51006,13 @@ msgstr "" "到 <filename>/etc/fstab</filename> 要開啟配額的檔案系統的項目中。例如:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34183 +#: book.translate.xml:34317 #, no-wrap msgid "/dev/da1s2g /home ufs rw,userquota 1 2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34185 +#: book.translate.xml:34319 msgid "" "To enable group quotas, use <option>groupquota</option> instead. To enable " "both user and group quotas, separate the options with a comma:" @@ -50482,13 +51021,13 @@ msgstr "" "額,可使用逗號隔開選項:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34189 +#: book.translate.xml:34323 #, no-wrap msgid "/dev/da1s2g /home ufs rw,userquota,groupquota 1 2" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34191 +#: book.translate.xml:34325 msgid "" "By default, quota files are stored in the root directory of the file system " "as <filename>quota.user</filename> and <filename>quota.group</filename>. " @@ -50502,7 +51041,7 @@ msgstr "" "議指定其他位置來儲存配額檔案。" #. (itstool) path: sect2/para -#: book.translate.xml:34197 +#: book.translate.xml:34331 msgid "" "Once the configuration is complete, reboot the system and <filename>/etc/rc</" "filename> will automatically run the appropriate commands to create the " @@ -50514,7 +51053,7 @@ msgstr "" "檔。" #. (itstool) path: sect2/para -#: book.translate.xml:34203 +#: book.translate.xml:34337 msgid "" "In the normal course of operations, there should be no need to manually run " "<citerefentry><refentrytitle>quotacheck</refentrytitle><manvolnum>8</" @@ -50532,42 +51071,42 @@ msgstr "" "指令的操作手冊來熟悉這些指令的操作。" #. (itstool) path: sect2/title -#: book.translate.xml:34210 +#: book.translate.xml:34344 msgid "Setting Quota Limits" msgstr "設定配額限制" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34212 +#: book.translate.xml:34346 msgid "<primary>disk quotas</primary> <secondary>limits</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34217 +#: book.translate.xml:34351 msgid "To verify that quotas are enabled, run:" msgstr "要確認配額已經開啟,可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:34220 +#: book.translate.xml:34354 #, no-wrap msgid "<prompt>#</prompt> <userinput>quota -v</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34222 +#: book.translate.xml:34356 msgid "" "There should be a one line summary of disk usage and current quota limits " "for each file system that quotas are enabled on." msgstr "每個有開啟配額的檔案系統應該會有一行磁碟用量及目前配額限制的摘要。" #. (itstool) path: sect2/para -#: book.translate.xml:34226 +#: book.translate.xml:34360 msgid "" "The system is now ready to be assigned quota limits with <command>edquota</" "command>." msgstr "現在系統已準備好可以使用 <command>edquota</command> 分配配額限制。" #. (itstool) path: sect2/para -#: book.translate.xml:34229 +#: book.translate.xml:34363 msgid "" "Several options are available to enforce limits on the amount of disk space " "a user or group may allocate, and how many files they may create. " @@ -50580,12 +51119,12 @@ msgstr "" "可進一步細分為兩個類型:硬性 (Hard) 及軟性 (Soft) 限制。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34236 +#: book.translate.xml:34370 msgid "<primary>hard limit</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34237 +#: book.translate.xml:34371 msgid "" "A hard limit may not be exceeded. Once a user reaches a hard limit, no " "further allocations can be made on that file system by that user. For " @@ -50599,12 +51138,12 @@ msgstr "" "的空間將會失敗。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34245 +#: book.translate.xml:34379 msgid "<primary>soft limit</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34246 +#: book.translate.xml:34380 msgid "" "Soft limits can be exceeded for a limited amount of time, known as the grace " "period, which is one week by default. If a user stays over their limit " @@ -50617,7 +51156,7 @@ msgstr "" "空間。當使用者使用的空間回到低於軟性限制內,寬限期就會被重置。" #. (itstool) path: sect2/para -#: book.translate.xml:34253 +#: book.translate.xml:34387 msgid "" "In the following example, the quota for the <systemitem class=\"username" "\">test</systemitem> account is being edited. When <command>edquota</" @@ -50630,7 +51169,7 @@ msgstr "" "的編輯器來編輯配額限制。預設的編輯器為 <application>vi</application>。" #. (itstool) path: sect2/screen -#: book.translate.xml:34259 +#: book.translate.xml:34393 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>edquota -u test</userinput>\n" @@ -50642,7 +51181,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34266 +#: book.translate.xml:34400 msgid "" "There are normally two lines for each file system that has quotas enabled. " "One line represents the block limits and the other represents the inode " @@ -50657,18 +51196,18 @@ msgstr "" "性限制到 <literal>600</literal>,可更改行內的值如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34275 +#: book.translate.xml:34409 #, no-wrap msgid "/usr: kbytes in use: 65, limits (soft = 500, hard = 600)" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34277 -msgid "The new quota limits take affect upon exiting the editor." +#: book.translate.xml:34411 +msgid "The new quota limits take effect upon exiting the editor." msgstr "新的配額限制將在離開編輯器後生效。" #. (itstool) path: sect2/para -#: book.translate.xml:34280 +#: book.translate.xml:34414 msgid "" "Sometimes it is desirable to set quota limits on a range of users. This can " "be done by first assigning the desired quota limit to a user. Then, use " @@ -50683,13 +51222,13 @@ msgstr "" "<literal>10,000</literal> 到 <literal>19,999</literal> 的使用者:" #. (itstool) path: sect2/screen -#: book.translate.xml:34289 +#: book.translate.xml:34423 #, no-wrap msgid "<prompt>#</prompt> <userinput>edquota -p test 10000-19999</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34291 +#: book.translate.xml:34425 msgid "" "For more information, refer to <citerefentry><refentrytitle>edquota</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." @@ -50698,12 +51237,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/title -#: book.translate.xml:34295 +#: book.translate.xml:34429 msgid "Checking Quota Limits and Disk Usage" msgstr "檢查配額限制與磁碟使用狀況" #. (itstool) path: sect2/para -#: book.translate.xml:34302 +#: book.translate.xml:34436 msgid "" "To check individual user or group quotas and disk usage, use " "<citerefentry><refentrytitle>quota</refentrytitle><manvolnum>1</manvolnum></" @@ -50721,7 +51260,7 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:34309 +#: book.translate.xml:34443 msgid "" "Normally, file systems that the user is not using any disk space on will not " "show in the output of <command>quota</command>, even if the user has a quota " @@ -50735,7 +51274,7 @@ msgstr "" "查詢某個使用者在兩個檔案系統上的配額限制的範例輸出。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34317 +#: book.translate.xml:34451 #, no-wrap msgid "" "Disk quotas for user test (uid 1002):\n" @@ -50745,12 +51284,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:34322 +#: book.translate.xml:34456 msgid "<primary>grace period</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34324 +#: book.translate.xml:34458 msgid "" "In this example, the user is currently 15 kbytes over the soft limit of 50 " "kbytes on <filename>/usr</filename> and has 5 days of grace period left. The " @@ -50762,18 +51301,18 @@ msgstr "" "超出配額限制。" #. (itstool) path: sect2/title -#: book.translate.xml:34332 +#: book.translate.xml:34466 msgid "Quotas over NFS" msgstr "NFS 上的配額" #. (itstool) path: sect2/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:34334 book.translate.xml:52856 +#: book.translate.xml:34468 book.translate.xml:52477 msgid "<primary>NFS</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34336 +#: book.translate.xml:34470 msgid "" "Quotas are enforced by the quota subsystem on the <acronym>NFS</acronym> " "server. The <citerefentry><refentrytitle>rpc.rquotad</" @@ -50788,7 +51327,7 @@ msgstr "" "訊。" #. (itstool) path: sect2/para -#: book.translate.xml:34342 +#: book.translate.xml:34476 msgid "" "On the <acronym>NFS</acronym> server, enable <command>rpc.rquotad</command> " "by removing the <literal>#</literal> from this line in <filename>/etc/inetd." @@ -50798,23 +51337,23 @@ msgstr "" "<command>rpc.rquotad</command> 行前的 <literal>#</literal> 移除來開啟:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34347 +#: book.translate.xml:34481 #, no-wrap msgid "rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34349 +#: book.translate.xml:34483 msgid "Then, restart <command>inetd</command>:" msgstr "然後重新啟動 <command>inetd</command>:" #. (itstool) path: info/title -#: book.translate.xml:34357 +#: book.translate.xml:34491 msgid "Encrypting Disk Partitions" msgstr "磁碟分割區加密" #. (itstool) path: affiliation/address -#: book.translate.xml:34367 +#: book.translate.xml:34501 #, no-wrap msgid "" "\n" @@ -50823,7 +51362,7 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34360 +#: book.translate.xml:34494 msgid "" "<personname> <firstname>Lucky</firstname> <surname>Green</surname> </" "personname> <contrib>Contributed by </contrib> <affiliation> <_:address-1/> " @@ -50831,12 +51370,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34375 +#: book.translate.xml:34509 msgid "<primary>disks</primary> <secondary>encrypting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34380 +#: book.translate.xml:34514 msgid "" "FreeBSD offers excellent online protections against unauthorized data " "access. File permissions and <link linkend=\"mac\">Mandatory Access Control</" @@ -50848,7 +51387,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34389 +#: book.translate.xml:34523 msgid "" "Regardless of how an attacker may have come into possession of a hard drive " "or powered-down computer, the <acronym>GEOM</acronym>-based cryptographic " @@ -50861,7 +51400,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34400 +#: book.translate.xml:34534 msgid "" "This chapter demonstrates how to create an encrypted file system on FreeBSD. " "It first demonstrates the process using <command>gbde</command> and then " @@ -50869,12 +51408,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34406 +#: book.translate.xml:34540 msgid "Disk Encryption with <application>gbde</application>" msgstr "使用 <application>gbde</application> 做磁碟加密" #. (itstool) path: sect2/para -#: book.translate.xml:34409 +#: book.translate.xml:34543 msgid "" "The objective of the <citerefentry><refentrytitle>gbde</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> facility is to provide " @@ -50888,7 +51427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34420 +#: book.translate.xml:34554 msgid "" "This facility provides several barriers to protect the data stored in each " "disk sector. It encrypts the contents of a disk sector using 128-bit " @@ -50901,31 +51440,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34429 +#: book.translate.xml:34563 msgid "" "FreeBSD provides a kernel module for <application>gbde</application> which " "can be loaded with this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34433 +#: book.translate.xml:34567 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_bde</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34435 +#: book.translate.xml:34569 msgid "" "If using a custom kernel configuration file, ensure it contains this line:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34438 +#: book.translate.xml:34572 msgid "<literal>options GEOM_BDE</literal>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34440 +#: book.translate.xml:34574 msgid "" "The following example demonstrates adding a new hard drive to a system that " "will hold a single encrypted partition that will be mounted as <filename>/" @@ -50933,17 +51472,17 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:34445 +#: book.translate.xml:34579 msgid "Encrypting a Partition with <application>gbde</application>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34449 +#: book.translate.xml:34583 msgid "Add the New Hard Drive" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34451 +#: book.translate.xml:34585 msgid "" "Install the new drive to the system as explained in <xref linkend=\"disks-" "adding\"/>. For the purposes of this example, a new hard drive partition has " @@ -50953,7 +51492,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34458 +#: book.translate.xml:34592 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/ad*</userinput>\n" @@ -50963,18 +51502,18 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34465 +#: book.translate.xml:34599 msgid "Create a Directory to Hold <command>gbde</command> Lock Files" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34468 +#: book.translate.xml:34602 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir /etc/gbde</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34470 +#: book.translate.xml:34604 msgid "" "The <application>gbde</application> lock file contains information that " "<application>gbde</application> requires to access encrypted partitions. " @@ -50985,12 +51524,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34481 +#: book.translate.xml:34615 msgid "Initialize the <command>gbde</command> Partition" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34484 +#: book.translate.xml:34618 msgid "" "A <application>gbde</application> partition must be initialized before it " "can be used. This initialization needs to be performed only once. This " @@ -51000,7 +51539,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34492 +#: book.translate.xml:34626 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c.lock</userinput># $FreeBSD$\n" @@ -51015,7 +51554,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34502 +#: book.translate.xml:34636 msgid "" "Once the edit is saved, the user will be asked twice to type the passphrase " "used to secure the data. The passphrase must be the same both times. The " @@ -51027,7 +51566,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34510 +#: book.translate.xml:34644 msgid "" "This initialization creates a lock file for the <application>gbde</" "application> partition. In this example, it is stored as <filename>/etc/gbde/" @@ -51037,7 +51576,7 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:34519 +#: book.translate.xml:34653 msgid "" "Lock files <emphasis>must</emphasis> be backed up together with the contents " "of any encrypted partitions. Without the lock file, the legitimate owner " @@ -51045,18 +51584,18 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34528 +#: book.translate.xml:34662 msgid "Attach the Encrypted Partition to the Kernel" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34531 +#: book.translate.xml:34665 #, no-wrap msgid "<prompt>#</prompt> <userinput>gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lock</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34533 +#: book.translate.xml:34667 msgid "" "This command will prompt to input the passphrase that was selected during " "the initialization of the encrypted partition. The new encrypted device will " @@ -51065,7 +51604,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34539 +#: book.translate.xml:34673 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/ad*</userinput>\n" @@ -51075,12 +51614,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34546 +#: book.translate.xml:34680 msgid "Create a File System on the Encrypted Device" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34549 +#: book.translate.xml:34683 msgid "" "Once the encrypted device has been attached to the kernel, a file system can " "be created on the device. This example creates a <acronym>UFS</acronym> file " @@ -51089,23 +51628,23 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34557 +#: book.translate.xml:34691 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/ad4s1c.bde</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34561 +#: book.translate.xml:34695 msgid "Mount the Encrypted Partition" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34563 +#: book.translate.xml:34697 msgid "Create a mount point and mount the encrypted file system:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34566 +#: book.translate.xml:34700 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /private</userinput>\n" @@ -51113,17 +51652,17 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34571 +#: book.translate.xml:34705 msgid "Verify That the Encrypted File System is Available" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34574 +#: book.translate.xml:34708 msgid "The encrypted file system should now be visible and available for use:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34577 +#: book.translate.xml:34711 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>df -H</userinput>\n" @@ -51137,7 +51676,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34588 +#: book.translate.xml:34722 msgid "" "After each boot, any encrypted file systems must be manually re-attached to " "the kernel, checked for errors, and mounted, before the file systems can be " @@ -51146,7 +51685,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34594 +#: book.translate.xml:34728 #, no-wrap msgid "" "gbde_autoattach_all=\"YES\"\n" @@ -51155,7 +51694,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34598 +#: book.translate.xml:34732 msgid "" "This requires that the passphrase be entered at the console at boot time. " "After typing the correct passphrase, the encrypted partition will be mounted " @@ -51165,7 +51704,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:34608 +#: book.translate.xml:34742 msgid "" "<application>sysinstall</application> is incompatible with " "<application>gbde</application>-encrypted devices. All <filename>*.bde</" @@ -51176,18 +51715,18 @@ msgid "" msgstr "" #. (itstool) path: note/screen -#: book.translate.xml:34616 +#: book.translate.xml:34750 #, no-wrap msgid "<prompt>#</prompt> <userinput>gbde detach /dev/<replaceable>ad4s1c</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34622 +#: book.translate.xml:34756 msgid "Disk Encryption with <command>geli</command>" msgstr "使用 <command>geli</command> 做磁碟加密" #. (itstool) path: sect2/para -#: book.translate.xml:34635 +#: book.translate.xml:34769 msgid "" "An alternative cryptographic <acronym>GEOM</acronym> class is available " "using <command>geli</command>. This control utility adds some features and " @@ -51196,7 +51735,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34643 +#: book.translate.xml:34777 msgid "" "Utilizes the <citerefentry><refentrytitle>crypto</" "refentrytitle><manvolnum>9</manvolnum></citerefentry> framework and " @@ -51204,31 +51743,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34649 +#: book.translate.xml:34783 msgid "" "Supports multiple cryptographic algorithms such as <acronym>AES</acronym>, " "Blowfish, and <acronym>3DES</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34655 +#: book.translate.xml:34789 msgid "" "Allows the root partition to be encrypted. The passphrase used to access the " "encrypted root partition will be requested during system boot." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34661 +#: book.translate.xml:34795 msgid "Allows the use of two independent keys." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34665 +#: book.translate.xml:34799 msgid "It is fast as it performs simple sector-to-sector encryption." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34670 +#: book.translate.xml:34804 msgid "" "Allows backup and restore of master keys. If a user destroys their keys, it " "is still possible to get access to the data by restoring keys from the " @@ -51236,14 +51775,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34676 +#: book.translate.xml:34810 msgid "" "Allows a disk to attach with a random, one-time key which is useful for swap " "partitions and temporary file systems." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34682 +#: book.translate.xml:34816 msgid "" "More features and usage examples can be found in " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51251,7 +51790,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34685 +#: book.translate.xml:34819 msgid "" "The following example describes how to generate a key file which will be " "used as part of the master key for the encrypted provider mounted under " @@ -51263,17 +51802,17 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:34696 +#: book.translate.xml:34830 msgid "Encrypting a Partition with <command>geli</command>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34700 +#: book.translate.xml:34834 msgid "Load <command>geli</command> Support" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34702 +#: book.translate.xml:34836 msgid "" "Support for <command>geli</command> is available as a loadable kernel " "module. To configure the system to automatically load the module at boot " @@ -51281,31 +51820,31 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:34708 +#: book.translate.xml:34842 #, no-wrap msgid "geom_eli_load=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34710 +#: book.translate.xml:34844 msgid "To load the kernel module now:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34712 +#: book.translate.xml:34846 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_eli</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34714 +#: book.translate.xml:34848 msgid "" "For a custom kernel, ensure the kernel configuration file contains these " "lines:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:34717 +#: book.translate.xml:34851 #, no-wrap msgid "" "options GEOM_ELI\n" @@ -51313,12 +51852,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34722 +#: book.translate.xml:34856 msgid "Generate the Master Key" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34724 +#: book.translate.xml:34858 msgid "" "The following commands generate a master key (<filename>/root/da2.key</" "filename>) that is protected with a passphrase. The data source for the key " @@ -51328,7 +51867,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34731 +#: book.translate.xml:34865 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/random of=/root/da2.key bs=64 count=1</userinput>\n" @@ -51338,39 +51877,39 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34736 +#: book.translate.xml:34870 msgid "" "It is not mandatory to use both a passphrase and a key file as either method " "of securing the master key can be used in isolation." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34740 +#: book.translate.xml:34874 msgid "" "If the key file is given as <quote>-</quote>, standard input will be used. " "For example, this command generates three key files:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34744 +#: book.translate.xml:34878 #, no-wrap msgid "<prompt>#</prompt> <userinput>cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2</userinput>" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34748 +#: book.translate.xml:34882 msgid "Attach the Provider with the Generated Key" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34750 +#: book.translate.xml:34884 msgid "" "To attach the provider, specify the key file, the name of the disk, and the " "passphrase:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34753 +#: book.translate.xml:34887 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>geli attach -k /root/da2.key /dev/da2</userinput>\n" @@ -51378,12 +51917,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34756 +#: book.translate.xml:34890 msgid "This creates a new device with an <filename>.eli</filename> extension:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34759 +#: book.translate.xml:34893 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls /dev/da2*</userinput>\n" @@ -51391,19 +51930,19 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:34764 +#: book.translate.xml:34898 msgid "Create the New File System" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34766 +#: book.translate.xml:34900 msgid "" "Next, format the device with the <acronym>UFS</acronym> file system and " "mount it on an existing mount point:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34770 +#: book.translate.xml:34904 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dd if=/dev/random of=/dev/da2.eli bs=1m</userinput>\n" @@ -51412,12 +51951,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:34774 +#: book.translate.xml:34908 msgid "The encrypted file system should now be available for use:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:34777 +#: book.translate.xml:34911 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df -H</userinput>\n" @@ -51431,7 +51970,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34788 +#: book.translate.xml:34922 msgid "" "Once the work on the encrypted partition is done, and the <filename>/" "private</filename> partition is no longer needed, it is prudent to put the " @@ -51440,7 +51979,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34794 +#: book.translate.xml:34928 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>umount /private</userinput>\n" @@ -51448,7 +51987,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34797 +#: book.translate.xml:34931 msgid "" "A <filename>rc.d</filename> script is provided to simplify the mounting of " "<command>geli</command>-encrypted devices at boot time. For this example, " @@ -51456,7 +51995,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34802 +#: book.translate.xml:34936 #, no-wrap msgid "" "geli_devices=\"<replaceable>da2</replaceable>\"\n" @@ -51464,7 +52003,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34805 +#: book.translate.xml:34939 msgid "" "This configures <filename>/dev/da2</filename> as a <command>geli</command> " "provider with a master key of <filename>/root/da2.key</filename>. The system " @@ -51480,24 +52019,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34823 +#: book.translate.xml:34957 msgid "Encrypting Swap" msgstr "交換空間加密" #. (itstool) path: authorgroup/author -#: book.translate.xml:34826 +#: book.translate.xml:34960 msgid "" "<personname> <firstname>Christian</firstname> <surname>Brueffer</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:34836 +#: book.translate.xml:34970 msgid "<primary>swap</primary> <secondary>encrypting</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34841 +#: book.translate.xml:34975 msgid "" "Like the encryption of disk partitions, encryption of swap space is used to " "protect sensitive information. Consider an application that deals with " @@ -51509,7 +52048,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:34850 +#: book.translate.xml:34984 msgid "" "This section demonstrates how to configure an encrypted swap partition using " "<citerefentry><refentrytitle>gbde</refentrytitle><manvolnum>8</manvolnum></" @@ -51519,12 +52058,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34856 +#: book.translate.xml:34990 msgid "Configuring Encrypted Swap" msgstr "設定已加密的交換空間" #. (itstool) path: sect2/para -#: book.translate.xml:34858 +#: book.translate.xml:34992 msgid "" "Swap partitions are not encrypted by default and should be cleared of any " "sensitive data before continuing. To overwrite the current swap partition " @@ -51532,13 +52071,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34863 +#: book.translate.xml:34997 #, no-wrap msgid "<prompt>#</prompt> <userinput>dd if=/dev/random of=/dev/<replaceable>ada0s1b</replaceable> bs=1m</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34865 +#: book.translate.xml:34999 msgid "" "To encrypt the swap partition using <citerefentry><refentrytitle>gbde</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, add the <literal>." @@ -51546,7 +52085,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34869 +#: book.translate.xml:35003 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\tDump\tPass#\n" @@ -51554,7 +52093,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34872 +#: book.translate.xml:35006 msgid "" "To instead encrypt the swap partition using " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51562,7 +52101,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34876 +#: book.translate.xml:35010 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\tDump\tPass#\n" @@ -51570,7 +52109,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34879 +#: book.translate.xml:35013 msgid "" "By default, <citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> uses the <acronym>AES</acronym> algorithm with a " @@ -51580,12 +52119,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34888 +#: book.translate.xml:35022 msgid "aalgo" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34890 +#: book.translate.xml:35024 msgid "" "Data integrity verification algorithm used to ensure that the encrypted data " "has not been tampered with. See <citerefentry><refentrytitle>geli</" @@ -51594,12 +52133,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34897 +#: book.translate.xml:35031 msgid "ealgo" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34899 +#: book.translate.xml:35033 msgid "" "Encryption algorithm used to protect the data. See " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51607,12 +52146,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34905 +#: book.translate.xml:35039 msgid "keylen" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34907 +#: book.translate.xml:35041 msgid "" "The length of the key used for the encryption algorithm. See " "<citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></" @@ -51621,12 +52160,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:34914 +#: book.translate.xml:35048 msgid "sectorsize" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:34916 +#: book.translate.xml:35050 msgid "" "The size of the blocks data is broken into before it is encrypted. Larger " "sector sizes increase performance at the cost of higher storage overhead. " @@ -51634,14 +52173,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34924 +#: book.translate.xml:35058 msgid "" "This example configures an encryped swap partition using the Blowfish " "algorithm with a key length of 128 bits and a sectorsize of 4 kilobytes:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:34928 +#: book.translate.xml:35062 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\t\t\t\tDump\tPass#\n" @@ -51649,26 +52188,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:34934 +#: book.translate.xml:35068 msgid "Encrypted Swap Verification" msgstr "加密的交換空間檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:34936 +#: book.translate.xml:35070 msgid "" "Once the system has rebooted, proper operation of the encrypted swap can be " "verified using <command>swapinfo</command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34940 +#: book.translate.xml:35074 msgid "" "If <citerefentry><refentrytitle>gbde</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is being used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34942 +#: book.translate.xml:35076 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>swapinfo</userinput>\n" @@ -51677,14 +52216,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:34946 +#: book.translate.xml:35080 msgid "" "If <citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is being used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:34948 +#: book.translate.xml:35082 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>swapinfo</userinput>\n" @@ -51693,45 +52232,45 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:34956 +#: book.translate.xml:35090 msgid "Highly Available Storage (<acronym>HAST</acronym>)" msgstr "高可用存儲空間 (<acronym>HAST</acronym>)" #. (itstool) path: authorgroup/author -#: book.translate.xml:34970 +#: book.translate.xml:35104 msgid "" "<personname> <firstname>Freddie</firstname> <surname>Cash</surname> </" "personname> <contrib>With inputs from </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34978 +#: book.translate.xml:35112 msgid "" "<personname> <firstname>Pawel Jakub</firstname> <surname>Dawidek</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34985 +#: book.translate.xml:35119 msgid "" "<personname> <firstname>Michael W.</firstname> <surname>Lucas</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:34992 +#: book.translate.xml:35126 msgid "" "<personname> <firstname>Viktor</firstname> <surname>Petersson</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35001 +#: book.translate.xml:35135 msgid "<primary>HAST</primary> <secondary>high availability</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35006 +#: book.translate.xml:35140 msgid "" "High availability is one of the main requirements in serious business " "applications and highly-available storage is a key component in such " @@ -51747,60 +52286,60 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35020 +#: book.translate.xml:35154 msgid "The following are the main features of <acronym>HAST</acronym>:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35025 +#: book.translate.xml:35159 msgid "Can be used to mask <acronym>I/O</acronym> errors on local hard drives." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35030 +#: book.translate.xml:35164 msgid "" "File system agnostic as it works with any file system supported by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35035 +#: book.translate.xml:35169 msgid "" "Efficient and quick resynchronization as only the blocks that were modified " "during the downtime of a node are synchronized." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35048 +#: book.translate.xml:35182 msgid "" "Can be used in an already deployed environment to add additional redundancy." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35053 +#: book.translate.xml:35187 msgid "" "Together with <acronym>CARP</acronym>, <application>Heartbeat</application>, " "or other tools, it can be used to build a robust and durable storage system." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35059 +#: book.translate.xml:35193 msgid "After reading this section, you will know:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35063 +#: book.translate.xml:35197 msgid "" "What <acronym>HAST</acronym> is, how it works, and which features it " "provides." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35068 +#: book.translate.xml:35202 msgid "How to set up and use <acronym>HAST</acronym> on FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35073 +#: book.translate.xml:35207 msgid "" "How to integrate <acronym>CARP</acronym> and " "<citerefentry><refentrytitle>devd</refentrytitle><manvolnum>8</manvolnum></" @@ -51808,26 +52347,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35078 +#: book.translate.xml:35212 msgid "Before reading this section, you should:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35086 +#: book.translate.xml:35220 msgid "" "Know how to configure network interfaces and other core FreeBSD subsystems " "(<xref linkend=\"config-tuning\"/>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35091 +#: book.translate.xml:35225 msgid "" "Have a good understanding of FreeBSD networking (<xref linkend=\"network-" "communication\"/>)." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35096 +#: book.translate.xml:35230 msgid "" "The <acronym>HAST</acronym> project was sponsored by The FreeBSD Foundation " "with support from <link xlink:href=\"http://www.omc.net/\">http://www.omc." @@ -51836,12 +52375,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35101 +#: book.translate.xml:35235 msgid "HAST Operation" msgstr "HAST 運作模式" #. (itstool) path: sect2/para -#: book.translate.xml:35103 +#: book.translate.xml:35237 msgid "" "<acronym>HAST</acronym> provides synchronous block-level replication between " "two physical machines: the <emphasis>primary</emphasis>, also known as the " @@ -51851,7 +52390,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35111 +#: book.translate.xml:35245 msgid "" "Since <acronym>HAST</acronym> works in a primary-secondary configuration, it " "allows only one of the cluster nodes to be active at any given time. The " @@ -51862,14 +52401,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35119 +#: book.translate.xml:35253 msgid "" "The physical components of the <acronym>HAST</acronym> system are the local " "disk on primary node, and the disk on the remote, secondary node." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35123 +#: book.translate.xml:35257 msgid "" "<acronym>HAST</acronym> operates synchronously on a block level, making it " "transparent to file systems and applications. <acronym>HAST</acronym> " @@ -51879,7 +52418,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35131 +#: book.translate.xml:35265 msgid "" "Each write, delete, or flush operation is sent to both the local disk and to " "the remote disk over <acronym>TCP/IP</acronym>. Each read operation is " @@ -51889,7 +52428,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35138 +#: book.translate.xml:35272 msgid "" "<acronym>HAST</acronym> tries to provide fast failure recovery. For this " "reason, it is important to reduce synchronization time after a node's " @@ -51899,7 +52438,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35146 +#: book.translate.xml:35280 msgid "" "There are many ways to handle synchronization. <acronym>HAST</acronym> " "implements several replication modes to handle different synchronization " @@ -51907,7 +52446,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35152 +#: book.translate.xml:35286 msgid "" "<emphasis>memsync</emphasis>: This mode reports a write operation as " "completed when the local write operation is finished and when the remote " @@ -51918,7 +52457,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35163 +#: book.translate.xml:35297 msgid "" "<emphasis>fullsync</emphasis>: This mode reports a write operation as " "completed when both the local write and the remote write complete. This is " @@ -51926,7 +52465,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35170 +#: book.translate.xml:35304 msgid "" "<emphasis>async</emphasis>: This mode reports a write operation as completed " "when the local write completes. This is the fastest and the most dangerous " @@ -51935,17 +52474,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35181 +#: book.translate.xml:35315 msgid "HAST Configuration" msgstr "HAST 設定" #. (itstool) path: sect2/para -#: book.translate.xml:35183 +#: book.translate.xml:35317 msgid "The <acronym>HAST</acronym> framework consists of several components:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35188 +#: book.translate.xml:35322 msgid "" "The <citerefentry><refentrytitle>hastd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon which provides data synchronization. When " @@ -51954,14 +52493,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35194 +#: book.translate.xml:35328 msgid "" "The userland management utility, <citerefentry><refentrytitle>hastctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35199 +#: book.translate.xml:35333 msgid "" "The <citerefentry><refentrytitle>hast.conf</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> configuration file. This file must exist before " @@ -51969,7 +52508,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35205 +#: book.translate.xml:35339 msgid "" "Users who prefer to statically build <literal>GEOM_GATE</literal> support " "into the kernel should add this line to the custom kernel configuration " @@ -51978,13 +52517,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35210 +#: book.translate.xml:35344 #, no-wrap msgid "options\tGEOM_GATE" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35212 +#: book.translate.xml:35346 msgid "" "The following example describes how to configure two nodes in master-slave/" "primary-secondary operation using <acronym>HAST</acronym> to replicate the " @@ -51999,7 +52538,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35226 +#: book.translate.xml:35360 msgid "" "Configuration of <acronym>HAST</acronym> is done using <filename>/etc/hast." "conf</filename>. This file should be identical on both nodes. The simplest " @@ -52007,7 +52546,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35231 +#: book.translate.xml:35365 #, no-wrap msgid "" "resource <replaceable>test</replaceable> {\n" @@ -52023,14 +52562,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35242 +#: book.translate.xml:35376 msgid "" "For more advanced configuration, refer to <citerefentry><refentrytitle>hast." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:35246 +#: book.translate.xml:35380 msgid "" "It is also possible to use host names in the <literal>remote</literal> " "statements if the hosts are resolvable and defined either in <filename>/etc/" @@ -52038,7 +52577,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35253 +#: book.translate.xml:35387 msgid "" "Once the configuration exists on both nodes, the <acronym>HAST</acronym> " "pool can be created. Run these commands on both nodes to place the initial " @@ -52048,7 +52587,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35258 +#: book.translate.xml:35392 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hastctl create <replaceable>test</replaceable></userinput>\n" @@ -52056,7 +52595,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:35262 +#: book.translate.xml:35396 msgid "" "It is <emphasis>not</emphasis> possible to use <acronym>GEOM</acronym> " "providers with an existing file system or to convert an existing storage to " @@ -52066,7 +52605,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35271 +#: book.translate.xml:35405 msgid "" "A HAST node's <literal>primary</literal> or <literal>secondary</literal> " "role is selected by an administrator, or software like " @@ -52077,35 +52616,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35278 +#: book.translate.xml:35412 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl role primary <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35280 +#: book.translate.xml:35414 msgid "Run this command on the secondary node, <literal>hastb</literal>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35283 +#: book.translate.xml:35417 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl role secondary <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35285 +#: book.translate.xml:35419 msgid "Verify the result by running <command>hastctl</command> on each node:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35288 +#: book.translate.xml:35422 #, no-wrap msgid "<prompt>#</prompt> <userinput>hastctl status <replaceable>test</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35290 +#: book.translate.xml:35424 msgid "" "Check the <literal>status</literal> line in the output. If it says " "<literal>degraded</literal>, something is wrong with the configuration file. " @@ -52116,7 +52655,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35299 +#: book.translate.xml:35433 msgid "" "The next step is to create a file system on the <acronym>GEOM</acronym> " "provider and mount it. This must be done on the <literal>primary</literal> " @@ -52126,7 +52665,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35306 +#: book.translate.xml:35440 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/hast/<replaceable>test</replaceable></userinput>\n" @@ -52135,7 +52674,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35310 +#: book.translate.xml:35444 msgid "" "Once the <acronym>HAST</acronym> framework is configured properly, the final " "step is to make sure that <acronym>HAST</acronym> is started automatically " @@ -52143,18 +52682,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:35316 +#: book.translate.xml:35450 #, no-wrap msgid "hastd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:35319 +#: book.translate.xml:35453 msgid "Failover Configuration" msgstr "容錯移轉設定" #. (itstool) path: sect3/para -#: book.translate.xml:35321 +#: book.translate.xml:35455 msgid "" "The goal of this example is to build a robust storage system which is " "resistant to the failure of any given node. If the primary node fails, the " @@ -52163,7 +52702,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35328 +#: book.translate.xml:35462 msgid "" "To accomplish this task, the Common Address Redundancy Protocol " "(<acronym>CARP</acronym>) is used to provide for automatic failover at the " @@ -52178,7 +52717,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35341 +#: book.translate.xml:35475 msgid "" "The <acronym>HAST</acronym> pool created in the previous section is now " "ready to be exported to the other hosts on the network. This can be " @@ -52189,7 +52728,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35351 +#: book.translate.xml:35485 msgid "" "In the event of <acronym>CARP</acronym> interfaces going up or down, the " "FreeBSD operating system generates a <citerefentry><refentrytitle>devd</" @@ -52202,14 +52741,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35360 +#: book.translate.xml:35494 msgid "" "To catch state changes on the <acronym>CARP</acronym> interfaces, add this " "configuration to <filename>/etc/devd.conf</filename> on each node:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:35364 +#: book.translate.xml:35498 #, no-wrap msgid "" "notify 30 {\n" @@ -52228,14 +52767,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:35379 +#: book.translate.xml:35513 msgid "" "If the systems are running FreeBSD 10 or higher, replace <filename>carp0</" "filename> with the name of the <acronym>CARP</acronym>-configured interface." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35384 +#: book.translate.xml:35518 msgid "" "Restart <citerefentry><refentrytitle>devd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on both nodes to put the new configuration into " @@ -52243,13 +52782,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:35387 +#: book.translate.xml:35521 #, no-wrap msgid "<prompt>#</prompt> <userinput>service devd restart</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35389 +#: book.translate.xml:35523 msgid "" "When the specified interface state changes by going up or down , the system " "generates a notification, allowing the <citerefentry><refentrytitle>devd</" @@ -52261,12 +52800,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35397 +#: book.translate.xml:35531 msgid "Here is an example of an automated failover script:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:35400 +#: book.translate.xml:35534 #, no-wrap msgid "" "#!/bin/sh\n" @@ -52355,43 +52894,43 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35484 +#: book.translate.xml:35618 msgid "" "In a nutshell, the script takes these actions when a node becomes master:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35489 +#: book.translate.xml:35623 msgid "Promotes the <acronym>HAST</acronym> pool to primary on the other node." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35494 +#: book.translate.xml:35628 msgid "Checks the file system under the <acronym>HAST</acronym> pool." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35499 +#: book.translate.xml:35633 msgid "Mounts the pool." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35503 +#: book.translate.xml:35637 msgid "When a node becomes secondary:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35507 +#: book.translate.xml:35641 msgid "Unmounts the <acronym>HAST</acronym> pool." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35511 +#: book.translate.xml:35645 msgid "Degrades the <acronym>HAST</acronym> pool to secondary." msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:35517 +#: book.translate.xml:35651 msgid "" "This is just an example script which serves as a proof of concept. It does " "not handle all the possible scenarios and can be extended or altered in any " @@ -52399,7 +52938,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:35524 +#: book.translate.xml:35658 msgid "" "For this example, a standard <acronym>UFS</acronym> file system was used. To " "reduce the time needed for recovery, a journal-enabled <acronym>UFS</" @@ -52407,7 +52946,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35531 +#: book.translate.xml:35665 msgid "" "More detailed information with additional examples can be found at <link " "xlink:href=\"http://wiki.FreeBSD.org/HAST\">http://wiki.FreeBSD.org/HAST</" @@ -52415,7 +52954,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35539 +#: book.translate.xml:35673 msgid "" "<acronym>HAST</acronym> should generally work without issues. However, as " "with any other software product, there may be times when it does not work as " @@ -52425,7 +52964,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35546 +#: book.translate.xml:35680 msgid "" "When troubleshooting <acronym>HAST</acronym>, the debugging level of " "<citerefentry><refentrytitle>hastd</refentrytitle><manvolnum>8</manvolnum></" @@ -52436,12 +52975,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:35555 +#: book.translate.xml:35689 msgid "Recovering from the Split-brain Condition" msgstr "自 Split-brain 情況復原" #. (itstool) path: sect3/para -#: book.translate.xml:35557 +#: book.translate.xml:35691 msgid "" "<firstterm>Split-brain</firstterm> occurs when the nodes of the cluster are " "unable to communicate with each other, and both are configured as primary. " @@ -52451,7 +52990,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:35564 +#: book.translate.xml:35698 msgid "" "The administrator must either decide which node has more important changes, " "or perform the merge manually. Then, let <acronym>HAST</acronym> perform " @@ -52460,7 +52999,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:35571 +#: book.translate.xml:35705 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hastctl role init <replaceable>test</replaceable></userinput>\n" @@ -52469,26 +53008,26 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:35588 +#: book.translate.xml:35722 msgid "GEOM: Modular Disk Transformation Framework" -msgstr "" +msgstr "GEOM: 模組化磁碟轉換框架" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35604 book.translate.xml:35688 book.translate.xml:35829 -#: book.translate.xml:36462 book.translate.xml:36610 book.translate.xml:36975 -#: book.translate.xml:37179 +#: book.translate.xml:35738 book.translate.xml:35822 book.translate.xml:35963 +#: book.translate.xml:36596 book.translate.xml:36744 book.translate.xml:37109 +#: book.translate.xml:37313 msgid "<primary><acronym>GEOM</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35607 +#: book.translate.xml:35741 msgid "" "<primary><acronym>GEOM</acronym> Disk Framework</primary> " "<see><acronym>GEOM</acronym></see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35612 +#: book.translate.xml:35746 msgid "" "In FreeBSD, the <acronym>GEOM</acronym> framework permits access and control " "to classes, such as Master Boot Records and <acronym>BSD</acronym> labels, " @@ -52497,9 +53036,14 @@ msgid "" "configurations, <acronym>GEOM</acronym> transparently provides access to the " "operating system and operating system utilities." msgstr "" +"在 FreeBSD 中,<acronym>GEOM</acronym> 可允許對類別做存取與控制,例如:主開機" +"記錄 (Master Boot Record) 與 <acronym>BSD</acronym> 標籤,透過利用提供者,或" +"在 <filename>/dev</filename> 中的磁碟裝置。透過支援各種 <acronym>RAID</" +"acronym> 的配置,<acronym>GEOM</acronym> 透明的提供了對作業系統與作業系統工具" +"的存取。" #. (itstool) path: sect1/para -#: book.translate.xml:35620 +#: book.translate.xml:35754 msgid "" "This chapter covers the use of disks under the <acronym>GEOM</acronym> " "framework in FreeBSD. This includes the major <acronym>RAID</acronym> " @@ -52510,63 +53054,63 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35632 +#: book.translate.xml:35766 msgid "" "What type of <acronym>RAID</acronym> support is available through " "<acronym>GEOM</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35637 +#: book.translate.xml:35771 msgid "" "How to use the base utilities to configure, maintain, and manipulate the " "various <acronym>RAID</acronym> levels." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35643 +#: book.translate.xml:35777 msgid "" "How to mirror, stripe, encrypt, and remotely connect disk devices through " "<acronym>GEOM</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35648 +#: book.translate.xml:35782 msgid "" "How to troubleshoot disks attached to the <acronym>GEOM</acronym> framework." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35657 +#: book.translate.xml:35791 msgid "Understand how FreeBSD treats disk devices (<xref linkend=\"disks\"/>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:35661 +#: book.translate.xml:35795 msgid "" "Know how to configure and install a new kernel (<xref linkend=\"kernelconfig" "\"/>)." msgstr "了解如何設定並安裝新的核心 (<xref linkend=\"kernelconfig\"/>)。" #. (itstool) path: info/title -#: book.translate.xml:35668 +#: book.translate.xml:35802 msgid "RAID0 - Striping" msgstr "RAID0 - 串連 (Striping)" #. (itstool) path: authorgroup/author -#: book.translate.xml:35679 book.translate.xml:36453 book.translate.xml:62385 +#: book.translate.xml:35813 book.translate.xml:36587 book.translate.xml:62007 msgid "" "<personname> <firstname>Murray</firstname> <surname>Stokely</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35691 +#: book.translate.xml:35825 msgid "<primary>Striping</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35695 +#: book.translate.xml:35829 msgid "" "Striping combines several disk drives into a single volume. Striping can be " "performed through the use of hardware <acronym>RAID</acronym> controllers. " @@ -52580,7 +53124,7 @@ msgstr "" "acronym> 磁碟控制器。" #. (itstool) path: sect1/para -#: book.translate.xml:35703 +#: book.translate.xml:35837 msgid "" "In <acronym>RAID0</acronym>, data is split into blocks that are written " "across all the drives in the array. As seen in the following illustration, " @@ -52600,13 +53144,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:35714 +#: book.translate.xml:35848 msgctxt "_" msgid "external ref='geom/striping' md5='__failed__'" msgstr "" #. (itstool) path: sect1/mediaobject -#: book.translate.xml:35712 +#: book.translate.xml:35846 msgid "" "<imageobject> <imagedata fileref=\"geom/striping\" align=\"center\"/> </" "imageobject> <textobject> <phrase>Disk Striping Illustration</phrase> </" @@ -52614,7 +53158,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35722 +#: book.translate.xml:35856 msgid "" "Each disk in a <acronym>RAID0</acronym> stripe must be of the same size, " "since <acronym>I/O</acronym> requests are interleaved to read or write to " @@ -52624,7 +53168,7 @@ msgstr "" "O</acronym> 的請求是平行交錯讀取或寫入到多個磁碟的。" #. (itstool) path: note/para -#: book.translate.xml:35728 +#: book.translate.xml:35862 msgid "" "<acronym>RAID0</acronym> does <emphasis>not</emphasis> provide any " "redundancy. This means that if one disk in the array fails, all of the data " @@ -52636,7 +53180,7 @@ msgstr "" "若資料很重要,請規畫備份策略,定期儲存備份到遠端系統或裝置。" #. (itstool) path: sect1/para -#: book.translate.xml:35735 +#: book.translate.xml:35869 msgid "" "The process for creating a software, <acronym>GEOM</acronym>-based " "<acronym>RAID0</acronym> on a FreeBSD system using commodity disks is as " @@ -52647,23 +53191,23 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:35742 +#: book.translate.xml:35876 msgid "Creating a Stripe of Unformatted <acronym>ATA</acronym> Disks" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35746 +#: book.translate.xml:35880 msgid "Load the <filename>geom_stripe.ko</filename> module:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35749 +#: book.translate.xml:35883 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_stripe</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35753 +#: book.translate.xml:35887 msgid "" "Ensure that a suitable mount point exists. If this volume will become a root " "partition, then temporarily use another mount point such as <filename>/mnt</" @@ -52671,7 +53215,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35760 +#: book.translate.xml:35894 msgid "" "Determine the device names for the disks which will be striped, and create " "the new stripe device. For example, to stripe two unused and unpartitioned " @@ -52680,7 +53224,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35767 +#: book.translate.xml:35901 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gstripe label -v st0 /dev/ad2 /dev/ad3</userinput>\n" @@ -52690,20 +53234,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35774 +#: book.translate.xml:35908 msgid "" "Write a standard label, also known as a partition table, on the new volume " "and install the default bootstrap code:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35778 +#: book.translate.xml:35912 #, no-wrap msgid "<prompt>#</prompt> <userinput>bsdlabel -wB /dev/stripe/st0</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35782 +#: book.translate.xml:35916 msgid "" "This process should create two other devices in <filename>/dev/stripe</" "filename> in addition to <filename>st0</filename>. Those include " @@ -52713,13 +53257,13 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35790 +#: book.translate.xml:35924 #, no-wrap msgid "<prompt>#</prompt> <userinput>newfs -U /dev/stripe/st0a</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35792 +#: book.translate.xml:35926 msgid "" "Many numbers will glide across the screen, and after a few seconds, the " "process will be complete. The volume has been created and is ready to be " @@ -52727,18 +53271,18 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35798 +#: book.translate.xml:35932 msgid "To manually mount the created disk stripe:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35800 +#: book.translate.xml:35934 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /dev/stripe/st0a /mnt</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35804 +#: book.translate.xml:35938 msgid "" "To mount this striped file system automatically during the boot process, " "place the volume information in <filename>/etc/fstab</filename>. In this " @@ -52747,7 +53291,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35810 +#: book.translate.xml:35944 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /stripe</userinput>\n" @@ -52756,7 +53300,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:35816 +#: book.translate.xml:35950 msgid "" "The <filename>geom_stripe.ko</filename> module must also be automatically " "loaded during system initialization, by adding a line to <filename>/boot/" @@ -52764,28 +53308,28 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:35821 +#: book.translate.xml:35955 #, no-wrap msgid "<prompt>#</prompt> <userinput>echo 'geom_stripe_load=\"YES\"' >> /boot/loader.conf</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:35827 +#: book.translate.xml:35961 msgid "RAID1 - Mirroring" msgstr "RAID1 - 鏡像 (Mirroring)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35832 +#: book.translate.xml:35966 msgid "<primary>Disk Mirroring</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:35835 +#: book.translate.xml:35969 msgid "<primary>RAID1</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35839 +#: book.translate.xml:35973 msgid "" "<acronym>RAID1</acronym>, or <emphasis>mirroring</emphasis>, is the " "technique of writing the same data to more than one disk drive. Mirrors are " @@ -52802,7 +53346,7 @@ msgstr "" "者中斷運作。" #. (itstool) path: sect1/para -#: book.translate.xml:35849 +#: book.translate.xml:35983 msgid "" "Two common situations are illustrated in these examples. The first creates a " "mirror out of two new drives and uses it as a replacement for an existing " @@ -52813,7 +53357,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:35857 +#: book.translate.xml:35991 msgid "" "Traditionally, the two drives in a mirror are identical in model and " "capacity, but <citerefentry><refentrytitle>gmirror</" @@ -52825,14 +53369,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:35866 +#: book.translate.xml:36000 msgid "" "The mirroring procedures shown here are non-destructive, but as with any " "major disk operation, make a full backup first." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:35872 +#: book.translate.xml:36006 msgid "" "While <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> is used in these procedures to copy file systems, " @@ -52843,12 +53387,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35879 +#: book.translate.xml:36013 msgid "Metadata Issues" msgstr "Metadata 問題" #. (itstool) path: sect2/para -#: book.translate.xml:35881 +#: book.translate.xml:36015 msgid "" "Many disk systems store metadata at the end of each disk. Old metadata " "should be erased before reusing the disk for a mirror. Most problems are " @@ -52857,7 +53401,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35887 +#: book.translate.xml:36021 msgid "" "<acronym>GPT</acronym> metadata can be erased with " "<citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></" @@ -52866,13 +53410,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35892 +#: book.translate.xml:36026 #, no-wrap msgid "<prompt>#</prompt> <userinput>gpart destroy -F ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35894 +#: book.translate.xml:36028 msgid "" "A disk can be removed from an active mirror and the metadata erased in one " "step using <citerefentry><refentrytitle>gmirror</refentrytitle><manvolnum>8</" @@ -52881,26 +53425,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35899 +#: book.translate.xml:36033 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror remove gm4 ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35901 +#: book.translate.xml:36035 msgid "" "If the mirror is not running, but old mirror metadata is still on the disk, " "use <command>gmirror clear</command> to remove it:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35905 +#: book.translate.xml:36039 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror clear ada8</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35907 +#: book.translate.xml:36041 msgid "" "<citerefentry><refentrytitle>gmirror</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> stores one block of metadata at the end of the " @@ -52913,12 +53457,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:35917 +#: book.translate.xml:36051 msgid "Creating a Mirror with Two New Disks" msgstr "使用兩個新磁碟建立鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:35919 +#: book.translate.xml:36053 msgid "" "In this example, FreeBSD has already been installed on a single disk, " "<filename>ada0</filename>. Two new disks, <filename>ada1</filename> and " @@ -52927,7 +53471,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35926 +#: book.translate.xml:36060 msgid "" "The <filename>geom_mirror.ko</filename> kernel module must either be built " "into the kernel or loaded at boot- or run-time. Manually load the kernel " @@ -52935,24 +53479,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35930 book.translate.xml:36057 +#: book.translate.xml:36064 book.translate.xml:36191 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror load</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35932 +#: book.translate.xml:36066 msgid "Create the mirror with the two new drives:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35934 +#: book.translate.xml:36068 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror label -v gm0 /dev/ada1 /dev/ada2</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35936 +#: book.translate.xml:36070 msgid "" "<filename>gm0</filename> is a user-chosen device name assigned to the new " "mirror. After the mirror has been started, this device name appears in " @@ -52960,7 +53504,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35941 +#: book.translate.xml:36075 msgid "" "<acronym>MBR</acronym> and <application>bsdlabel</application> partition " "tables can now be created on the mirror with " @@ -52972,7 +53516,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35950 +#: book.translate.xml:36084 msgid "" "Partitions on the mirror do not have to be the same size as those on the " "existing disk, but they must be large enough to hold all the data already " @@ -52980,7 +53524,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35955 +#: book.translate.xml:36089 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s MBR mirror/gm0</userinput>\n" @@ -52993,7 +53537,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35963 +#: book.translate.xml:36097 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s BSD mirror/gm0s1</userinput>\n" @@ -53014,14 +53558,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35979 book.translate.xml:36201 +#: book.translate.xml:36113 book.translate.xml:36335 msgid "" "Make the mirror bootable by installing bootcode in the <acronym>MBR</" "acronym> and bsdlabel and setting the active slice:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35983 book.translate.xml:36205 +#: book.translate.xml:36117 book.translate.xml:36339 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart bootcode -b /boot/mbr mirror/gm0</userinput>\n" @@ -53030,12 +53574,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35987 +#: book.translate.xml:36121 msgid "Format the file systems on the new mirror, enabling soft-updates." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35990 +#: book.translate.xml:36124 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/mirror/gm0s1a</userinput>\n" @@ -53045,7 +53589,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:35995 +#: book.translate.xml:36129 msgid "" "File systems from the original <filename>ada0</filename> disk can now be " "copied onto the mirror with <citerefentry><refentrytitle>dump</" @@ -53055,7 +53599,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:35999 +#: book.translate.xml:36133 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /dev/mirror/gm0s1a /mnt</userinput>\n" @@ -53069,14 +53613,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36008 +#: book.translate.xml:36142 msgid "" "Edit <filename>/mnt/etc/fstab</filename> to point to the new mirror file " "systems:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:36011 +#: book.translate.xml:36145 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\tDump\tPass#\n" @@ -53088,7 +53632,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36018 +#: book.translate.xml:36152 msgid "" "If the <filename>geom_mirror.ko</filename> kernel module has not been built " "into the kernel, <filename>/mnt/boot/loader.conf</filename> is edited to " @@ -53096,13 +53640,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:36023 book.translate.xml:36232 book.translate.xml:36352 +#: book.translate.xml:36157 book.translate.xml:36366 book.translate.xml:36486 #, no-wrap msgid "geom_mirror_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36025 +#: book.translate.xml:36159 msgid "" "Reboot the system to test the new mirror and verify that all data has been " "copied. The <acronym>BIOS</acronym> will see the mirror as two individual " @@ -53111,7 +53655,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36031 +#: book.translate.xml:36165 msgid "" "See <xref linkend=\"gmirror-troubleshooting\"/> if there are problems " "booting. Powering down and disconnecting the original <filename>ada0</" @@ -53119,17 +53663,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36036 +#: book.translate.xml:36170 msgid "In use, the mirror will behave just like the original single drive." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36041 +#: book.translate.xml:36175 msgid "Creating a Mirror with an Existing Drive" msgstr "使用既有磁碟建立鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:36043 +#: book.translate.xml:36177 msgid "" "In this example, FreeBSD has already been installed on a single disk, " "<filename>ada0</filename>. A new disk, <filename>ada1</filename>, has been " @@ -53142,18 +53686,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36054 +#: book.translate.xml:36188 msgid "Load the <filename>geom_mirror.ko</filename> kernel module:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36059 +#: book.translate.xml:36193 msgid "" "Check the media size of the original disk with <command>diskinfo</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36062 +#: book.translate.xml:36196 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>diskinfo -v ada0 | head -n3</userinput>\n" @@ -53163,7 +53707,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36067 +#: book.translate.xml:36201 msgid "" "Create a mirror on the new disk. To make certain that the mirror capacity is " "not any larger than the original <filename>ada0</filename> drive, " @@ -53180,7 +53724,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36080 +#: book.translate.xml:36214 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>geom zero load</userinput>\n" @@ -53190,7 +53734,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36085 +#: book.translate.xml:36219 msgid "" "Since <filename>gzero.nop</filename> does not store any data, the mirror " "does not see it as connected. The mirror is told to <quote>forget</quote> " @@ -53200,7 +53744,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36092 +#: book.translate.xml:36226 msgid "" "After creating <filename>gm0</filename>, view the partition table on " "<filename>ada0</filename>. This output is from a 1 TB drive. If there is " @@ -53209,7 +53753,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36098 +#: book.translate.xml:36232 msgid "" "However, if the output shows that all of the space on the disk is allocated, " "as in the following listing, there is no space available for the 512-byte " @@ -53217,7 +53761,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36103 +#: book.translate.xml:36237 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show ada0</userinput>\n" @@ -53226,7 +53770,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36107 +#: book.translate.xml:36241 msgid "" "In this case, the partition table must be edited to reduce the capacity by " "one sector on <filename>mirror/gm0</filename>. The procedure will be " @@ -53234,14 +53778,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36111 +#: book.translate.xml:36245 msgid "" "In either case, partition tables on the primary disk should be first copied " "using <command>gpart backup</command> and <command>gpart restore</command>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36115 +#: book.translate.xml:36249 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart backup ada0 > table.ada0</userinput>\n" @@ -53249,14 +53793,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36118 +#: book.translate.xml:36252 msgid "" "These commands create two files, <filename>table.ada0</filename> and " "<filename>table.ada0s1</filename>. This example is from a 1 TB drive:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36123 +#: book.translate.xml:36257 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0</userinput>\n" @@ -53265,7 +53809,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36127 +#: book.translate.xml:36261 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0s1</userinput>\n" @@ -53279,7 +53823,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36136 +#: book.translate.xml:36270 msgid "" "If no free space is shown at the end of the disk, the size of both the slice " "and the last partition must be reduced by one sector. Edit the two files, " @@ -53288,7 +53832,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36142 +#: book.translate.xml:36276 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0</userinput>\n" @@ -53297,7 +53841,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36146 +#: book.translate.xml:36280 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat table.ada0s1</userinput>\n" @@ -53311,19 +53855,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36155 +#: book.translate.xml:36289 msgid "" "If at least one sector was unallocated at the end of the disk, these two " "files can be used without modification." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36158 +#: book.translate.xml:36292 msgid "Now restore the partition table into <filename>mirror/gm0</filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36161 +#: book.translate.xml:36295 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart restore mirror/gm0 < table.ada0</userinput>\n" @@ -53331,7 +53875,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36164 +#: book.translate.xml:36298 msgid "" "Check the partition table with <command>gpart show</command>. This example " "has <filename>gm0s1a</filename> for <filename>/</filename>, " @@ -53342,7 +53886,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36173 +#: book.translate.xml:36307 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart show mirror/gm0</userinput>\n" @@ -53362,21 +53906,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36188 +#: book.translate.xml:36322 msgid "" "Both the slice and the last partition must have at least one free block at " "the end of the disk." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36191 +#: book.translate.xml:36325 msgid "" "Create file systems on these new partitions. The number of partitions will " "vary to match the original disk, <filename>ada0</filename>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36195 +#: book.translate.xml:36329 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -U /dev/mirror/gm0s1a</userinput>\n" @@ -53387,7 +53931,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36209 +#: book.translate.xml:36343 msgid "" "Adjust <filename>/etc/fstab</filename> to use the new partitions on the " "mirror. Back up this file first by copying it to <filename>/etc/fstab.orig</" @@ -53395,20 +53939,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36213 +#: book.translate.xml:36347 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp /etc/fstab /etc/fstab.orig</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36215 +#: book.translate.xml:36349 msgid "" "Edit <filename>/etc/fstab</filename>, replacing <filename>/dev/ada0</" "filename> with <filename>mirror/gm0</filename>." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:36219 +#: book.translate.xml:36353 #, no-wrap msgid "" "# Device\t\tMountpoint\tFStype\tOptions\tDump\tPass#\n" @@ -53421,7 +53965,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36227 +#: book.translate.xml:36361 msgid "" "If the <filename>geom_mirror.ko</filename> kernel module has not been built " "into the kernel, edit <filename>/boot/loader.conf</filename> to load it at " @@ -53429,7 +53973,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36234 +#: book.translate.xml:36368 msgid "" "File systems from the original disk can now be copied onto the mirror with " "<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></" @@ -53440,7 +53984,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36239 +#: book.translate.xml:36373 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /dev/mirror/gm0s1a /mnt</userinput>\n" @@ -53456,7 +54000,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36250 +#: book.translate.xml:36384 msgid "" "Restart the system, booting from <filename>ada1</filename>. If everything is " "working, the system will boot from <filename>mirror/gm0</filename>, which " @@ -53465,21 +54009,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36257 +#: book.translate.xml:36391 msgid "" "At this point, the mirror still consists of only the single <filename>ada1</" "filename> disk." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36260 +#: book.translate.xml:36394 msgid "" "After booting from <filename>mirror/gm0</filename> successfully, the final " "step is inserting <filename>ada0</filename> into the mirror." msgstr "" #. (itstool) path: important/para -#: book.translate.xml:36265 +#: book.translate.xml:36399 msgid "" "When <filename>ada0</filename> is inserted into the mirror, its former " "contents will be overwritten by data from the mirror. Make certain that " @@ -53494,7 +54038,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36278 +#: book.translate.xml:36412 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror insert gm0 ada0</userinput>\n" @@ -53502,14 +54046,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36281 +#: book.translate.xml:36415 msgid "" "Synchronization between the two disks will start immediately. Use " "<command>gmirror status</command> to view the progress." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36285 +#: book.translate.xml:36419 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror status</userinput>\n" @@ -53519,12 +54063,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36290 +#: book.translate.xml:36424 msgid "After a while, synchronization will finish." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36292 +#: book.translate.xml:36426 #, no-wrap msgid "" "GEOM_MIRROR: Device gm0: rebuilding provider ada0 finished.\n" @@ -53535,7 +54079,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36298 +#: book.translate.xml:36432 msgid "" "<filename>mirror/gm0</filename> now consists of the two disks " "<filename>ada0</filename> and <filename>ada1</filename>, and the contents " @@ -53544,7 +54088,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36309 +#: book.translate.xml:36443 msgid "" "If the system no longer boots, <acronym>BIOS</acronym> settings may have to " "be changed to boot from one of the new mirrored drives. Either mirror drive " @@ -53552,14 +54096,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36314 +#: book.translate.xml:36448 msgid "" "If the boot stops with this message, something is wrong with the mirror " "device:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36317 +#: book.translate.xml:36451 #, no-wrap msgid "" "Mounting from ufs:/dev/mirror/gm0s1a failed with error 19.\n" @@ -53586,7 +54130,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36339 +#: book.translate.xml:36473 msgid "" "Forgetting to load the <filename>geom_mirror.ko</filename> module in " "<filename>/boot/loader.conf</filename> can cause this problem. To fix it, " @@ -53595,7 +54139,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36346 +#: book.translate.xml:36480 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gmirror load</userinput>\n" @@ -53603,19 +54147,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36349 +#: book.translate.xml:36483 msgid "" "Edit <filename>/mnt/boot/loader.conf</filename>, adding a line to load the " "mirror module:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36354 +#: book.translate.xml:36488 msgid "Save the file and reboot." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36356 +#: book.translate.xml:36490 msgid "" "Other problems that cause <errorname>error 19</errorname> require more " "effort to fix. Although the system should boot from <filename>ada0</" @@ -53628,7 +54172,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36367 +#: book.translate.xml:36501 #, no-wrap msgid "" "Enter full pathname of shell or RETURN for /bin/sh:\n" @@ -53637,12 +54181,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36373 +#: book.translate.xml:36507 msgid "Recovering from Disk Failure" msgstr "自磁碟故障復原" #. (itstool) path: sect2/para -#: book.translate.xml:36375 +#: book.translate.xml:36509 msgid "" "The benefit of disk mirroring is that an individual disk can fail without " "causing the mirror to lose any data. In the above example, if " @@ -53651,7 +54195,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36381 +#: book.translate.xml:36515 msgid "" "To replace the failed drive, shut down the system and physically replace the " "failed drive with a new drive of equal or greater capacity. Manufacturers " @@ -53662,7 +54206,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36390 +#: book.translate.xml:36524 msgid "" "After the computer is powered back up, the mirror will be running in a " "<quote>degraded</quote> mode with only one drive. The mirror is told to " @@ -53670,13 +54214,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36395 +#: book.translate.xml:36529 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror forget gm0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36397 +#: book.translate.xml:36531 msgid "" "Any old metadata should be cleared from the replacement disk using the " "instructions in <xref linkend=\"geom-mirror-metadata\"/>. Then the " @@ -53685,13 +54229,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36403 +#: book.translate.xml:36537 #, no-wrap msgid "<prompt>#</prompt> <userinput>gmirror insert gm0 /dev/ada4</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36405 +#: book.translate.xml:36539 msgid "" "Resynchronization begins when the new drive is inserted into the mirror. " "This process of copying mirror data to a new drive can take a while. " @@ -53700,7 +54244,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36411 +#: book.translate.xml:36545 msgid "" "Progress can be monitored with <command>gmirror status</command>, which " "shows drives that are being synchronized and the percentage of completion. " @@ -53710,38 +54254,38 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:36424 +#: book.translate.xml:36558 msgid "<acronym>RAID</acronym>3 - Byte-level Striping with Dedicated Parity" msgstr "<acronym>RAID</acronym>3 - 位元級串連與獨立奇偶校驗" #. (itstool) path: authorgroup/author -#: book.translate.xml:36428 +#: book.translate.xml:36562 msgid "" "<personname> <firstname>Mark</firstname> <surname>Gladman</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:36436 +#: book.translate.xml:36570 msgid "" "<personname> <firstname>Daniel</firstname> <surname>Gerzo</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:36445 +#: book.translate.xml:36579 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Based on documentation by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36465 +#: book.translate.xml:36599 msgid "<primary>RAID3</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36469 +#: book.translate.xml:36603 msgid "" "<acronym>RAID</acronym>3 is a method used to combine several disk drives " "into a single volume with a dedicated parity disk. In a <acronym>RAID</" @@ -53757,7 +54301,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36484 +#: book.translate.xml:36618 msgid "" "At least 3 physical hard drives are required to build a <acronym>RAID</" "acronym>3 array. Each disk must be of the same size, since <acronym>I/O</" @@ -53767,26 +54311,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36491 +#: book.translate.xml:36625 msgid "" "This section demonstrates how to create a software <acronym>RAID</acronym>3 " "on a FreeBSD system." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:36495 +#: book.translate.xml:36629 msgid "" "While it is theoretically possible to boot from a <acronym>RAID</acronym>3 " "array on FreeBSD, that configuration is uncommon and is not advised." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36501 +#: book.translate.xml:36635 msgid "Creating a Dedicated <acronym>RAID</acronym>3 Array" msgstr "建立 Dedicated <acronym>RAID</acronym>3 陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36504 +#: book.translate.xml:36638 msgid "" "In FreeBSD, support for <acronym>RAID</acronym>3 is implemented by the " "<citerefentry><refentrytitle>graid3</refentrytitle><manvolnum>8</manvolnum></" @@ -53795,44 +54339,44 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36511 +#: book.translate.xml:36645 msgid "" "First, load the <filename>geom_raid3.ko</filename> kernel module by issuing " "one of the following commands:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36515 +#: book.translate.xml:36649 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid3 load</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36517 +#: book.translate.xml:36651 msgid "or:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36519 +#: book.translate.xml:36653 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload geom_raid3</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36523 +#: book.translate.xml:36657 msgid "" "Ensure that a suitable mount point exists. This command creates a new " "directory to use as the mount point:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36527 +#: book.translate.xml:36661 #, no-wrap msgid "<prompt>#</prompt> <userinput>mkdir <replaceable>/multimedia</replaceable></userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36531 +#: book.translate.xml:36665 msgid "" "Determine the device names for the disks which will be added to the array, " "and create the new <acronym>RAID</acronym>3 device. The final device listed " @@ -53843,7 +54387,7 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36542 +#: book.translate.xml:36676 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid3 label -v gr0 /dev/ada1 /dev/ada2 /dev/ada3</userinput>\n" @@ -53854,14 +54398,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36550 +#: book.translate.xml:36684 msgid "" "Partition the newly created <filename>gr0</filename> device and put a " "<acronym>UFS</acronym> file system on it:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36554 +#: book.translate.xml:36688 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gpart create -s GPT /dev/raid3/gr0</userinput>\n" @@ -53870,7 +54414,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36558 +#: book.translate.xml:36692 msgid "" "Many numbers will glide across the screen, and after a bit of time, the " "process will be complete. The volume has been created and is ready to be " @@ -53878,25 +54422,25 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36562 +#: book.translate.xml:36696 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /dev/raid3/gr0p1 /multimedia/</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36564 +#: book.translate.xml:36698 msgid "The <acronym>RAID</acronym>3 array is now ready to use." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36569 +#: book.translate.xml:36703 msgid "" "Additional configuration is needed to retain this setup across system " "reboots." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36574 +#: book.translate.xml:36708 msgid "" "The <filename>geom_raid3.ko</filename> module must be loaded before the " "array can be mounted. To automatically load the kernel module during system " @@ -53905,13 +54449,13 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36580 +#: book.translate.xml:36714 #, no-wrap msgid "geom_raid3_load=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36584 +#: book.translate.xml:36718 msgid "" "The following volume information must be added to <filename>/etc/fstab</" "filename> in order to automatically mount the array's file system during the " @@ -53919,32 +54463,32 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36589 +#: book.translate.xml:36723 #, no-wrap msgid "/dev/raid3/gr0p1\t/multimedia\tufs\trw\t2\t2" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:36597 +#: book.translate.xml:36731 msgid "Software <acronym>RAID</acronym> Devices" msgstr "軟體 <acronym>RAID</acronym> 裝置" #. (itstool) path: authorgroup/author -#: book.translate.xml:36600 +#: book.translate.xml:36734 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36613 +#: book.translate.xml:36747 msgid "" "<primary>Software RAID Devices</primary> <secondary>Hardware-assisted RAID</" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36618 +#: book.translate.xml:36752 msgid "" "Some motherboards and expansion cards add some simple hardware, usually just " "a <acronym>ROM</acronym>, that allows the computer to boot from a " @@ -53957,7 +54501,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36629 +#: book.translate.xml:36763 msgid "" "Several levels of <acronym>RAID</acronym> are supported, depending on the " "hardware in use. See <citerefentry><refentrytitle>graid</" @@ -53965,7 +54509,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36633 +#: book.translate.xml:36767 msgid "" "<citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> requires the <filename>geom_raid.ko</filename> kernel module, " @@ -53975,12 +54519,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36640 +#: book.translate.xml:36774 msgid "Creating an Array" msgstr "建立陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36642 +#: book.translate.xml:36776 msgid "" "Software <acronym>RAID</acronym> devices often have a menu that can be " "entered by pressing special keys when the computer is booting. The menu can " @@ -53990,7 +54534,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36648 +#: book.translate.xml:36782 msgid "" "<command>graid label</command> is used to create a new array. The " "motherboard used for this example has an Intel software <acronym>RAID</" @@ -54001,14 +54545,14 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:36658 +#: book.translate.xml:36792 msgid "" "Some space on the drives will be overwritten when they are made into a new " "array. Back up existing data first!" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36663 +#: book.translate.xml:36797 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid label Intel gm0 RAID1 ada0 ada1</userinput>\n" @@ -54024,13 +54568,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36674 +#: book.translate.xml:36808 msgid "A status check shows the new mirror is ready for use:" msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:36677 book.translate.xml:36883 +#: book.translate.xml:36811 book.translate.xml:37017 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status</userinput>\n" @@ -54040,7 +54584,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36682 +#: book.translate.xml:36816 msgid "" "The array device appears in <filename>/dev/raid/</filename>. The first array " "is called <filename>r0</filename>. Additional arrays, if present, will be " @@ -54048,7 +54592,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36688 +#: book.translate.xml:36822 msgid "" "The <acronym>BIOS</acronym> menu on some of these devices can create arrays " "with special characters in their names. To avoid problems with those special " @@ -54059,18 +54603,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36695 +#: book.translate.xml:36829 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl kern.geom.raid.name_format=1</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36699 +#: book.translate.xml:36833 msgid "Multiple Volumes" msgstr "多磁碟區" #. (itstool) path: sect2/para -#: book.translate.xml:36701 +#: book.translate.xml:36835 msgid "" "Some software <acronym>RAID</acronym> devices support more than one " "<emphasis>volume</emphasis> on an array. Volumes work like partitions, " @@ -54082,7 +54626,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36711 +#: book.translate.xml:36845 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid label -S 40G Intel gm0 RAID1 ada0 ada1</userinput>\n" @@ -54090,7 +54634,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36714 +#: book.translate.xml:36848 msgid "" "Volumes appear as additional <filename>r<replaceable>X</replaceable></" "filename> entries in <filename>/dev/raid/</filename>. An array with two " @@ -54098,7 +54642,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36720 +#: book.translate.xml:36854 msgid "" "See <citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for the number of volumes supported by different " @@ -54106,12 +54650,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36725 +#: book.translate.xml:36859 msgid "Converting a Single Drive to a Mirror" msgstr "轉換單一磁碟為鏡像" #. (itstool) path: sect2/para -#: book.translate.xml:36727 +#: book.translate.xml:36861 msgid "" "Under certain specific conditions, it is possible to convert an existing " "single drive to a <citerefentry><refentrytitle>graid</" @@ -54121,7 +54665,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:36735 +#: book.translate.xml:36869 msgid "" "The drive must be partitioned with the <acronym>MBR</acronym> partitioning " "scheme. <acronym>GPT</acronym> or other partitioning schemes with metadata " @@ -54131,7 +54675,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:36743 +#: book.translate.xml:36877 msgid "" "There must be enough unpartitioned and unused space at the end of the drive " "to hold the <citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</" @@ -54140,20 +54684,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36751 +#: book.translate.xml:36885 msgid "" "If the drive meets these requirements, start by making a full backup. Then " "create a single-drive mirror with that drive:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36755 +#: book.translate.xml:36889 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid label Intel gm0 RAID1 ada0 NONE</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36757 +#: book.translate.xml:36891 msgid "" "<citerefentry><refentrytitle>graid</refentrytitle><manvolnum>8</manvolnum></" "citerefentry> metadata was written to the end of the drive in the unused " @@ -54161,13 +54705,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36761 +#: book.translate.xml:36895 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid insert raid/r0 ada1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36763 +#: book.translate.xml:36897 msgid "" "Data from the original drive will immediately begin to be copied to the " "second drive. The mirror will operate in degraded status until the copy is " @@ -54175,12 +54719,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36769 +#: book.translate.xml:36903 msgid "Inserting New Drives into the Array" msgstr "插入新磁碟到陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36771 +#: book.translate.xml:36905 msgid "" "Drives can be inserted into an array as replacements for drives that have " "failed or are missing. If there are no failed or missing drives, the new " @@ -54190,7 +54734,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36778 +#: book.translate.xml:36912 msgid "" "In the example mirror array, data immediately begins to be copied to the " "newly-inserted drive. Any existing information on the new drive will be " @@ -54198,7 +54742,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36782 +#: book.translate.xml:36916 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid insert raid/r0 ada1</userinput>\n" @@ -54209,19 +54753,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36790 +#: book.translate.xml:36924 msgid "Removing Drives from the Array" msgstr "從陣列移除磁碟" #. (itstool) path: sect2/para -#: book.translate.xml:36792 +#: book.translate.xml:36926 msgid "" "Individual drives can be permanently removed from a from an array and their " "metadata erased:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36795 +#: book.translate.xml:36929 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid remove raid/r0 ada1</userinput>\n" @@ -54231,30 +54775,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36802 +#: book.translate.xml:36936 msgid "Stopping the Array" msgstr "停止陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36804 +#: book.translate.xml:36938 msgid "" "An array can be stopped without removing metadata from the drives. The array " "will be restarted when the system is booted." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36808 +#: book.translate.xml:36942 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid stop raid/r0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36812 +#: book.translate.xml:36946 msgid "Checking Array Status" msgstr "檢查陣列狀態" #. (itstool) path: sect2/para -#: book.translate.xml:36814 +#: book.translate.xml:36948 msgid "" "Array status can be checked at any time. After a drive was added to the " "mirror in the example above, data is being copied from the original drive to " @@ -54262,7 +54806,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36818 +#: book.translate.xml:36952 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status</userinput>\n" @@ -54272,7 +54816,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:36823 +#: book.translate.xml:36957 msgid "" "Some types of arrays, like <literal>RAID0</literal> or <literal>CONCAT</" "literal>, may not be shown in the status report if disks have failed. To see " @@ -54280,7 +54824,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:36828 +#: book.translate.xml:36962 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>graid status -ga</userinput>\n" @@ -54289,12 +54833,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36834 +#: book.translate.xml:36968 msgid "Deleting Arrays" msgstr "刪除陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36836 +#: book.translate.xml:36970 msgid "" "Arrays are destroyed by deleting all of the volumes from them. When the last " "volume present is deleted, the array is stopped and metadata is removed from " @@ -54303,18 +54847,18 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:36840 book.translate.xml:36890 +#: book.translate.xml:36974 book.translate.xml:37024 #, no-wrap msgid "<prompt>#</prompt> <userinput>graid delete raid/r0</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:36844 +#: book.translate.xml:36978 msgid "Deleting Unexpected Arrays" msgstr "刪除預期之外的陣列" #. (itstool) path: sect2/para -#: book.translate.xml:36846 +#: book.translate.xml:36980 msgid "" "Drives may unexpectedly contain <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> metadata, either from " @@ -54325,14 +54869,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36854 +#: book.translate.xml:36988 msgid "" "Boot the system. At the boot menu, select <literal>2</literal> for the " "loader prompt. Enter:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:36857 +#: book.translate.xml:36991 #, no-wrap msgid "" "OK <userinput>set kern.geom.raid.enable=0</userinput>\n" @@ -54340,19 +54884,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36860 +#: book.translate.xml:36994 msgid "" "The system will boot with <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> disabled." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36865 +#: book.translate.xml:36999 msgid "Back up all data on the affected drive." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36869 +#: book.translate.xml:37003 msgid "" "As a workaround, <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> array detection can be " @@ -54360,18 +54904,18 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:36872 +#: book.translate.xml:37006 #, no-wrap msgid "kern.geom.raid.enable=0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36874 +#: book.translate.xml:37008 msgid "to <filename>/boot/loader.conf</filename>." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36876 +#: book.translate.xml:37010 msgid "" "To permanently remove the <citerefentry><refentrytitle>graid</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> metadata from the " @@ -54381,19 +54925,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36888 +#: book.translate.xml:37022 msgid "Delete the volume by name:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36892 +#: book.translate.xml:37026 msgid "" "If there is more than one volume shown, repeat the process for each volume. " "After the last array has been deleted, the volume will be destroyed." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:36896 +#: book.translate.xml:37030 msgid "" "Reboot and verify data, restoring from backup if necessary. After the " "metadata has been removed, the <literal>kern.geom.raid.enable=0</literal> " @@ -54401,12 +54945,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:36907 +#: book.translate.xml:37041 msgid "<acronym>GEOM</acronym> Gate Network" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36909 +#: book.translate.xml:37043 msgid "" "<acronym>GEOM</acronym> provides a simple mechanism for providing remote " "access to devices such as disks, <acronym>CD</acronym>s, and file systems " @@ -54419,7 +54963,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36919 +#: book.translate.xml:37053 msgid "" "Similar to <acronym>NFS</acronym>, which is discussed in <xref linkend=" "\"network-nfs\"/>, <application>ggated</application> is configured using an " @@ -54431,26 +54975,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:36929 +#: book.translate.xml:37063 #, no-wrap msgid "192.168.1.5 RW /dev/da0s4d" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36931 +#: book.translate.xml:37065 msgid "" "Before exporting the device, ensure it is not currently mounted. Then, start " "<application>ggated</application>:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:36934 +#: book.translate.xml:37068 #, no-wrap msgid "<prompt>#</prompt> <userinput>ggated</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36936 +#: book.translate.xml:37070 msgid "" "Several options are available for specifying an alternate listening port or " "changing the default location of the exports file. Refer to " @@ -54459,7 +55003,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36940 +#: book.translate.xml:37074 msgid "" "To access the exported device on the client machine, first use " "<command>ggatec</command> to specify the <acronym>IP</acronym> address of " @@ -54472,7 +55016,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:36951 +#: book.translate.xml:37085 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ggatec create -o rw 192.168.1.1 /dev/da0s4d</userinput>\n" @@ -54481,7 +55025,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36955 +#: book.translate.xml:37089 msgid "" "The device on the server may now be accessed through <filename>/mnt</" "filename> on the client. For more details about <command>ggatec</command> " @@ -54490,7 +55034,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:36961 +#: book.translate.xml:37095 msgid "" "The mount will fail if the device is currently mounted on either the server " "or any other client on the network. If simultaneous access is needed to " @@ -54498,24 +55042,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36967 +#: book.translate.xml:37101 msgid "" "When the device is no longer needed, unmount it with <command>umount</" "command> so that the resource is available to other clients." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:36973 +#: book.translate.xml:37107 msgid "Labeling Disk Devices" msgstr "磁碟裝置標籤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:36978 +#: book.translate.xml:37112 msgid "<primary>Disk Labels</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36982 +#: book.translate.xml:37116 msgid "" "During system initialization, the FreeBSD kernel creates device nodes as " "devices are found. This method of probing for devices raises some issues. " @@ -54528,7 +55072,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:36994 +#: book.translate.xml:37128 msgid "" "One solution is to chain <acronym>SCSI</acronym> devices in order so a new " "device added to the <acronym>SCSI</acronym> card will be issued unused " @@ -54542,7 +55086,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37006 +#: book.translate.xml:37140 msgid "" "A better solution is to use <command>glabel</command> to label the disk " "devices and use the labels in <filename>/etc/fstab</filename>. Because " @@ -54553,7 +55097,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37016 +#: book.translate.xml:37150 msgid "" "<command>glabel</command> can create both transient and permanent labels. " "Only permanent labels are consistent across reboots. Refer to " @@ -54562,12 +55106,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37023 +#: book.translate.xml:37157 msgid "Label Types and Examples" msgstr "標籤類型與範例" #. (itstool) path: sect2/para -#: book.translate.xml:37025 +#: book.translate.xml:37159 msgid "" "Permanent labels can be a generic or a file system label. Permanent file " "system labels can be created with <citerefentry><refentrytitle>tunefs</" @@ -54582,7 +55126,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37036 +#: book.translate.xml:37170 msgid "" "Temporary labels are destroyed at the next reboot. These labels are created " "in <filename>/dev/label</filename> and are suited to experimentation. A " @@ -54590,51 +55134,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37044 +#: book.translate.xml:37178 msgid "" "To create a permanent label for a <acronym>UFS</acronym>2 file system " "without destroying any data, issue the following command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:37048 +#: book.translate.xml:37182 #, no-wrap msgid "<prompt>#</prompt> <userinput>tunefs -L <replaceable>home</replaceable> <replaceable>/dev/da3</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37050 +#: book.translate.xml:37184 msgid "" "A label should now exist in <filename>/dev/ufs</filename> which may be added " "to <filename>/etc/fstab</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:37053 +#: book.translate.xml:37187 #, no-wrap msgid "/dev/ufs/home\t\t/home ufs rw 2 2" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37056 +#: book.translate.xml:37190 msgid "" "The file system must not be mounted while attempting to run <command>tunefs</" "command>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37060 +#: book.translate.xml:37194 msgid "Now the file system may be mounted:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:37062 +#: book.translate.xml:37196 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount /home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37064 +#: book.translate.xml:37198 msgid "" "From this point on, so long as the <filename>geom_label.ko</filename> kernel " "module is loaded at boot with <filename>/boot/loader.conf</filename> or the " @@ -54643,7 +55187,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37071 +#: book.translate.xml:37205 msgid "" "File systems may also be created with a default label by using the <option>-" "L</option> flag with <command>newfs</command>. Refer to " @@ -54652,28 +55196,28 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37076 +#: book.translate.xml:37210 msgid "The following command can be used to destroy the label:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:37079 +#: book.translate.xml:37213 #, no-wrap msgid "<prompt>#</prompt> <userinput>glabel destroy home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37081 +#: book.translate.xml:37215 msgid "The following example shows how to label the partitions of a boot disk." msgstr "" #. (itstool) path: example/title -#: book.translate.xml:37085 +#: book.translate.xml:37219 msgid "Labeling Partitions on the Boot Disk" msgstr "在開機磁碟標記分割區標籤" #. (itstool) path: example/para -#: book.translate.xml:37087 +#: book.translate.xml:37221 msgid "" "By permanently labeling the partitions on the boot disk, the system should " "be able to continue to boot normally, even if the disk is moved to another " @@ -54686,7 +55230,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:37101 +#: book.translate.xml:37235 msgid "" "Reboot the system, and at the <citerefentry><refentrytitle>loader</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> prompt, press " @@ -54695,7 +55239,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:37105 +#: book.translate.xml:37239 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>glabel label rootfs /dev/ad0s1a</userinput>\n" @@ -54712,7 +55256,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:37117 +#: book.translate.xml:37251 msgid "" "The system will continue with multi-user boot. After the boot completes, " "edit <filename>/etc/fstab</filename> and replace the conventional device " @@ -54721,7 +55265,7 @@ msgid "" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:37123 +#: book.translate.xml:37257 #, no-wrap msgid "" "# Device Mountpoint FStype Options Dump Pass#\n" @@ -54733,14 +55277,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:37130 +#: book.translate.xml:37264 msgid "" "The system can now be rebooted. If everything went well, it will come up " "normally and <command>mount</command> will show:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:37134 +#: book.translate.xml:37268 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -54752,7 +55296,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37142 +#: book.translate.xml:37276 msgid "" "The <citerefentry><refentrytitle>glabel</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> class supports a label type for <acronym>UFS</" @@ -54765,7 +55309,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:37153 +#: book.translate.xml:37287 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>glabel status</userinput>\n" @@ -54775,7 +55319,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37158 +#: book.translate.xml:37292 msgid "" "In the above example, <filename>ad4s1d</filename> represents <filename>/var</" "filename>, while <filename>ad4s1f</filename> represents <filename>/usr</" @@ -54785,7 +55329,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:37166 +#: book.translate.xml:37300 #, no-wrap msgid "" "/dev/ufsid/486b6fc38d330916 /var ufs rw 2 2\n" @@ -54793,7 +55337,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37169 +#: book.translate.xml:37303 msgid "" "Any partitions with <literal>ufsid</literal> labels can be mounted in this " "way, eliminating the need to manually create permanent labels, while still " @@ -54801,17 +55345,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:37177 +#: book.translate.xml:37311 msgid "UFS Journaling Through <acronym>GEOM</acronym>" msgstr "UFS Journaling 透過 <acronym>GEOM</acronym>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:37182 +#: book.translate.xml:37316 msgid "<primary>Journaling</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37186 +#: book.translate.xml:37320 msgid "" "Support for journals on <acronym>UFS</acronym> file systems is available on " "FreeBSD. The implementation is provided through the <acronym>GEOM</acronym> " @@ -54822,7 +55366,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37195 +#: book.translate.xml:37329 msgid "" "Journaling stores a log of file system transactions, such as changes that " "make up a complete disk write operation, before meta-data and file writes " @@ -54831,7 +55375,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37201 +#: book.translate.xml:37335 msgid "" "This method provides another mechanism to protect against data loss and " "inconsistencies of the file system. Unlike Soft Updates, which tracks and " @@ -54843,7 +55387,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37210 +#: book.translate.xml:37344 msgid "" "The <filename>GENERIC</filename> kernel provides support for " "<command>gjournal</command>. To automatically load the " @@ -54852,26 +55396,26 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:37216 +#: book.translate.xml:37350 #, no-wrap msgid "geom_journal_load=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37218 +#: book.translate.xml:37352 msgid "" "If a custom kernel is used, ensure the following line is in the kernel " "configuration file:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:37221 +#: book.translate.xml:37355 #, no-wrap msgid "options\tGEOM_JOURNAL" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37223 +#: book.translate.xml:37357 msgid "" "Once the module is loaded, a journal can be created on a new file system " "using the following steps. In this example, <filename>da4</filename> is a " @@ -54879,7 +55423,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:37228 +#: book.translate.xml:37362 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>gjournal load</userinput>\n" @@ -54887,21 +55431,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37231 +#: book.translate.xml:37365 msgid "" "This will load the module and create a <filename>/dev/da4.journal</filename> " "device node on <filename>/dev/da4</filename>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37235 +#: book.translate.xml:37369 msgid "" "A <acronym>UFS</acronym> file system may now be created on the journaled " "device, then mounted on an existing mount point:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:37239 +#: book.translate.xml:37373 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>newfs -O 2 -J /dev/<replaceable>da4</replaceable>.journal</userinput>\n" @@ -54909,7 +55453,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37243 +#: book.translate.xml:37377 msgid "" "In the case of several slices, a journal will be created for each individual " "slice. For instance, if <filename>ad4s1</filename> and <filename>ad4s2</" @@ -54918,7 +55462,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37251 +#: book.translate.xml:37385 msgid "" "Journaling may also be enabled on current file systems by using " "<command>tunefs</command>. However, <emphasis>always</emphasis> make a " @@ -54932,7 +55476,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37261 +#: book.translate.xml:37395 msgid "" "It is possible to journal the boot disk of a FreeBSD system. Refer to the " "article <link xlink:href=\"@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/" @@ -54941,33 +55485,33 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:37277 +#: book.translate.xml:37411 msgid "The Z File System (<acronym>ZFS</acronym>)" msgstr "Z 檔案系統 (<acronym>ZFS</acronym>)" #. (itstool) path: authorgroup/author -#: book.translate.xml:37287 +#: book.translate.xml:37421 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:37294 +#: book.translate.xml:37428 msgid "" "<personname> <firstname>Benedict</firstname> <surname>Reuschling</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:37301 +#: book.translate.xml:37435 msgid "" "<personname> <firstname>Warren</firstname> <surname>Block</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: chapter/para -#: book.translate.xml:37311 +#: book.translate.xml:37445 msgid "" "The <emphasis>Z File System</emphasis>, or <acronym>ZFS</acronym>, is an " "advanced file system designed to overcome many of the major problems found " @@ -54977,7 +55521,7 @@ msgstr "" "以往設計中發現的主要問題的一個先進的檔案系統。" #. (itstool) path: chapter/para -#: book.translate.xml:37316 +#: book.translate.xml:37450 msgid "" "Originally developed at <trademark>Sun</trademark>, ongoing open source " "<acronym>ZFS</acronym> development has moved to the <link xlink:href=" @@ -54988,12 +55532,12 @@ msgstr "" "link>。" #. (itstool) path: chapter/para -#: book.translate.xml:37319 +#: book.translate.xml:37453 msgid "<acronym>ZFS</acronym> has three major design goals:" msgstr "<acronym>ZFS</acronym> 的設計目標主要有三個:" #. (itstool) path: listitem/para -#: book.translate.xml:37323 +#: book.translate.xml:37457 msgid "" "Data integrity: All data includes a <link linkend=\"zfs-term-checksum" "\">checksum</link> of the data. When data is written, the checksum is " @@ -55008,7 +55552,7 @@ msgstr "" "資料備援 (Data redundancy),<acronym>ZFS</acronym> 會嘗試自動修正錯誤。" #. (itstool) path: listitem/para -#: book.translate.xml:37334 +#: book.translate.xml:37468 msgid "" "Pooled storage: physical storage devices are added to a pool, and storage " "space is allocated from that shared pool. Space is available to all file " @@ -55019,7 +55563,7 @@ msgstr "" "空間。" #. (itstool) path: listitem/para -#: book.translate.xml:37341 +#: book.translate.xml:37475 msgid "" "Performance: multiple caching mechanisms provide increased performance. " "<link linkend=\"zfs-term-arc\">ARC</link> is an advanced memory-based read " @@ -55033,19 +55577,19 @@ msgstr "" "使用 <link linkend=\"zfs-term-zil\">ZIL</link>。" #. (itstool) path: chapter/para -#: book.translate.xml:37351 +#: book.translate.xml:37485 msgid "" "A complete list of features and terminology is shown in <xref linkend=\"zfs-" "term\"/>." msgstr "完整的功能清單與術語在 <xref linkend=\"zfs-term\"/> 中有詳述。" #. (itstool) path: sect1/title -#: book.translate.xml:37355 +#: book.translate.xml:37489 msgid "What Makes <acronym>ZFS</acronym> Different" msgstr "什麼使 <acronym>ZFS</acronym> 與眾不同" #. (itstool) path: sect1/para -#: book.translate.xml:37357 +#: book.translate.xml:37491 msgid "" "<acronym>ZFS</acronym> is significantly different from any previous file " "system because it is more than just a file system. Combining the " @@ -55089,12 +55633,12 @@ msgstr "" "案系統,對建立數個不同檔案系統與資料集 (Dataset) 時有許多的好處。" #. (itstool) path: sect1/title -#: book.translate.xml:37388 +#: book.translate.xml:37522 msgid "Quick Start Guide" msgstr "快速入門指南" #. (itstool) path: sect1/para -#: book.translate.xml:37390 +#: book.translate.xml:37524 msgid "" "There is a startup mechanism that allows FreeBSD to mount <acronym>ZFS</" "acronym> pools during system initialization. To enable it, add this line to " @@ -55104,24 +55648,24 @@ msgstr "" "存池。要開啟這個功能,可加入此行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:37395 +#: book.translate.xml:37529 #, no-wrap msgid "zfs_enable=\"YES\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37397 +#: book.translate.xml:37531 msgid "Then start the service:" msgstr "然後啟動服務:" #. (itstool) path: sect1/screen -#: book.translate.xml:37399 +#: book.translate.xml:37533 #, no-wrap msgid "<prompt>#</prompt> <userinput>service zfs start</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:37401 +#: book.translate.xml:37535 msgid "" "The examples in this section assume three <acronym>SCSI</acronym> disks with " "the device names <filename><replaceable>da0</replaceable></filename>, " @@ -55138,28 +55682,28 @@ msgstr "" "filename> 。" #. (itstool) path: sect2/title -#: book.translate.xml:37411 +#: book.translate.xml:37545 msgid "Single Disk Pool" msgstr "單磁碟儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:37413 +#: book.translate.xml:37547 msgid "To create a simple, non-redundant pool using a single disk device:" msgstr "要使用一個磁碟裝置建立一個簡單、無備援的儲存池可:" #. (itstool) path: sect2/screen -#: book.translate.xml:37416 +#: book.translate.xml:37550 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool create <replaceable>example</replaceable> <replaceable>/dev/da0</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37418 +#: book.translate.xml:37552 msgid "To view the new pool, review the output of <command>df</command>:" msgstr "要檢視這個新的儲存池,可查看 <command>df</command> 的輸出結果:" #. (itstool) path: sect2/screen -#: book.translate.xml:37421 +#: book.translate.xml:37555 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df</userinput>\n" @@ -55171,7 +55715,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37428 +#: book.translate.xml:37562 msgid "" "This output shows that the <literal>example</literal> pool has been created " "and mounted. It is now accessible as a file system. Files can be created on " @@ -55181,7 +55725,7 @@ msgstr "" "以作為檔案系統存取,可以在上面建立檔案且使用者可以瀏覽:" #. (itstool) path: sect2/screen -#: book.translate.xml:37433 +#: book.translate.xml:37567 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /example</userinput>\n" @@ -55195,7 +55739,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37442 +#: book.translate.xml:37576 msgid "" "However, this pool is not taking advantage of any <acronym>ZFS</acronym> " "features. To create a dataset on this pool with compression enabled:" @@ -55204,7 +55748,7 @@ msgstr "" "上建立一個有開啟壓縮功能的資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:37446 +#: book.translate.xml:37580 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create example/compressed</userinput>\n" @@ -55212,7 +55756,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37449 +#: book.translate.xml:37583 msgid "" "The <literal>example/compressed</literal> dataset is now a <acronym>ZFS</" "acronym> compressed file system. Try copying some large files to <filename>/" @@ -55223,18 +55767,18 @@ msgstr "" "compressed</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:37454 +#: book.translate.xml:37588 msgid "Compression can be disabled with:" msgstr "壓縮功能也可以使用以下指令關閉:" #. (itstool) path: sect2/screen -#: book.translate.xml:37456 +#: book.translate.xml:37590 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set compression=off example/compressed</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37458 +#: book.translate.xml:37592 msgid "" "To unmount a file system, use <command>zfs umount</command> and then verify " "with <command>df</command>:" @@ -55243,7 +55787,7 @@ msgstr "" "command> 確認:" #. (itstool) path: sect2/screen -#: book.translate.xml:37462 +#: book.translate.xml:37596 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs umount example/compressed</userinput>\n" @@ -55256,7 +55800,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37470 +#: book.translate.xml:37604 msgid "" "To re-mount the file system to make it accessible again, use <command>zfs " "mount</command> and verify with <command>df</command>:" @@ -55265,7 +55809,7 @@ msgstr "" "<command>df</command> 檢查:" #. (itstool) path: sect2/screen -#: book.translate.xml:37474 +#: book.translate.xml:37608 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs mount example/compressed</userinput>\n" @@ -55279,14 +55823,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37483 +#: book.translate.xml:37617 msgid "" "The pool and file system may also be observed by viewing the output from " "<command>mount</command>:" msgstr "儲存池與檔案系統也可以從 <command>mount</command> 的結果查詢到:" #. (itstool) path: sect2/screen -#: book.translate.xml:37486 +#: book.translate.xml:37620 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -55298,7 +55842,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37493 +#: book.translate.xml:37627 msgid "" "After creation, <acronym>ZFS</acronym> datasets can be used like any file " "systems. However, many other features are available which can be set on a " @@ -55311,7 +55855,7 @@ msgstr "" "<literal>data</literal>,要設定每個資料區塊 (Data block) 要保留兩份備份:" #. (itstool) path: sect2/screen -#: book.translate.xml:37501 +#: book.translate.xml:37635 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create example/data</userinput>\n" @@ -55319,14 +55863,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37504 +#: book.translate.xml:37638 msgid "" "It is now possible to see the data and space utilization by issuing " "<command>df</command>:" msgstr "現在,可以使用 <command>df</command> 指令來查看資料與空間的使用率:" #. (itstool) path: sect2/screen -#: book.translate.xml:37507 +#: book.translate.xml:37641 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>df</userinput>\n" @@ -55340,7 +55884,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37516 +#: book.translate.xml:37650 msgid "" "Notice that each file system on the pool has the same amount of available " "space. This is the reason for using <command>df</command> in these examples, " @@ -55355,14 +55899,14 @@ msgstr "" "(Volume) 與分割區 (Partition) 的概念,且允許多個檔案系統共用相同的儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:37524 +#: book.translate.xml:37658 msgid "" "To destroy the file systems and then destroy the pool as it is no longer " "needed:" msgstr "不需要使用時可摧毀檔案系統後再摧毀儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37527 +#: book.translate.xml:37661 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs destroy example/compressed</userinput>\n" @@ -55371,12 +55915,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37533 +#: book.translate.xml:37667 msgid "RAID-Z" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37535 +#: book.translate.xml:37669 msgid "" "Disks fail. One method of avoiding data loss from disk failure is to " "implement <acronym>RAID</acronym>. <acronym>ZFS</acronym> supports this " @@ -55389,7 +55933,7 @@ msgstr "" "多的可用空間。" #. (itstool) path: sect2/para -#: book.translate.xml:37542 +#: book.translate.xml:37676 msgid "" "This example creates a <acronym>RAID-Z</acronym> pool, specifying the disks " "to add to the pool:" @@ -55398,13 +55942,13 @@ msgstr "" "磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:37545 +#: book.translate.xml:37679 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool create storage raidz da0 da1 da2</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:37548 +#: book.translate.xml:37682 msgid "" "<trademark>Sun</trademark> recommends that the number of devices used in a " "<acronym>RAID</acronym>-Z configuration be between three and nine. For " @@ -55423,7 +55967,7 @@ msgstr "" "citerefentry> 取得更多詳細資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:37558 +#: book.translate.xml:37692 msgid "" "The previous example created the <literal>storage</literal> zpool. This " "example makes a new file system called <literal>home</literal> in that pool:" @@ -55432,19 +55976,19 @@ msgstr "" "會在該儲存池中建立一個新的檔案系統,名稱為 <literal>home</literal>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37563 +#: book.translate.xml:37697 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs create storage/home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37565 +#: book.translate.xml:37699 msgid "" "Compression and keeping extra copies of directories and files can be enabled:" msgstr "可以設定開啟壓縮及保留目錄及檔案額外備份的功能:" #. (itstool) path: sect2/screen -#: book.translate.xml:37568 +#: book.translate.xml:37702 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs set copies=2 storage/home</userinput>\n" @@ -55452,7 +55996,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37571 +#: book.translate.xml:37705 msgid "" "To make this the new home directory for users, copy the user data to this " "directory and create the appropriate symbolic links:" @@ -55461,7 +56005,7 @@ msgstr "" "符號連結 (Symbolic link):" #. (itstool) path: sect2/screen -#: book.translate.xml:37575 +#: book.translate.xml:37709 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp -rp /home/* /storage/home</userinput>\n" @@ -55471,7 +56015,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37580 +#: book.translate.xml:37714 msgid "" "Users data is now stored on the freshly-created <filename>/storage/home</" "filename>. Test by adding a new user and logging in as that user." @@ -55480,25 +56024,25 @@ msgstr "" "新使用者並登入該使用者來測試。" #. (itstool) path: sect2/para -#: book.translate.xml:37584 +#: book.translate.xml:37718 msgid "Try creating a file system snapshot which can be rolled back later:" msgstr "試著建立檔案系統快照 (Snapshot),稍後可用來還原 (Rollback):" #. (itstool) path: sect2/screen -#: book.translate.xml:37587 +#: book.translate.xml:37721 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs snapshot storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37589 +#: book.translate.xml:37723 msgid "" "Snapshots can only be made of a full file system, not a single directory or " "file." msgstr "快照只可以使用整個檔案系統製作,無法使用各別目錄或檔案。" #. (itstool) path: sect2/para -#: book.translate.xml:37592 +#: book.translate.xml:37726 msgid "" "The <literal>@</literal> character is a delimiter between the file system " "name or the volume name. If an important directory has been accidentally " @@ -55510,13 +56054,13 @@ msgstr "" "存在時的快照 (Snapshot):" #. (itstool) path: sect2/screen -#: book.translate.xml:37598 +#: book.translate.xml:37732 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs rollback storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37600 +#: book.translate.xml:37734 msgid "" "To list all available snapshots, run <command>ls</command> in the file " "system's <filename>.zfs/snapshot</filename> directory. For example, to see " @@ -55526,13 +56070,13 @@ msgstr "" "執行 <command>ls</command>,舉例來說,要查看先前已做的快照:" #. (itstool) path: sect2/screen -#: book.translate.xml:37605 +#: book.translate.xml:37739 #, no-wrap msgid "<prompt>#</prompt> <userinput>ls /storage/home/.zfs/snapshot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37607 +#: book.translate.xml:37741 msgid "" "It is possible to write a script to perform regular snapshots on user data. " "However, over time, snapshots can consume a great deal of disk space. The " @@ -55542,13 +56086,13 @@ msgstr "" "的磁碟空間。先前的快照可以使用指令移除:" #. (itstool) path: sect2/screen -#: book.translate.xml:37612 +#: book.translate.xml:37746 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs destroy storage/home@08-30-08</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37614 +#: book.translate.xml:37748 msgid "" "After testing, <filename>/storage/home</filename> can be made the real " "<filename>/home</filename> using this command:" @@ -55557,13 +56101,13 @@ msgstr "" "home</filename> 使用此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:37618 +#: book.translate.xml:37752 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set mountpoint=/home storage/home</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37620 +#: book.translate.xml:37754 msgid "" "Run <command>df</command> and <command>mount</command> to confirm that the " "system now treats the file system as the real <filename>/home</filename>:" @@ -55572,7 +56116,7 @@ msgstr "" "檔案系統做為真正的 <filename>/home</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37624 +#: book.translate.xml:37758 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount</userinput>\n" @@ -55591,7 +56135,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37638 +#: book.translate.xml:37772 msgid "" "This completes the <acronym>RAID-Z</acronym> configuration. Daily status " "updates about the file systems created can be generated as part of the " @@ -55605,18 +56149,18 @@ msgstr "" "行。加入此行到 <filename>/etc/periodic.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:37644 +#: book.translate.xml:37778 #, no-wrap msgid "daily_status_zfs_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:37648 +#: book.translate.xml:37782 msgid "Recovering <acronym>RAID-Z</acronym>" msgstr "復原 <acronym>RAID-Z</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:37650 +#: book.translate.xml:37784 msgid "" "Every software <acronym>RAID</acronym> has a method of monitoring its " "<literal>state</literal>. The status of <acronym>RAID-Z</acronym> devices " @@ -55626,13 +56170,13 @@ msgstr "" "方式,而 <acronym>RAID-Z</acronym> 裝置的狀態可以使用這個指令來查看:" #. (itstool) path: sect2/screen -#: book.translate.xml:37655 +#: book.translate.xml:37789 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool status -x</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37657 +#: book.translate.xml:37791 msgid "" "If all pools are <link linkend=\"zfs-term-online\">Online</link> and " "everything is normal, the message shows:" @@ -55641,13 +56185,13 @@ msgstr "" "常,則訊息會顯示:" #. (itstool) path: sect2/screen -#: book.translate.xml:37661 +#: book.translate.xml:37795 #, no-wrap msgid "all pools are healthy" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37663 +#: book.translate.xml:37797 msgid "" "If there is an issue, perhaps a disk is in the <link linkend=\"zfs-term-" "offline\">Offline</link> state, the pool state will look similar to:" @@ -55656,7 +56200,7 @@ msgstr "" "\">Offline</link>) 的狀態,此時儲存池的狀態會是:" #. (itstool) path: sect2/screen -#: book.translate.xml:37667 +#: book.translate.xml:37801 #, no-wrap msgid "" " pool: storage\n" @@ -55680,20 +56224,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37686 +#: book.translate.xml:37820 msgid "" "This indicates that the device was previously taken offline by the " "administrator with this command:" msgstr "這代表著裝置在之前被管理者使用此指令拿下線:" #. (itstool) path: sect2/screen -#: book.translate.xml:37689 +#: book.translate.xml:37823 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool offline storage da1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37691 +#: book.translate.xml:37825 msgid "" "Now the system can be powered down to replace <filename>da1</filename>. When " "the system is back online, the failed disk can replaced in the pool:" @@ -55702,13 +56246,13 @@ msgstr "" "掉儲存池中故障的磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:37695 +#: book.translate.xml:37829 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool replace storage da1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37697 +#: book.translate.xml:37831 msgid "" "From here, the status may be checked again, this time without <option>-x</" "option> so that all pools are shown:" @@ -55717,7 +56261,7 @@ msgstr "" "儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37701 +#: book.translate.xml:37835 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status storage</userinput>\n" @@ -55737,17 +56281,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37716 +#: book.translate.xml:37850 msgid "In this example, everything is normal." msgstr "在這個例子中,所有的磁碟均已正常運作。" #. (itstool) path: sect2/title -#: book.translate.xml:37720 +#: book.translate.xml:37854 msgid "Data Verification" msgstr "資料檢驗" #. (itstool) path: sect2/para -#: book.translate.xml:37722 +#: book.translate.xml:37856 msgid "" "<acronym>ZFS</acronym> uses checksums to verify the integrity of stored " "data. These are enabled automatically upon creation of file systems." @@ -55756,7 +56300,7 @@ msgstr "" "會在建立檔案系統時便自動開啟。" #. (itstool) path: warning/para -#: book.translate.xml:37727 +#: book.translate.xml:37861 msgid "" "Checksums can be disabled, but it is <emphasis>not</emphasis> recommended! " "Checksums take very little storage space and provide data integrity. Many " @@ -55769,7 +56313,7 @@ msgstr "" "acronym> 功能無法正常運作,且關閉校驗碼對並不會明顯的改善效能。" #. (itstool) path: sect2/para -#: book.translate.xml:37735 +#: book.translate.xml:37869 msgid "" "Checksum verification is known as <emphasis>scrubbing</emphasis>. Verify the " "data integrity of the <literal>storage</literal> pool with this command:" @@ -55778,13 +56322,13 @@ msgstr "" "來檢驗 <literal>storage</literal> 儲存池的資料完整性:" #. (itstool) path: sect2/screen -#: book.translate.xml:37739 +#: book.translate.xml:37873 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool scrub storage</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37741 +#: book.translate.xml:37875 msgid "" "The duration of a scrub depends on the amount of data stored. Larger amounts " "of data will take proportionally longer to verify. Scrubs are very " @@ -55797,7 +56341,7 @@ msgstr "" "作。在清潔完成之後,可以使用 <command>status</command> 來查看狀態:" #. (itstool) path: sect2/screen -#: book.translate.xml:37748 +#: book.translate.xml:37882 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status storage</userinput>\n" @@ -55817,7 +56361,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37763 +#: book.translate.xml:37897 msgid "" "The completion date of the last scrub operation is displayed to help track " "when another scrub is required. Routine scrubs help protect data from silent " @@ -55827,7 +56371,7 @@ msgstr "" "護資料不會默默損壞且確保儲存池的完整性。" #. (itstool) path: sect2/para -#: book.translate.xml:37768 +#: book.translate.xml:37902 msgid "" "Refer to <citerefentry><refentrytitle>zfs</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>zpool</" @@ -55840,12 +56384,12 @@ msgstr "" "<acronym>ZFS</acronym> 選項。" #. (itstool) path: sect1/title -#: book.translate.xml:37774 +#: book.translate.xml:37908 msgid "<command>zpool</command> Administration" msgstr "<command>zpool</command> 管理" #. (itstool) path: sect1/para -#: book.translate.xml:37776 +#: book.translate.xml:37910 msgid "" "<acronym>ZFS</acronym> administration is divided between two main utilities. " "The <command>zpool</command> utility controls the operation of the pool and " @@ -55862,12 +56406,12 @@ msgstr "" "linkend=\"zfs-term-volume\">Volume</link>) 的資料集。" #. (itstool) path: sect2/title -#: book.translate.xml:37786 +#: book.translate.xml:37920 msgid "Creating and Destroying Storage Pools" msgstr "建立與摧毀儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:37788 +#: book.translate.xml:37922 msgid "" "Creating a <acronym>ZFS</acronym> storage pool (<emphasis>zpool</emphasis>) " "involves making a number of decisions that are relatively permanent because " @@ -55892,12 +56436,12 @@ msgstr "" "建立之後便無法更改,若要要更改,則必須先備份資料,把儲存池摧毀後再重新建立。" #. (itstool) path: sect2/para -#: book.translate.xml:37805 +#: book.translate.xml:37939 msgid "Create a simple mirror pool:" msgstr "建立一個簡單的鏡像儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37807 +#: book.translate.xml:37941 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>mypool</replaceable> mirror <replaceable>/dev/ada1</replaceable> <replaceable>/dev/ada2</replaceable></userinput>\n" @@ -55917,7 +56461,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37822 +#: book.translate.xml:37956 msgid "" "Multiple vdevs can be created at once. Specify multiple groups of disks " "separated by the vdev type keyword, <literal>mirror</literal> in this " @@ -55927,7 +56471,7 @@ msgstr "" "<literal>mirror</literal>:" #. (itstool) path: sect2/screen -#: book.translate.xml:37826 +#: book.translate.xml:37960 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>mypool</replaceable> mirror <replaceable>/dev/ada1</replaceable> <replaceable>/dev/ada2</replaceable> mirror <replaceable>/dev/ada3</replaceable> <replaceable>/dev/ada4</replaceable></userinput>\n" @@ -55949,7 +56493,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37843 +#: book.translate.xml:37977 msgid "" "Pools can also be constructed using partitions rather than whole disks. " "Putting <acronym>ZFS</acronym> in a separate partition allows the same disk " @@ -55972,7 +56516,7 @@ msgstr "" "時,也可符合這個較小的分割區容量,以使用替換的磁碟。" #. (itstool) path: sect2/para -#: book.translate.xml:37858 +#: book.translate.xml:37992 msgid "" "Create a <link linkend=\"zfs-term-vdev-raidz\">RAID-Z2</link> pool using " "partitions:" @@ -55981,7 +56525,7 @@ msgstr "" "池:" #. (itstool) path: sect2/screen -#: book.translate.xml:37862 +#: book.translate.xml:37996 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>mypool</replaceable> raidz2 <replaceable>/dev/ada0p3</replaceable> <replaceable>/dev/ada1p3</replaceable> <replaceable>/dev/ada2p3</replaceable> <replaceable>/dev/ada3p3</replaceable> <replaceable>/dev/ada4p3</replaceable> <replaceable>/dev/ada5p3</replaceable></userinput>\n" @@ -56005,7 +56549,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37881 +#: book.translate.xml:38015 msgid "" "A pool that is no longer needed can be destroyed so that the disks can be " "reused. Destroying a pool involves first unmounting all of the datasets in " @@ -56020,12 +56564,12 @@ msgstr "" "集之中檔案的應用程式無法辨識的行為。" #. (itstool) path: sect2/title -#: book.translate.xml:37892 +#: book.translate.xml:38026 msgid "Adding and Removing Devices" msgstr "加入與移除裝置" #. (itstool) path: sect2/para -#: book.translate.xml:37894 +#: book.translate.xml:38028 msgid "" "There are two cases for adding disks to a zpool: attaching a disk to an " "existing vdev with <command>zpool attach</command>, or adding vdevs to the " @@ -56038,7 +56582,7 @@ msgstr "" "建立之後加入磁碟。" #. (itstool) path: sect2/para -#: book.translate.xml:37901 +#: book.translate.xml:38035 msgid "" "A pool created with a single disk lacks redundancy. Corruption can be " "detected but not repaired, because there is no other copy of the data. The " @@ -56064,7 +56608,7 @@ msgstr "" "可讓這件事變的很簡單。" #. (itstool) path: sect2/para -#: book.translate.xml:37919 +#: book.translate.xml:38053 msgid "" "Upgrade the single disk (stripe) vdev <replaceable>ada0p3</replaceable> to a " "mirror by attaching <replaceable>ada1p3</replaceable>:" @@ -56073,7 +56617,7 @@ msgstr "" "<replaceable>ada0p3</replaceable> 採用鏡像型態 (mirror):" #. (itstool) path: sect2/screen -#: book.translate.xml:37923 +#: book.translate.xml:38057 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56133,7 +56677,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:37978 +#: book.translate.xml:38112 msgid "" "When adding disks to the existing vdev is not an option, as for " "<acronym>RAID-Z</acronym>, an alternative method is to add another vdev to " @@ -56155,7 +56699,7 @@ msgstr "" "若在無備援的磁碟上發生故障的結果便是遺失大半寫到儲存池的資料區塊。" #. (itstool) path: sect2/para -#: book.translate.xml:37991 +#: book.translate.xml:38125 msgid "" "Data is striped across each of the vdevs. For example, with two mirror " "vdevs, this is effectively a <acronym>RAID</acronym> 10 that stripes writes " @@ -56170,14 +56714,14 @@ msgstr "" "料量會不成比例的寫入到使用量較少的 vdev。" #. (itstool) path: sect2/para -#: book.translate.xml:38000 +#: book.translate.xml:38134 msgid "" "When attaching additional devices to a boot pool, remember to update the " "bootcode." msgstr "當連接額外的裝置到一個可以開機的儲存池,要記得更新 Bootcode。" #. (itstool) path: sect2/para -#: book.translate.xml:38003 +#: book.translate.xml:38137 msgid "" "Attach a second mirror group (<filename>ada2p3</filename> and " "<filename>ada3p3</filename>) to the existing mirror:" @@ -56186,7 +56730,7 @@ msgstr "" "filename>) 到既有的 mirror:" #. (itstool) path: sect2/screen -#: book.translate.xml:38007 +#: book.translate.xml:38141 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56226,7 +56770,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38042 +#: book.translate.xml:38176 msgid "" "Currently, vdevs cannot be removed from a pool, and disks can only be " "removed from a mirror if there is enough remaining redundancy. If only one " @@ -56238,12 +56782,12 @@ msgstr "" "剩下的那個磁碟故障,便會影響到整個儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:38048 +#: book.translate.xml:38182 msgid "Remove a disk from a three-way mirror group:" msgstr "從一個三方 mirror 群組移除一個磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:38050 +#: book.translate.xml:38184 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56277,12 +56821,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38081 +#: book.translate.xml:38215 msgid "Checking the Status of a Pool" msgstr "檢查儲存池狀態" #. (itstool) path: sect2/para -#: book.translate.xml:38083 +#: book.translate.xml:38217 msgid "" "Pool status is important. If a drive goes offline or a read, write, or " "checksum error is detected, the corresponding error count increases. The " @@ -56298,7 +56842,7 @@ msgstr "" "併顯示。" #. (itstool) path: sect2/screen -#: book.translate.xml:38091 +#: book.translate.xml:38225 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56321,12 +56865,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38111 +#: book.translate.xml:38245 msgid "Clearing Errors" msgstr "清除錯誤" #. (itstool) path: sect2/para -#: book.translate.xml:38113 +#: book.translate.xml:38247 msgid "" "When an error is detected, the read, write, or checksum counts are " "incremented. The error message can be cleared and the counts reset with " @@ -56341,12 +56885,12 @@ msgstr "" "者來說會很重要,因在舊的錯誤尚未清除前不會回報後續的錯誤。" #. (itstool) path: sect2/title -#: book.translate.xml:38124 +#: book.translate.xml:38258 msgid "Replacing a Functioning Device" msgstr "更換運作中的裝置" #. (itstool) path: sect2/para -#: book.translate.xml:38126 +#: book.translate.xml:38260 msgid "" "There are a number of situations where it may be desirable to replace one " "disk with a different disk. When replacing a working disk, the process keeps " @@ -56366,12 +56910,12 @@ msgstr "" "新的空間,請參考 <link linkend=\"zfs-zpool-online\">擴增儲存池</link>。" #. (itstool) path: sect2/para -#: book.translate.xml:38138 +#: book.translate.xml:38272 msgid "Replace a functioning device in the pool:" msgstr "更換儲存池中正在運作的狀置:" #. (itstool) path: sect2/screen -#: book.translate.xml:38140 +#: book.translate.xml:38274 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56434,12 +56978,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38200 +#: book.translate.xml:38334 msgid "Dealing with Failed Devices" msgstr "處理故障裝置" #. (itstool) path: sect2/para -#: book.translate.xml:38202 +#: book.translate.xml:38336 msgid "" "When a disk in a pool fails, the vdev to which the disk belongs enters the " "<link linkend=\"zfs-term-degraded\">degraded</link> state. All of the data " @@ -56462,7 +57006,7 @@ msgstr "" "link>) 的狀態。" #. (itstool) path: sect2/para -#: book.translate.xml:38216 +#: book.translate.xml:38350 msgid "" "If the vdev does not have any redundancy, or if multiple devices have failed " "and there is not enough redundancy to compensate, the pool enters the <link " @@ -56474,7 +57018,7 @@ msgstr "" "便會進入故障 (<link linkend=\"zfs-term-faulted\">Faulted</link>) 的狀態。" #. (itstool) path: sect2/para -#: book.translate.xml:38224 +#: book.translate.xml:38358 msgid "" "When replacing a failed disk, the name of the failed disk is replaced with " "the <acronym>GUID</acronym> of the device. A new device name parameter for " @@ -56486,12 +57030,12 @@ msgstr "" "裝置名稱參數。" #. (itstool) path: sect2/para -#: book.translate.xml:38230 +#: book.translate.xml:38364 msgid "Replace a failed disk using <command>zpool replace</command>:" msgstr "使用 <command>zpool replace</command> 更換故障的磁碟:" #. (itstool) path: sect2/screen -#: book.translate.xml:38233 +#: book.translate.xml:38367 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -56548,12 +57092,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38287 +#: book.translate.xml:38421 msgid "Scrubbing a Pool" msgstr "清潔儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38289 +#: book.translate.xml:38423 msgid "" "It is recommended that pools be <link linkend=\"zfs-term-scrub\">scrubbed</" "link> regularly, ideally at least once every month. The <command>scrub</" @@ -56571,7 +57115,7 @@ msgstr "" "免影響其他的工作。" #. (itstool) path: sect2/screen -#: book.translate.xml:38299 +#: book.translate.xml:38433 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool scrub <replaceable>mypool</replaceable></userinput>\n" @@ -56597,7 +57141,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38320 +#: book.translate.xml:38454 msgid "" "In the event that a scrub operation needs to be cancelled, issue " "<command>zpool scrub -s <replaceable>mypool</replaceable></command>." @@ -56606,12 +57150,12 @@ msgstr "" "<replaceable>mypool</replaceable></command>。" #. (itstool) path: sect2/title -#: book.translate.xml:38326 +#: book.translate.xml:38460 msgid "Self-Healing" msgstr "自我修復" #. (itstool) path: sect2/para -#: book.translate.xml:38328 +#: book.translate.xml:38462 msgid "" "The checksums stored with data blocks enable the file system to " "<emphasis>self-heal</emphasis>. This feature will automatically repair data " @@ -56642,7 +57186,7 @@ msgstr "" "誤的資料。這件事不需要與系統管理者作任何互動便會在一般的儲存池操作時完成。" #. (itstool) path: sect2/para -#: book.translate.xml:38348 +#: book.translate.xml:38482 msgid "" "The next example demonstrates this self-healing behavior. A mirrored pool of " "disks <filename>/dev/ada0</filename> and <filename>/dev/ada1</filename> is " @@ -56652,7 +57196,7 @@ msgstr "" "filename> 及 <filename>/dev/ada1</filename> 做鏡像的儲存池。" #. (itstool) path: sect2/screen -#: book.translate.xml:38352 +#: book.translate.xml:38486 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool create <replaceable>healer</replaceable> mirror <replaceable>/dev/ada0</replaceable> <replaceable>/dev/ada1</replaceable></userinput>\n" @@ -56675,7 +57219,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38370 +#: book.translate.xml:38504 msgid "" "Some important data that to be protected from data errors using the self-" "healing feature is copied to the pool. A checksum of the pool is created for " @@ -56685,7 +57229,7 @@ msgstr "" "驗碼供稍後做比較時使用。" #. (itstool) path: sect2/screen -#: book.translate.xml:38374 +#: book.translate.xml:38508 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /some/important/data /healer</userinput>\n" @@ -56698,7 +57242,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38382 +#: book.translate.xml:38516 msgid "" "Data corruption is simulated by writing random data to the beginning of one " "of the disks in the mirror. To prevent <acronym>ZFS</acronym> from healing " @@ -56710,7 +57254,7 @@ msgstr "" "入。" #. (itstool) path: warning/para -#: book.translate.xml:38389 +#: book.translate.xml:38523 msgid "" "This is a dangerous operation that can destroy vital data. It is shown here " "for demonstrational purposes only and should not be attempted during normal " @@ -56726,7 +57270,7 @@ msgstr "" "正確的備份。" #. (itstool) path: sect2/screen -#: book.translate.xml:38400 +#: book.translate.xml:38534 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool export <replaceable>healer</replaceable></userinput>\n" @@ -56738,7 +57282,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38407 +#: book.translate.xml:38541 msgid "" "The pool status shows that one device has experienced an error. Note that " "applications reading data from the pool did not receive any incorrect data. " @@ -56752,7 +57296,7 @@ msgstr "" "有錯誤校驗碼的裝置。" #. (itstool) path: sect2/screen -#: book.translate.xml:38415 +#: book.translate.xml:38549 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status <replaceable>healer</replaceable></userinput>\n" @@ -56776,7 +57320,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38434 +#: book.translate.xml:38568 msgid "" "The error was detected and handled by using the redundancy present in the " "unaffected <filename>ada0</filename> mirror disk. A checksum comparison with " @@ -56786,7 +57330,7 @@ msgstr "" "供資料。可與原來的校驗碼做比較來看儲存池是否已修復為一致。" #. (itstool) path: sect2/screen -#: book.translate.xml:38439 +#: book.translate.xml:38573 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>sha1 /healer >> checksum.txt</userinput>\n" @@ -56796,7 +57340,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38444 +#: book.translate.xml:38578 msgid "" "The two checksums that were generated before and after the intentional " "tampering with the pool data still match. This shows how <acronym>ZFS</" @@ -56821,7 +57365,7 @@ msgstr "" "filename> 上的錯誤資料。" #. (itstool) path: sect2/screen -#: book.translate.xml:38459 +#: book.translate.xml:38593 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool scrub <replaceable>healer</replaceable></userinput>\n" @@ -56848,7 +57392,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38481 +#: book.translate.xml:38615 msgid "" "The scrub operation reads data from <filename>ada0</filename> and rewrites " "any data with an incorrect checksum on <filename>ada1</filename>. This is " @@ -56862,7 +57406,7 @@ msgstr "" "literal> 的項目來辨識。這個作業完成後,儲存池的狀態會更改為:" #. (itstool) path: sect2/screen -#: book.translate.xml:38488 +#: book.translate.xml:38622 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status <replaceable>healer</replaceable></userinput>\n" @@ -56886,7 +57430,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38507 +#: book.translate.xml:38641 msgid "" "After the scrub operation completes and all the data has been synchronized " "from <filename>ada0</filename> to <filename>ada1</filename>, the error " @@ -56898,7 +57442,7 @@ msgstr "" "\"zfs-zpool-clear\">Clear</link>) 儲存池狀態的錯誤訊息。" #. (itstool) path: sect2/screen -#: book.translate.xml:38513 +#: book.translate.xml:38647 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool clear <replaceable>healer</replaceable></userinput>\n" @@ -56918,19 +57462,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38528 +#: book.translate.xml:38662 msgid "" "The pool is now back to a fully working state and all the errors have been " "cleared." msgstr "儲存池現在恢復完整運作的狀態且清除所有的錯誤了。" #. (itstool) path: sect2/title -#: book.translate.xml:38533 +#: book.translate.xml:38667 msgid "Growing a Pool" msgstr "擴增儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38535 +#: book.translate.xml:38669 msgid "" "The usable size of a redundant pool is limited by the capacity of the " "smallest device in each vdev. The smallest device can be replaced with a " @@ -56952,7 +57496,7 @@ msgstr "" "可用空間便會成長到 2 TB。" #. (itstool) path: sect2/para -#: book.translate.xml:38549 +#: book.translate.xml:38683 msgid "" "Expansion is triggered by using <command>zpool online -e</command> on each " "device. After expansion of all devices, the additional space becomes " @@ -56962,12 +57506,12 @@ msgstr "" "完所有裝置後,儲存池便可使用額外的空間。" #. (itstool) path: sect2/title -#: book.translate.xml:38556 +#: book.translate.xml:38690 msgid "Importing and Exporting Pools" msgstr "匯入與匯出儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38558 +#: book.translate.xml:38692 msgid "" "Pools are <emphasis>exported</emphasis> before moving them to another " "system. All datasets are unmounted, and each device is marked as exported " @@ -56992,18 +57536,18 @@ msgstr "" "生無法預期的結果。" #. (itstool) path: sect2/para -#: book.translate.xml:38572 +#: book.translate.xml:38706 msgid "Export a pool that is not in use:" msgstr "匯出未使用的儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38574 +#: book.translate.xml:38708 #, no-wrap msgid "<prompt>#</prompt> <userinput>zpool export mypool</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38576 +#: book.translate.xml:38710 msgid "" "Importing a pool automatically mounts the datasets. This may not be the " "desired behavior, and can be prevented with <command>zpool import -N</" @@ -57023,12 +57567,12 @@ msgstr "" "import -a</command> 會匯入所有沒有被其他系統使用的儲存池。" #. (itstool) path: sect2/para -#: book.translate.xml:38589 +#: book.translate.xml:38723 msgid "List all available pools for import:" msgstr "列出所有可以匯入的儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38591 +#: book.translate.xml:38725 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool import</userinput>\n" @@ -57043,12 +57587,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38601 +#: book.translate.xml:38735 msgid "Import the pool with an alternative root directory:" msgstr "使用替代的根目錄匯入儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38603 +#: book.translate.xml:38737 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool import -o altroot=<replaceable>/mnt</replaceable> <replaceable>mypool</replaceable></userinput>\n" @@ -57059,12 +57603,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38611 +#: book.translate.xml:38745 msgid "Upgrading a Storage Pool" msgstr "升級儲存儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38613 +#: book.translate.xml:38747 msgid "" "After upgrading FreeBSD, or if a pool has been imported from a system using " "an older version of <acronym>ZFS</acronym>, the pool can be manually " @@ -57079,12 +57623,12 @@ msgstr "" "存池可以升級,但有新功能的儲存池無法降級。" #. (itstool) path: sect2/para -#: book.translate.xml:38622 +#: book.translate.xml:38756 msgid "Upgrade a v28 pool to support <literal>Feature Flags</literal>:" msgstr "升級一個 v28 的儲存以支援功能旗標 (<literal>Feature Flags</literal>):" #. (itstool) path: sect2/screen -#: book.translate.xml:38625 +#: book.translate.xml:38759 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -57131,7 +57675,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38667 +#: book.translate.xml:38801 msgid "" "The newer features of <acronym>ZFS</acronym> will not be available until " "<command>zpool upgrade</command> has completed. <command>zpool upgrade -v</" @@ -57143,12 +57687,12 @@ msgstr "" "能,也同時會列出已經支援那些功能。" #. (itstool) path: sect2/para -#: book.translate.xml:38673 +#: book.translate.xml:38807 msgid "Upgrade a pool to support additional feature flags:" msgstr "升級儲存池支援新版的功能旗標 (Feature flags):" #. (itstool) path: sect2/screen -#: book.translate.xml:38675 +#: book.translate.xml:38809 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool status</userinput>\n" @@ -57202,7 +57746,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:38725 +#: book.translate.xml:38859 msgid "" "The boot code on systems that boot from a pool must be updated to support " "the new pool version. Use <command>gpart bootcode</command> on the partition " @@ -57215,12 +57759,12 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:38734 +#: book.translate.xml:38868 msgid "Displaying Recorded Pool History" msgstr "顯示已記錄的儲存池歷史日誌" #. (itstool) path: sect2/para -#: book.translate.xml:38736 +#: book.translate.xml:38870 msgid "" "Commands that modify the pool are recorded. Recorded actions include the " "creation of datasets, changing properties, or replacement of a disk. This " @@ -57235,7 +57779,7 @@ msgstr "" "<command>zpool history</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:38745 +#: book.translate.xml:38879 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history</userinput>\n" @@ -57247,7 +57791,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38752 +#: book.translate.xml:38886 msgid "" "The output shows <command>zpool</command> and <command>zfs</command> " "commands that were executed on the pool along with a timestamp. Only " @@ -57261,7 +57805,7 @@ msgstr "" "出所有儲存池的歷史記錄。" #. (itstool) path: sect2/para -#: book.translate.xml:38760 +#: book.translate.xml:38894 msgid "" "<command>zpool history</command> can show even more information when the " "options <option>-i</option> or <option>-l</option> are provided. <option>-i</" @@ -57273,7 +57817,7 @@ msgstr "" "事件外,也會顯示內部記錄的 <acronym>ZFS</acronym> 事件。" #. (itstool) path: sect2/screen -#: book.translate.xml:38766 +#: book.translate.xml:38900 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history -i</userinput>\n" @@ -57288,7 +57832,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38776 +#: book.translate.xml:38910 msgid "" "More details can be shown by adding <option>-l</option>. History records are " "shown in a long format, including information like the name of the user who " @@ -57298,7 +57842,7 @@ msgstr "" "包含的資訊有執行指令的使用者名稱、主機名稱以及更改的項目。" #. (itstool) path: sect2/screen -#: book.translate.xml:38781 +#: book.translate.xml:38915 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool history -l</userinput>\n" @@ -57310,7 +57854,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38788 +#: book.translate.xml:38922 msgid "" "The output shows that the <systemitem class=\"username\">root</systemitem> " "user created the mirrored pool with disks <filename>/dev/ada0</filename> and " @@ -57329,7 +57873,7 @@ msgstr "" "稱。" #. (itstool) path: sect2/para -#: book.translate.xml:38800 +#: book.translate.xml:38934 msgid "" "Both options to <command>zpool history</command> can be combined to give the " "most detailed information possible for any given pool. Pool history provides " @@ -57341,12 +57885,12 @@ msgstr "" "有用的資訊。" #. (itstool) path: sect2/title -#: book.translate.xml:38808 +#: book.translate.xml:38942 msgid "Performance Monitoring" msgstr "監視效能" #. (itstool) path: sect2/para -#: book.translate.xml:38810 +#: book.translate.xml:38944 msgid "" "A built-in monitoring system can display pool <acronym>I/O</acronym> " "statistics in real time. It shows the amount of free and used space on the " @@ -57361,7 +57905,7 @@ msgstr "" "來,可以提供儲存池名稱來只顯示該儲存池的監視資訊。舉一個簡單的例子:" #. (itstool) path: sect2/screen -#: book.translate.xml:38819 +#: book.translate.xml:38953 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool iostat</userinput>\n" @@ -57372,7 +57916,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38825 +#: book.translate.xml:38959 msgid "" "To continuously monitor <acronym>I/O</acronym> activity, a number can be " "specified as the last parameter, indicating a interval in seconds to wait " @@ -57389,7 +57933,7 @@ msgstr "" "代表總共要顯示的統計資訊筆數。" #. (itstool) path: sect2/para -#: book.translate.xml:38837 +#: book.translate.xml:38971 msgid "" "Even more detailed <acronym>I/O</acronym> statistics can be displayed with " "<option>-v</option>. Each device in the pool is shown with a statistics " @@ -57403,7 +57947,7 @@ msgstr "" "示有兩個裝置的鏡像儲存池:" #. (itstool) path: sect2/screen -#: book.translate.xml:38845 +#: book.translate.xml:38979 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool iostat -v </userinput>\n" @@ -57418,12 +57962,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:38857 +#: book.translate.xml:38991 msgid "Splitting a Storage Pool" msgstr "分割儲存儲存池" #. (itstool) path: sect2/para -#: book.translate.xml:38859 +#: book.translate.xml:38993 msgid "" "A pool consisting of one or more mirror vdevs can be split into two pools. " "Unless otherwise specified, the last member of each mirror is detached and " @@ -57438,12 +57982,12 @@ msgstr "" "的執行,這可以協助確認操作是否與使用者所要的相同。" #. (itstool) path: sect1/title -#: book.translate.xml:38871 +#: book.translate.xml:39005 msgid "<command>zfs</command> Administration" msgstr "<command>zfs</command> 管理" #. (itstool) path: sect1/para -#: book.translate.xml:38873 +#: book.translate.xml:39007 msgid "" "The <command>zfs</command> utility is responsible for creating, destroying, " "and managing all <acronym>ZFS</acronym> datasets that exist within a pool. " @@ -57455,12 +57999,12 @@ msgstr "" "\"><command>zpool</command></link> 來管理。" #. (itstool) path: sect2/title -#: book.translate.xml:38879 +#: book.translate.xml:39013 msgid "Creating and Destroying Datasets" msgstr "建立與摧毀資料集" #. (itstool) path: sect2/para -#: book.translate.xml:38881 +#: book.translate.xml:39015 msgid "" "Unlike traditional disks and volume managers, space in <acronym>ZFS</" "acronym> is <emphasis>not</emphasis> preallocated. With traditional file " @@ -57498,7 +58042,7 @@ msgstr "" "會變的較緩慢,且掛載上百個或其至上千個資料集可能會使 FreeBSD 的開機程序變慢。" #. (itstool) path: sect2/para -#: book.translate.xml:38905 +#: book.translate.xml:39039 msgid "" "Create a new dataset and enable <link linkend=\"zfs-term-compression-" "lz4\">LZ4 compression</link> on it:" @@ -57507,7 +58051,7 @@ msgstr "" "link>:" #. (itstool) path: sect2/screen -#: book.translate.xml:38908 +#: book.translate.xml:39042 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57545,7 +58089,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38941 +#: book.translate.xml:39075 msgid "" "Destroying a dataset is much quicker than deleting all of the files that " "reside on the dataset, as it does not involve scanning all of the files and " @@ -57555,12 +58099,12 @@ msgstr "" "所有檔案並更新所有相關的 Metadata。" #. (itstool) path: sect2/para -#: book.translate.xml:38946 +#: book.translate.xml:39080 msgid "Destroy the previously-created dataset:" msgstr "摧毀先前建立的資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:38948 +#: book.translate.xml:39082 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57598,7 +58142,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:38981 +#: book.translate.xml:39115 msgid "" "In modern versions of <acronym>ZFS</acronym>, <command>zfs destroy</command> " "is asynchronous, and the free space might take several minutes to appear in " @@ -57624,12 +58168,12 @@ msgstr "" "照,而不會真的摧毀,因摧毀快照所釋放出的空間也會同時顯示。" #. (itstool) path: sect2/title -#: book.translate.xml:39000 +#: book.translate.xml:39134 msgid "Creating and Destroying Volumes" msgstr "建立與摧毀磁碟區" #. (itstool) path: sect2/para -#: book.translate.xml:39002 +#: book.translate.xml:39136 msgid "" "A volume is a special type of dataset. Rather than being mounted as a file " "system, it is exposed as a block device under <filename>/dev/zvol/" @@ -57645,7 +58189,7 @@ msgstr "" "<acronym>HAST</acronym> 通訊協定匯出。" #. (itstool) path: sect2/para -#: book.translate.xml:39011 +#: book.translate.xml:39145 msgid "" "A volume can be formatted with any file system, or used without a file " "system to store raw data. To the user, a volume appears to be a regular " @@ -57660,7 +58204,7 @@ msgstr "" "一個 250 MB 的磁碟區可建立一個壓縮的 <acronym>FAT</acronym> 檔案系統。" #. (itstool) path: sect2/screen -#: book.translate.xml:39020 +#: book.translate.xml:39154 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs create -V 250m -o compression=on tank/fat32</userinput>\n" @@ -57677,7 +58221,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39032 +#: book.translate.xml:39166 msgid "" "Destroying a volume is much the same as destroying a regular file system " "dataset. The operation is nearly instantaneous, but it may take several " @@ -57687,12 +58231,12 @@ msgstr "" "背景會需要花費數分鐘來讓釋放空間再次可用。" #. (itstool) path: sect2/title -#: book.translate.xml:39039 +#: book.translate.xml:39173 msgid "Renaming a Dataset" msgstr "重新命名資料集" #. (itstool) path: sect2/para -#: book.translate.xml:39041 +#: book.translate.xml:39175 msgid "" "The name of a dataset can be changed with <command>zfs rename</command>. The " "parent of a dataset can also be changed with this command. Renaming a " @@ -57708,12 +58252,12 @@ msgstr "" "料集而定),可使用 <option>-u</option> 來避免重新掛載。" #. (itstool) path: sect2/para -#: book.translate.xml:39051 +#: book.translate.xml:39185 msgid "Rename a dataset and move it to be under a different parent dataset:" msgstr "重新命名一個資料集並移動該資料集到另一個父資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:39054 +#: book.translate.xml:39188 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list</userinput>\n" @@ -57752,7 +58296,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39088 +#: book.translate.xml:39222 msgid "" "Snapshots can also be renamed like this. Due to the nature of snapshots, " "they cannot be renamed into a different parent dataset. To rename a " @@ -57764,7 +58308,7 @@ msgstr "" "也會一併被重新命名。" #. (itstool) path: sect2/screen -#: book.translate.xml:39094 +#: book.translate.xml:39228 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -t snapshot</userinput>\n" @@ -57777,12 +58321,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:39104 +#: book.translate.xml:39238 msgid "Setting Dataset Properties" msgstr "設定資料集屬性" #. (itstool) path: sect2/para -#: book.translate.xml:39106 +#: book.translate.xml:39240 msgid "" "Each <acronym>ZFS</acronym> dataset has a number of properties that control " "its behavior. Most properties are automatically inherited from the parent " @@ -57801,7 +58345,7 @@ msgstr "" "份可以使用 <command>zfs inherit</command> 還原成其繼承的值。" #. (itstool) path: sect2/para -#: book.translate.xml:39118 +#: book.translate.xml:39252 msgid "" "User-defined properties can also be set. They become part of the dataset " "configuration and can be used to provide additional information about the " @@ -57814,7 +58358,7 @@ msgstr "" "性,會使用冒號 (<literal>:</literal>) 建立一個自訂命名空間供自訂屬性使用。" #. (itstool) path: sect2/screen -#: book.translate.xml:39125 +#: book.translate.xml:39259 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs set <replaceable>custom</replaceable>:<replaceable>costcenter</replaceable>=<replaceable>1234</replaceable> <replaceable>tank</replaceable></userinput>\n" @@ -57824,7 +58368,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39130 +#: book.translate.xml:39264 msgid "" "To remove a custom property, use <command>zfs inherit</command> with " "<option>-r</option>. If the custom property is not defined in any of the " @@ -57836,7 +58380,7 @@ msgstr "" "於儲存池的歷史記錄)。" #. (itstool) path: sect2/screen -#: book.translate.xml:39136 +#: book.translate.xml:39270 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs inherit -r <replaceable>custom</replaceable>:<replaceable>costcenter</replaceable> <replaceable>tank</replaceable></userinput>\n" @@ -57848,12 +58392,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:39145 +#: book.translate.xml:39279 msgid "Managing Snapshots" msgstr "管理快照 (Snapshot)" #. (itstool) path: sect2/para -#: book.translate.xml:39147 +#: book.translate.xml:39281 msgid "" "<link linkend=\"zfs-term-snapshot\">Snapshots</link> are one of the most " "powerful features of <acronym>ZFS</acronym>. A snapshot provides a read-" @@ -57888,7 +58432,7 @@ msgstr "" "所備份的資料其實是分散不同時間點的。" #. (itstool) path: sect2/para -#: book.translate.xml:39171 +#: book.translate.xml:39305 msgid "" "Snapshots in <acronym>ZFS</acronym> provide a variety of features that even " "other file systems with snapshot functionality lack. A typical example of " @@ -57917,12 +58461,12 @@ msgstr "" "但可以用在快速且簡單的保存某個特定時間點的資料集。" #. (itstool) path: sect3/title -#: book.translate.xml:39192 +#: book.translate.xml:39326 msgid "Creating Snapshots" msgstr "建立快照" #. (itstool) path: sect3/para -#: book.translate.xml:39194 +#: book.translate.xml:39328 msgid "" "Snapshots are created with <command>zfs snapshot <replaceable>dataset</" "replaceable>@<replaceable>snapshotname</replaceable></command>. Adding " @@ -57934,12 +58478,12 @@ msgstr "" "<option>-r</option> 可以遞迴對所有同名的子資料集建立快照。" #. (itstool) path: sect3/para -#: book.translate.xml:39199 +#: book.translate.xml:39333 msgid "Create a recursive snapshot of the entire pool:" msgstr "建立一個整個儲存池的遞迴快照:" #. (itstool) path: sect3/screen -#: book.translate.xml:39201 +#: book.translate.xml:39335 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -t all</userinput>\n" @@ -57980,7 +58524,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39237 +#: book.translate.xml:39371 msgid "" "Snapshots are not shown by a normal <command>zfs list</command> operation. " "To list snapshots, <option>-t snapshot</option> is appended to <command>zfs " @@ -57992,7 +58536,7 @@ msgstr "" "<option>-t all</option> 可以同時列出檔案系統的內容及快照。" #. (itstool) path: sect3/para -#: book.translate.xml:39243 +#: book.translate.xml:39377 msgid "" "Snapshots are not mounted directly, so path is shown in the " "<literal>MOUNTPOINT</literal> column. There is no mention of available disk " @@ -58005,7 +58549,7 @@ msgstr "" "再寫入。比較快照與其原來建立時的資料集:" #. (itstool) path: sect3/screen -#: book.translate.xml:39250 +#: book.translate.xml:39384 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/usr/home</replaceable></userinput>\n" @@ -58015,7 +58559,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39255 +#: book.translate.xml:39389 msgid "" "Displaying both the dataset and the snapshot together reveals how snapshots " "work in <link linkend=\"zfs-term-cow\">COW</link> fashion. They save only " @@ -58030,7 +58574,7 @@ msgstr "" "製一個檔案到該資料集,可以讓空間使用量變的更明顯,然後再做第二個快照:" #. (itstool) path: sect3/screen -#: book.translate.xml:39265 +#: book.translate.xml:39399 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/etc/passwd</replaceable> <replaceable>/var/tmp</replaceable></userinput>\n" @@ -58043,7 +58587,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39273 +#: book.translate.xml:39407 msgid "" "The second snapshot contains only the changes to the dataset after the copy " "operation. This yields enormous space savings. Notice that the size of the " @@ -58057,12 +58601,12 @@ msgstr "" "動在前次快照與之後快照間的關係。" #. (itstool) path: sect3/title -#: book.translate.xml:39283 +#: book.translate.xml:39417 msgid "Comparing Snapshots" msgstr "比對快照" #. (itstool) path: sect3/para -#: book.translate.xml:39285 +#: book.translate.xml:39419 msgid "" "ZFS provides a built-in command to compare the differences in content " "between two snapshots. This is helpful when many snapshots were taken over " @@ -58078,7 +58622,7 @@ msgstr "" "個指令會產生以下結果:" #. (itstool) path: sect3/screen -#: book.translate.xml:39295 +#: book.translate.xml:39429 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58092,7 +58636,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39304 +#: book.translate.xml:39438 msgid "" "The command lists the changes between the specified snapshot (in this case " "<literal><replaceable>mypool/var/tmp@my_recursive_snapshot</replaceable></" @@ -58104,39 +58648,39 @@ msgstr "" "一個欄位是更改的類型:" #. (itstool) path: row/entry -#: book.translate.xml:39315 +#: book.translate.xml:39449 msgid "The path or file was added." msgstr "加入了該路徑或檔案。" #. (itstool) path: row/entry -#: book.translate.xml:39320 +#: book.translate.xml:39454 msgid "The path or file was deleted." msgstr "刪除了該路徑或檔案。" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:39324 book.translate.xml:65535 +#: book.translate.xml:39458 book.translate.xml:65535 msgid "M" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:39325 +#: book.translate.xml:39459 msgid "The path or file was modified." msgstr "修改了該路徑或檔案。" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:39329 book.translate.xml:65535 +#: book.translate.xml:39463 book.translate.xml:65535 msgid "R" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:39330 +#: book.translate.xml:39464 msgid "The path or file was renamed." msgstr "重新命名了該路徑或檔案。" #. (itstool) path: sect3/para -#: book.translate.xml:39336 +#: book.translate.xml:39470 msgid "" "Comparing the output with the table, it becomes clear that " "<filename><replaceable>passwd</replaceable></filename> was added after the " @@ -58152,7 +58696,7 @@ msgstr "" "錄已經做過修改。" #. (itstool) path: sect3/para -#: book.translate.xml:39344 +#: book.translate.xml:39478 msgid "" "Comparing two snapshots is helpful when using the <acronym>ZFS</acronym> " "replication feature to transfer a dataset to a different host for backup " @@ -58162,14 +58706,14 @@ msgstr "" "兩個快照也同樣很有用。" #. (itstool) path: sect3/para -#: book.translate.xml:39348 +#: book.translate.xml:39482 msgid "" "Compare two snapshots by providing the full dataset name and snapshot name " "of both datasets:" msgstr "比對兩個快照需要提供兩個資料集的完整資料集名稱與快照名稱:" #. (itstool) path: sect3/screen -#: book.translate.xml:39351 +#: book.translate.xml:39485 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /var/tmp/passwd /var/tmp/passwd.copy</userinput>\n" @@ -58184,7 +58728,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39361 +#: book.translate.xml:39495 msgid "" "A backup administrator can compare two snapshots received from the sending " "host and determine the actual changes in the dataset. See the <link linkend=" @@ -58194,12 +58738,12 @@ msgstr "" "更。請參考 <link linkend=\"zfs-zfs-send\">備份</link> 一節來取得更多資訊。" #. (itstool) path: sect3/title -#: book.translate.xml:39369 +#: book.translate.xml:39503 msgid "Snapshot Rollback" msgstr "使用快照還原" #. (itstool) path: sect3/para -#: book.translate.xml:39371 +#: book.translate.xml:39505 msgid "" "When at least one snapshot is available, it can be rolled back to at any " "time. Most of the time this is the case when the current state of the " @@ -58234,7 +58778,7 @@ msgstr "" "會遺失重要的資料。" #. (itstool) path: sect3/para -#: book.translate.xml:39397 +#: book.translate.xml:39531 msgid "" "In the first example, a snapshot is rolled back because of a careless " "<command>rm</command> operation that removes too much data than was intended." @@ -58243,7 +58787,7 @@ msgstr "" "原到快照。" #. (itstool) path: sect3/screen -#: book.translate.xml:39401 +#: book.translate.xml:39535 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58261,7 +58805,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39414 +#: book.translate.xml:39548 msgid "" "At this point, the user realized that too many files were deleted and wants " "them back. <acronym>ZFS</acronym> provides an easy way to get them back " @@ -58274,7 +58818,7 @@ msgstr "" "用快照時可用。要拿回檔案並從最後一次快照重新開始,可執行以下指令:" #. (itstool) path: sect3/screen -#: book.translate.xml:39421 +#: book.translate.xml:39555 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs rollback <replaceable>mypool/var/tmp@diff_snapshot</replaceable></userinput>\n" @@ -58283,7 +58827,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39425 +#: book.translate.xml:39559 msgid "" "The rollback operation restored the dataset to the state of the last " "snapshot. It is also possible to roll back to a snapshot that was taken much " @@ -58294,7 +58838,7 @@ msgstr "" "其之後建立的快照。要這麼做時,<acronym>ZFS</acronym> 會發出這個警告:" #. (itstool) path: sect3/screen -#: book.translate.xml:39431 +#: book.translate.xml:39565 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt snapshot <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58310,7 +58854,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39442 +#: book.translate.xml:39576 msgid "" "This warning means that snapshots exist between the current state of the " "dataset and the snapshot to which the user wants to roll back. To complete " @@ -58329,7 +58873,7 @@ msgstr "" "做,那麼必須要知道會遺失所有在這之間的快照,然後可執行以下指令:" #. (itstool) path: sect3/screen -#: book.translate.xml:39454 +#: book.translate.xml:39588 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs rollback -r <replaceable>mypool/var/tmp@my_recursive_snapshot</replaceable></userinput>\n" @@ -58341,7 +58885,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39461 +#: book.translate.xml:39595 msgid "" "The output from <command>zfs list -t snapshot</command> confirms that the " "intermediate snapshots were removed as a result of <command>zfs rollback -r</" @@ -58351,12 +58895,12 @@ msgstr "" "rollback -r</command> 會移除的快照。" #. (itstool) path: sect3/title -#: book.translate.xml:39468 +#: book.translate.xml:39602 msgid "Restoring Individual Files from Snapshots" msgstr "從快照還原個別檔案" #. (itstool) path: sect3/para -#: book.translate.xml:39470 +#: book.translate.xml:39604 msgid "" "Snapshots are mounted in a hidden directory under the parent dataset: " "<filename>.zfs/snapshots/<replaceable>snapshotname</replaceable></filename>. " @@ -58377,7 +58921,7 @@ msgstr "" "令中。" #. (itstool) path: sect3/screen -#: book.translate.xml:39483 +#: book.translate.xml:39617 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get snapdir <replaceable>mypool/var/tmp</replaceable></userinput>\n" @@ -58391,7 +58935,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39492 +#: book.translate.xml:39626 msgid "" "Individual files can easily be restored to a previous state by copying them " "from the snapshot back to the parent dataset. The directory structure below " @@ -58407,7 +58951,7 @@ msgstr "" "filename> 目錄還原一個檔案,透過從含有該檔案的最新版快照複製:" #. (itstool) path: sect3/screen -#: book.translate.xml:39503 +#: book.translate.xml:39637 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rm /var/tmp/passwd</userinput>\n" @@ -58421,7 +58965,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39512 +#: book.translate.xml:39646 msgid "" "When <command>ls .zfs/snapshot</command> was issued, the <literal>snapdir</" "literal> property might have been set to hidden, but it would still be " @@ -58439,7 +58983,7 @@ msgstr "" "出現以下錯誤:" #. (itstool) path: sect3/screen -#: book.translate.xml:39522 +#: book.translate.xml:39656 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/etc/rc.conf</replaceable> /var/tmp/.zfs/snapshot/<replaceable>after_cp/</replaceable></userinput>\n" @@ -58447,7 +58991,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39525 +#: book.translate.xml:39659 msgid "" "The error reminds the user that snapshots are read-only and cannot be " "changed after creation. Files cannot be copied into or removed from snapshot " @@ -58458,7 +59002,7 @@ msgstr "" "該快照目錄中移除,因為這會變更該資料集所代表的狀態。" #. (itstool) path: sect3/para -#: book.translate.xml:39531 +#: book.translate.xml:39665 msgid "" "Snapshots consume space based on how much the parent file system has changed " "since the time of the snapshot. The <literal>written</literal> property of a " @@ -58468,7 +59012,7 @@ msgstr "" "<literal>written</literal> 屬性可以用來追蹤有多少空間被快照所使用。" #. (itstool) path: sect3/para -#: book.translate.xml:39536 +#: book.translate.xml:39670 msgid "" "Snapshots are destroyed and the space reclaimed with <command>zfs destroy " "<replaceable>dataset</replaceable>@<replaceable>snapshot</replaceable></" @@ -58485,12 +59029,12 @@ msgstr "" "實際執行摧毀的操作。" #. (itstool) path: sect2/title -#: book.translate.xml:39549 +#: book.translate.xml:39683 msgid "Managing Clones" msgstr "管理複本 (Clone)" #. (itstool) path: sect2/para -#: book.translate.xml:39551 +#: book.translate.xml:39685 msgid "" "A clone is a copy of a snapshot that is treated more like a regular dataset. " "Unlike a snapshot, a clone is not read only, is mounted, and can have its " @@ -58513,12 +59057,12 @@ msgstr "" "點,並非只能位於原來快照的位置底下。" #. (itstool) path: sect2/para -#: book.translate.xml:39565 +#: book.translate.xml:39699 msgid "To demonstrate the clone feature, this example dataset is used:" msgstr "要示範複本功能會用到這個範例資料集:" #. (itstool) path: sect2/screen -#: book.translate.xml:39568 +#: book.translate.xml:39702 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs list -rt all <replaceable>camino/home/joe</replaceable></userinput>\n" @@ -58529,7 +59073,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39574 +#: book.translate.xml:39708 msgid "" "A typical use for clones is to experiment with a specific dataset while " "keeping the snapshot around to fall back to in case something goes wrong. " @@ -58544,7 +59088,7 @@ msgstr "" "非必要,因為複本與資料集可同時存在,不會有任何問題。" #. (itstool) path: sect2/screen -#: book.translate.xml:39583 +#: book.translate.xml:39717 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs clone <replaceable>camino/home/joe</replaceable>@<replaceable>backup</replaceable> <replaceable>camino/home/joenew</replaceable></userinput>\n" @@ -58561,7 +59105,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39595 +#: book.translate.xml:39729 msgid "" "After a clone is created it is an exact copy of the state the dataset was in " "when the snapshot was taken. The clone can now be changed independently from " @@ -58579,7 +59123,7 @@ msgstr "" "literal> 也會因為成為一個完全獨立的資料集而移除。以下範例會示範這個動作:" #. (itstool) path: sect2/screen -#: book.translate.xml:39606 +#: book.translate.xml:39740 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get origin <replaceable>camino/home/joenew</replaceable></userinput>\n" @@ -58592,7 +59136,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39614 +#: book.translate.xml:39748 msgid "" "After making some changes like copying <filename>loader.conf</filename> to " "the promoted clone, for example, the old directory becomes obsolete in this " @@ -58608,7 +59152,7 @@ msgstr "" "command>。" #. (itstool) path: sect2/screen -#: book.translate.xml:39623 +#: book.translate.xml:39757 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp <replaceable>/boot/defaults/loader.conf</replaceable> <replaceable>/usr/home/joenew</replaceable></userinput>\n" @@ -58622,7 +59166,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39632 +#: book.translate.xml:39766 msgid "" "The cloned snapshot is now handled like an ordinary dataset. It contains all " "the data from the original snapshot plus the files that were added to it " @@ -58644,12 +59188,12 @@ msgstr "" "管理成本。" #. (itstool) path: sect2/title -#: book.translate.xml:39647 +#: book.translate.xml:39781 msgid "Replication" msgstr "備份 (Replication)" #. (itstool) path: sect2/para -#: book.translate.xml:39649 +#: book.translate.xml:39783 msgid "" "Keeping data on a single pool in one location exposes it to risks like theft " "and natural or human disasters. Making regular backups of the entire pool is " @@ -58671,14 +59215,14 @@ msgstr "" "<command>zfs send</command> 及 <command>zfs receive</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:39663 +#: book.translate.xml:39797 msgid "" "These examples demonstrate <acronym>ZFS</acronym> replication with these two " "pools:" msgstr "以下例子將示範使用兩個儲存池來做 <acronym>ZFS</acronym> 備份:" #. (itstool) path: sect2/screen -#: book.translate.xml:39666 +#: book.translate.xml:39800 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -58688,7 +59232,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39671 +#: book.translate.xml:39805 msgid "" "The pool named <replaceable>mypool</replaceable> is the primary pool where " "data is written to and read from on a regular basis. A second pool, " @@ -58710,7 +59254,7 @@ msgstr "" "可以做備份,最近一次快照之後所做的變更不會含在內容裡面。" #. (itstool) path: sect2/screen -#: book.translate.xml:39685 +#: book.translate.xml:39819 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable></userinput>\n" @@ -58720,7 +59264,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39690 +#: book.translate.xml:39824 msgid "" "Now that a snapshot exists, <command>zfs send</command> can be used to " "create a stream representing the contents of the snapshot. This stream can " @@ -58733,7 +59277,7 @@ msgstr "" "須要重新導向到一個檔案或轉接到其他地方,否則會錯誤:" #. (itstool) path: sect2/screen -#: book.translate.xml:39697 +#: book.translate.xml:39831 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs send <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable></userinput>\n" @@ -58742,7 +59286,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39701 +#: book.translate.xml:39835 msgid "" "To back up a dataset with <command>zfs send</command>, redirect to a file " "located on the mounted backup pool. Ensure that the pool has enough free " @@ -58755,7 +59299,7 @@ msgstr "" "該快照中內含的所有資料,並非只有上次快照到該快照間的變更。" #. (itstool) path: sect2/screen -#: book.translate.xml:39708 +#: book.translate.xml:39842 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs send <replaceable>mypool</replaceable>@<replaceable>backup1</replaceable> > <replaceable>/backup/backup1</replaceable></userinput>\n" @@ -58766,7 +59310,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39714 +#: book.translate.xml:39848 msgid "" "The <command>zfs send</command> transferred all the data in the snapshot " "called <replaceable>backup1</replaceable> to the pool named " @@ -58780,7 +59324,7 @@ msgstr "" "citerefentry> 排程來自動完成建立與傳送快照的動作。" #. (itstool) path: sect2/para -#: book.translate.xml:39720 +#: book.translate.xml:39854 msgid "" "Instead of storing the backups as archive files, <acronym>ZFS</acronym> can " "receive them as a live file system, allowing the backed up data to be " @@ -58800,7 +59344,7 @@ msgstr "" "可以被複製到另一個空的資料集。" #. (itstool) path: sect2/screen -#: book.translate.xml:39732 +#: book.translate.xml:39866 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>replica1</replaceable></userinput>\n" @@ -58816,12 +59360,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:39744 +#: book.translate.xml:39878 msgid "Incremental Backups" msgstr "漸進式備份" #. (itstool) path: sect3/para -#: book.translate.xml:39746 +#: book.translate.xml:39880 msgid "" "<command>zfs send</command> can also determine the difference between two " "snapshots and send only the differences between the two. This saves disk " @@ -58831,7 +59375,7 @@ msgstr "" "的差異,這麼做可以節省磁碟空間及傳輸時間。例如:" #. (itstool) path: sect3/screen -#: book.translate.xml:39751 +#: book.translate.xml:39885 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs snapshot <replaceable>mypool</replaceable>@<replaceable>replica2</replaceable></userinput>\n" @@ -58846,7 +59390,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39761 +#: book.translate.xml:39895 msgid "" "A second snapshot called <replaceable>replica2</replaceable> was created. " "This second snapshot contains only the changes that were made to the file " @@ -58862,7 +59406,7 @@ msgstr "" "照,串流中只會含有做過更改的資料。這個動作只在接收端已經有初始快照時才可用。" #. (itstool) path: sect3/screen -#: book.translate.xml:39772 +#: book.translate.xml:39906 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs send -v -i <replaceable>mypool</replaceable>@<replaceable>replica1</replaceable> <replaceable>mypool</replaceable>@<replaceable>replica2</replaceable> | zfs receive <replaceable>/backup/mypool</replaceable></userinput>\n" @@ -58890,7 +59434,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39795 +#: book.translate.xml:39929 msgid "" "The incremental stream was successfully transferred. Only the data that had " "changed was replicated, rather than the entirety of <replaceable>replica1</" @@ -58905,7 +59449,7 @@ msgstr "" "輸成本時非常有用。" #. (itstool) path: sect3/para -#: book.translate.xml:39804 +#: book.translate.xml:39938 msgid "" "A new file system, <replaceable>backup/mypool</replaceable>, is available " "with all of the files and data from the pool <replaceable>mypool</" @@ -58924,12 +59468,12 @@ msgstr "" "做備份。" #. (itstool) path: sect3/title -#: book.translate.xml:39817 +#: book.translate.xml:39951 msgid "Sending Encrypted Backups over <application>SSH</application>" msgstr "透過 <application>SSH</application> 傳送加密的備份" #. (itstool) path: sect3/para -#: book.translate.xml:39820 +#: book.translate.xml:39954 msgid "" "Sending streams over the network is a good way to keep a remote backup, but " "it does come with a drawback. Data sent over the network link is not " @@ -58953,7 +59497,7 @@ msgstr "" "link>。" #. (itstool) path: sect3/para -#: book.translate.xml:39834 +#: book.translate.xml:39968 msgid "" "A few settings and security precautions must be completed first. Only the " "necessary steps required for the <command>zfs send</command> operation are " @@ -58965,12 +59509,12 @@ msgstr "" "訊請參考 <xref linkend=\"openssh\"/>。" #. (itstool) path: sect3/para -#: book.translate.xml:39840 +#: book.translate.xml:39974 msgid "This configuration is required:" msgstr "必要的環境設定:" #. (itstool) path: listitem/para -#: book.translate.xml:39844 +#: book.translate.xml:39978 msgid "" "Passwordless <application>SSH</application> access between sending and " "receiving host using <application>SSH</application> keys" @@ -58979,7 +59523,7 @@ msgstr "" "<application>SSH</application> 存取" #. (itstool) path: listitem/para -#: book.translate.xml:39850 +#: book.translate.xml:39984 msgid "" "Normally, the privileges of the <systemitem class=\"username\">root</" "systemitem> user are needed to send and receive streams. This requires " @@ -58998,18 +59542,18 @@ msgstr "" "\">root</systemitem> 使用者在每個系統上執行各自的發送與接收操作。" #. (itstool) path: listitem/para -#: book.translate.xml:39866 +#: book.translate.xml:40000 msgid "On the sending system:" msgstr "在傳送端系統上:" #. (itstool) path: listitem/screen -#: book.translate.xml:39868 +#: book.translate.xml:40002 #, no-wrap msgid "<prompt>#</prompt> <command>zfs allow -u someuser send,snapshot <replaceable>mypool</replaceable></command>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:39872 +#: book.translate.xml:40006 msgid "" "To mount the pool, the unprivileged user must own the directory, and regular " "users must be allowed to mount file systems. On the receiving system:" @@ -59018,7 +59562,7 @@ msgstr "" "統。在接收端系統上:" #. (itstool) path: listitem/screen -#: book.translate.xml:39876 +#: book.translate.xml:40010 #, no-wrap msgid "" "<prompt>#</prompt> sysctl vfs.usermount=1\n" @@ -59030,7 +59574,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39885 +#: book.translate.xml:40019 msgid "" "The unprivileged user now has the ability to receive and mount datasets, and " "the <replaceable>home</replaceable> dataset can be replicated to the remote " @@ -59040,7 +59584,7 @@ msgstr "" "replaceable> 資料集可以被複製到遠端系統:" #. (itstool) path: sect3/screen -#: book.translate.xml:39889 +#: book.translate.xml:40023 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>zfs snapshot -r <replaceable>mypool/home</replaceable>@<replaceable>monday</replaceable></userinput>\n" @@ -59048,7 +59592,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:39892 +#: book.translate.xml:40026 msgid "" "A recursive snapshot called <replaceable>monday</replaceable> is made of the " "file system dataset <replaceable>home</replaceable> that resides on the pool " @@ -59079,12 +59623,12 @@ msgstr "" "多有關傳輸的詳細資訊,包含已花費的時間及已傳輸的資料量。" #. (itstool) path: sect2/title -#: book.translate.xml:39917 +#: book.translate.xml:40051 msgid "Dataset, User, and Group Quotas" msgstr "資料集、使用者以及群組配額" #. (itstool) path: sect2/para -#: book.translate.xml:39919 +#: book.translate.xml:40053 msgid "" "<link linkend=\"zfs-term-quota\">Dataset quotas</link> are used to restrict " "the amount of space that can be consumed by a particular dataset. <link " @@ -59103,44 +59647,44 @@ msgstr "" "\">Group</link>) 配額可以用來避免使用者或群組用掉儲存池或資料集的所有空間。" #. (itstool) path: sect2/para -#: book.translate.xml:39931 +#: book.translate.xml:40065 msgid "" "To enforce a dataset quota of 10 GB for <filename>storage/home/bob</" "filename>:" msgstr "要設定 <filename>storage/home/bob</filename> 的資料集配額為 10 GB:" #. (itstool) path: sect2/screen -#: book.translate.xml:39934 +#: book.translate.xml:40068 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set quota=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39936 +#: book.translate.xml:40070 msgid "" "To enforce a reference quota of 10 GB for <filename>storage/home/bob</" "filename>:" msgstr "要設定 <filename>storage/home/bob</filename> 的參考配額為 10 GB:" #. (itstool) path: sect2/screen -#: book.translate.xml:39939 +#: book.translate.xml:40073 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set refquota=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39941 +#: book.translate.xml:40075 msgid "To remove a quota of 10 GB for <filename>storage/home/bob</filename>:" msgstr "要移除 <filename>storage/home/bob</filename> 的 10 GB 配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:39944 +#: book.translate.xml:40078 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set quota=none storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39946 +#: book.translate.xml:40080 msgid "" "The general format is <literal>userquota@<replaceable>user</" "replaceable>=<replaceable>size</replaceable></literal>, and the user's name " @@ -59151,7 +59695,7 @@ msgstr "" "下格式:" #. (itstool) path: listitem/para -#: book.translate.xml:39952 +#: book.translate.xml:40086 msgid "" "<acronym>POSIX</acronym> compatible name such as <replaceable>joe</" "replaceable>." @@ -59159,13 +59703,13 @@ msgstr "" "<acronym>POSIX</acronym> 相容的名稱,如 <replaceable>joe</replaceable>。" #. (itstool) path: listitem/para -#: book.translate.xml:39957 +#: book.translate.xml:40091 msgid "" "<acronym>POSIX</acronym> numeric ID such as <replaceable>789</replaceable>." msgstr "<acronym>POSIX</acronym> 數字 ID,如 <replaceable>789</replaceable>。" #. (itstool) path: listitem/para -#: book.translate.xml:39962 +#: book.translate.xml:40096 msgid "" "<acronym>SID</acronym> name such as <replaceable>joe.bloggs@example.com</" "replaceable>." @@ -59174,7 +59718,7 @@ msgstr "" "replaceable>。" #. (itstool) path: listitem/para -#: book.translate.xml:39968 +#: book.translate.xml:40102 msgid "" "<acronym>SID</acronym> numeric ID such as <replaceable>S-1-123-456-789</" "replaceable>." @@ -59183,7 +59727,7 @@ msgstr "" "replaceable>。" #. (itstool) path: sect2/para -#: book.translate.xml:39974 +#: book.translate.xml:40108 msgid "" "For example, to enforce a user quota of 50 GB for the user named " "<replaceable>joe</replaceable>:" @@ -59191,24 +59735,24 @@ msgstr "" "例如,要設定使用者名為 <replaceable>joe</replaceable> 的使用者配額為 50 GB:" #. (itstool) path: sect2/screen -#: book.translate.xml:39977 +#: book.translate.xml:40111 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set userquota@joe=50G</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:39979 +#: book.translate.xml:40113 msgid "To remove any quota:" msgstr "要移除所有配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:39981 +#: book.translate.xml:40115 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set userquota@joe=none</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:39984 +#: book.translate.xml:40118 msgid "" "User quota properties are not displayed by <command>zfs get all</command>. " "Non-<systemitem class=\"username\">root</systemitem> users can only see " @@ -59222,7 +59766,7 @@ msgstr "" "任何人的配額。" #. (itstool) path: sect2/para -#: book.translate.xml:39992 +#: book.translate.xml:40126 msgid "" "The general format for setting a group quota is: " "<literal>groupquota@<replaceable>group</replaceable>=<replaceable>size</" @@ -59232,7 +59776,7 @@ msgstr "" "replaceable>=<replaceable>size</replaceable></literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:39995 +#: book.translate.xml:40129 msgid "" "To set the quota for the group <replaceable>firstgroup</replaceable> to " "50 GB, use:" @@ -59240,13 +59784,13 @@ msgstr "" "要設定群組 <replaceable>firstgroup</replaceable> 的配額為 50 GB 可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:39999 +#: book.translate.xml:40133 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set groupquota@firstgroup=50G</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40001 +#: book.translate.xml:40135 msgid "" "To remove the quota for the group <replaceable>firstgroup</replaceable>, or " "to make sure that one is not set, instead use:" @@ -59255,13 +59799,13 @@ msgstr "" "額可使用:" #. (itstool) path: sect2/screen -#: book.translate.xml:40005 +#: book.translate.xml:40139 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set groupquota@firstgroup=none</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40007 +#: book.translate.xml:40141 msgid "" "As with the user quota property, non-<systemitem class=\"username\">root</" "systemitem> users can only see the quotas associated with the groups to " @@ -59275,7 +59819,7 @@ msgstr "" "所有群組的任何配額。" #. (itstool) path: sect2/para -#: book.translate.xml:40015 +#: book.translate.xml:40149 msgid "" "To display the amount of space used by each user on a file system or " "snapshot along with any quotas, use <command>zfs userspace</command>. For " @@ -59291,7 +59835,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:40022 +#: book.translate.xml:40156 msgid "" "Users with sufficient privileges, and <systemitem class=\"username\">root</" "systemitem>, can list the quota for <filename>storage/home/bob</filename> " @@ -59301,18 +59845,18 @@ msgstr "" "用以下指令列出 <filename>storage/home/bob</filename> 的配額:" #. (itstool) path: sect2/screen -#: book.translate.xml:40026 +#: book.translate.xml:40160 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs get quota storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:40030 +#: book.translate.xml:40164 msgid "Reservations" msgstr "保留空間" #. (itstool) path: sect2/para -#: book.translate.xml:40032 +#: book.translate.xml:40166 msgid "" "<link linkend=\"zfs-term-reservation\">Reservations</link> guarantee a " "minimum amount of space will always be available on a dataset. The reserved " @@ -59325,7 +59869,7 @@ msgstr "" "足夠的可用空間來存放重要的資料集或日誌檔時特別有用。" #. (itstool) path: sect2/para -#: book.translate.xml:40039 +#: book.translate.xml:40173 msgid "" "The general format of the <literal>reservation</literal> property is " "<literal>reservation=<replaceable>size</replaceable></literal>, so to set a " @@ -59336,24 +59880,24 @@ msgstr "" "<filename>storage/home/bob</filename> 設定保留 10 GB 的空間可以用:" #. (itstool) path: sect2/screen -#: book.translate.xml:40045 +#: book.translate.xml:40179 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set reservation=10G storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40047 +#: book.translate.xml:40181 msgid "To clear any reservation:" msgstr "要清除任何保留空間:" #. (itstool) path: sect2/screen -#: book.translate.xml:40049 +#: book.translate.xml:40183 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set reservation=none storage/home/bob</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40051 +#: book.translate.xml:40185 msgid "" "The same principle can be applied to the <literal>refreservation</literal> " "property for setting a <link linkend=\"zfs-term-refreservation\">Reference " @@ -59366,7 +59910,7 @@ msgstr "" "replaceable></literal>。" #. (itstool) path: sect2/para -#: book.translate.xml:40057 +#: book.translate.xml:40191 msgid "" "This command shows any reservations or refreservations that exist on " "<filename>storage/home/bob</filename>:" @@ -59375,7 +59919,7 @@ msgstr "" "reservation 或 refreservation:" #. (itstool) path: sect2/screen -#: book.translate.xml:40060 +#: book.translate.xml:40194 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get reservation storage/home/bob</userinput>\n" @@ -59385,12 +59929,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-compression -#: book.translate.xml:40065 book.translate.xml:41184 +#: book.translate.xml:40199 book.translate.xml:41318 msgid "Compression" msgstr "壓縮 (Compression)" #. (itstool) path: sect2/para -#: book.translate.xml:40067 +#: book.translate.xml:40201 msgid "" "<acronym>ZFS</acronym> provides transparent compression. Compressing data at " "the block level as it is written not only saves space, but can also increase " @@ -59407,7 +59951,7 @@ msgstr "" "因為壓縮並不需要使用額外的記憶體。" #. (itstool) path: sect2/para -#: book.translate.xml:40077 +#: book.translate.xml:40211 msgid "" "<acronym>ZFS</acronym> offers several different compression algorithms, each " "with different trade-offs. With the introduction of <acronym>LZ4</acronym> " @@ -59433,14 +59977,14 @@ msgstr "" "link>) 項目。" #. (itstool) path: sect2/para -#: book.translate.xml:40093 +#: book.translate.xml:40227 msgid "" "The administrator can monitor the effectiveness of compression using a " "number of dataset properties." msgstr "管理者可以使用資料集的屬性來監視壓縮的效果。" #. (itstool) path: sect2/screen -#: book.translate.xml:40096 +#: book.translate.xml:40230 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zfs get used,compressratio,compression,logicalused <replaceable>mypool/compressed_dataset</replaceable></userinput>\n" @@ -59452,7 +59996,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40103 +#: book.translate.xml:40237 msgid "" "The dataset is currently using 449 GB of space (the used property). Without " "compression, it would have taken 496 GB of space (the " @@ -59464,7 +60008,7 @@ msgstr "" "的壓縮比為 1.11:1。" #. (itstool) path: sect2/para -#: book.translate.xml:40109 +#: book.translate.xml:40243 msgid "" "Compression can have an unexpected side effect when combined with <link " "linkend=\"zfs-term-userquota\">User Quotas</link>. User quotas restrict how " @@ -59488,7 +60032,7 @@ msgstr "" "literal> 屬性),但因為更改影響了壓縮率,導致使用者達到配額的上限。" #. (itstool) path: sect2/para -#: book.translate.xml:40124 +#: book.translate.xml:40258 msgid "" "Compression can have a similar unexpected interaction with backups. Quotas " "are often used to limit how much data can be stored to ensure there is " @@ -59503,12 +60047,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-deduplication -#: book.translate.xml:40133 book.translate.xml:41277 +#: book.translate.xml:40267 book.translate.xml:41411 msgid "Deduplication" msgstr "去重複 (Deduplication)" #. (itstool) path: sect2/para -#: book.translate.xml:40135 +#: book.translate.xml:40269 msgid "" "When enabled, <link linkend=\"zfs-term-deduplication\">deduplication</link> " "uses the checksum of each block to detect duplicate blocks. When a new block " @@ -59527,20 +60071,20 @@ msgstr "" "啟壓縮功能來達成,而壓縮功能不需要使用額外的記憶體。" #. (itstool) path: sect2/para -#: book.translate.xml:40147 +#: book.translate.xml:40281 msgid "" "To activate deduplication, set the <literal>dedup</literal> property on the " "target pool:" msgstr "要開啟去重複功能,需在目標儲存池設定 <literal>dedup</literal> 屬性:" #. (itstool) path: sect2/screen -#: book.translate.xml:40150 +#: book.translate.xml:40284 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs set dedup=on <replaceable>pool</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40152 +#: book.translate.xml:40286 msgid "" "Only new data being written to the pool will be deduplicated. Data that has " "already been written to the pool will not be deduplicated merely by " @@ -59551,7 +60095,7 @@ msgstr "" "會因此啟動了這個選項而做去重複。查看已開啟去重複屬性的儲存池會如下:" #. (itstool) path: sect2/screen -#: book.translate.xml:40158 +#: book.translate.xml:40292 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -59560,7 +60104,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40162 +#: book.translate.xml:40296 msgid "" "The <literal>DEDUP</literal> column shows the actual rate of deduplication " "for the pool. A value of <literal>1.00x</literal> shows that data has not " @@ -59572,7 +60116,7 @@ msgstr "" "重複儲存池中複製三份 Port 樹到不同的目錄中。" #. (itstool) path: sect2/screen -#: book.translate.xml:40169 +#: book.translate.xml:40303 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -59582,12 +60126,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40174 +#: book.translate.xml:40308 msgid "Redundant data is detected and deduplicated:" msgstr "已經偵測到重複的資料並做去重複:" #. (itstool) path: sect2/screen -#: book.translate.xml:40176 +#: book.translate.xml:40310 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zpool list</userinput>\n" @@ -59596,7 +60140,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40180 +#: book.translate.xml:40314 msgid "" "The <literal>DEDUP</literal> column shows a factor of <literal>3.00x</" "literal>. Multiple copies of the ports tree data was detected and " @@ -59610,7 +60154,7 @@ msgstr "" "蹤去重複的資料區塊。" #. (itstool) path: sect2/para -#: book.translate.xml:40187 +#: book.translate.xml:40321 msgid "" "Deduplication is not always beneficial, especially when the data on a pool " "is not redundant. <acronym>ZFS</acronym> can show potential space savings by " @@ -59621,7 +60165,7 @@ msgstr "" "的空間:" #. (itstool) path: sect2/screen -#: book.translate.xml:40192 +#: book.translate.xml:40326 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>zdb -S <replaceable>pool</replaceable></userinput>\n" @@ -59647,7 +60191,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:40213 +#: book.translate.xml:40347 msgid "" "After <command>zdb -S</command> finishes analyzing the pool, it shows the " "space reduction ratio that would be achieved by activating deduplication. In " @@ -59675,12 +60219,12 @@ msgstr "" "\"zfs-term-deduplication\"><acronym>DDT</acronym></link> 時才開啟。" #. (itstool) path: sect2/title -#: book.translate.xml:40233 +#: book.translate.xml:40367 msgid "<acronym>ZFS</acronym> and Jails" msgstr "<acronym>ZFS</acronym> 與 Jail" #. (itstool) path: sect2/para -#: book.translate.xml:40235 +#: book.translate.xml:40369 msgid "" "<command>zfs jail</command> and the corresponding <literal>jailed</literal> " "property are used to delegate a <acronym>ZFS</acronym> dataset to a <link " @@ -59699,12 +60243,12 @@ msgstr "" "資料集被隔離便無法再掛載到主機,因為有掛載點可能會破壞主機的安全性。" #. (itstool) path: sect1/title -#: book.translate.xml:40251 +#: book.translate.xml:40385 msgid "Delegated Administration" msgstr "委託管理" #. (itstool) path: sect1/para -#: book.translate.xml:40253 +#: book.translate.xml:40387 msgid "" "A comprehensive permission delegation system allows unprivileged users to " "perform <acronym>ZFS</acronym> administration functions. For example, if " @@ -59722,12 +60266,12 @@ msgstr "" "委託給其他人,每個子指令與大多數屬性都可使用權限委託。" #. (itstool) path: sect2/title -#: book.translate.xml:40266 +#: book.translate.xml:40400 msgid "Delegating Dataset Creation" msgstr "委託資料集建立" #. (itstool) path: sect2/para -#: book.translate.xml:40268 +#: book.translate.xml:40402 msgid "" "<command>zfs allow <replaceable>someuser</replaceable> create " "<replaceable>mydataset</replaceable></command> gives the specified user " @@ -59750,12 +60294,12 @@ msgstr "" "systemitem> 使用者必須擁有掛載點在檔案系統中所在位置的權限才可掛載。" #. (itstool) path: sect2/title -#: book.translate.xml:40283 +#: book.translate.xml:40417 msgid "Delegating Permission Delegation" msgstr "委託權限委託" #. (itstool) path: sect2/para -#: book.translate.xml:40285 +#: book.translate.xml:40419 msgid "" "<command>zfs allow <replaceable>someuser</replaceable> allow " "<replaceable>mydataset</replaceable></command> gives the specified user the " @@ -59771,12 +60315,12 @@ msgstr "" "可以授權 <literal>snapshot</literal> 權限給其他使用者。" #. (itstool) path: sect2/title -#: book.translate.xml:40301 +#: book.translate.xml:40435 msgid "Tuning" msgstr "調校" #. (itstool) path: sect2/para -#: book.translate.xml:40303 +#: book.translate.xml:40437 msgid "" "There are a number of tunables that can be adjusted to make <acronym>ZFS</" "acronym> perform best for different workloads." @@ -59786,7 +60330,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_max -#: book.translate.xml:40309 +#: book.translate.xml:40443 msgid "" "<emphasis><varname>vfs.zfs.arc_max</varname></emphasis> - Maximum size of " "the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link>. The " @@ -59799,7 +60343,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_meta_limit -#: book.translate.xml:40320 +#: book.translate.xml:40454 msgid "" "<emphasis><varname>vfs.zfs.arc_meta_limit</varname></emphasis> - Limit the " "portion of the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link> " @@ -59814,7 +60358,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-arc_min -#: book.translate.xml:40334 +#: book.translate.xml:40468 msgid "" "<emphasis><varname>vfs.zfs.arc_min</varname></emphasis> - Minimum size of " "the <link linkend=\"zfs-term-arc\"><acronym>ARC</acronym></link>. The " @@ -59827,7 +60371,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-cache-size -#: book.translate.xml:40345 +#: book.translate.xml:40479 msgid "" "<emphasis><varname>vfs.zfs.vdev.cache.size</varname></emphasis> - A " "preallocated amount of memory reserved as a cache for each device in the " @@ -59838,7 +60382,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-min-auto-ashift -#: book.translate.xml:40354 +#: book.translate.xml:40488 msgid "" "<emphasis><varname>vfs.zfs.min_auto_ashift</varname></emphasis> - Minimum " "<varname>ashift</varname> (sector size) that will be used automatically at " @@ -59850,7 +60394,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40364 +#: book.translate.xml:40498 msgid "" "Many drives have 4 KB sectors. Using the default <varname>ashift</varname> " "of <literal>9</literal> with these drives results in write amplification on " @@ -59865,7 +60409,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40379 +#: book.translate.xml:40513 msgid "" "Forcing 4 KB blocks is also useful on pools where disk upgrades are planned. " "Future disks are likely to use 4 KB sectors, and <varname>ashift</varname> " @@ -59873,7 +60417,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40384 +#: book.translate.xml:40518 msgid "" "In some specific cases, the smaller 512-byte block size might be preferable. " "When used with 512-byte disks for databases, or as storage for virtual " @@ -59884,7 +60428,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-prefetch_disable -#: book.translate.xml:40393 +#: book.translate.xml:40527 msgid "" "<emphasis><varname>vfs.zfs.prefetch_disable</varname></emphasis> - Disable " "prefetch. A value of <literal>0</literal> is enabled and <literal>1</" @@ -59900,7 +60444,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-trim_on_init -#: book.translate.xml:40408 +#: book.translate.xml:40542 msgid "" "<emphasis><varname>vfs.zfs.vdev.trim_on_init</varname></emphasis> - Control " "whether new devices added to the pool have the <literal>TRIM</literal> " @@ -59914,7 +60458,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-vdev-max_pending -#: book.translate.xml:40420 +#: book.translate.xml:40554 msgid "" "<emphasis><varname>vfs.zfs.vdev.max_pending</varname></emphasis> - Limit the " "number of pending I/O requests per device. A higher value will keep the " @@ -59926,7 +60470,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-top_maxinflight -#: book.translate.xml:40429 +#: book.translate.xml:40563 msgid "" "<emphasis><varname>vfs.zfs.top_maxinflight</varname></emphasis> - Maxmimum " "number of outstanding I/Os per top-level <link linkend=\"zfs-term-vdev" @@ -59940,7 +60484,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-l2arc_write_max -#: book.translate.xml:40441 +#: book.translate.xml:40575 msgid "" "<emphasis><varname>vfs.zfs.l2arc_write_max</varname></emphasis> - Limit the " "amount of data written to the <link linkend=\"zfs-term-l2arc" @@ -59953,7 +60497,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-l2arc_write_boost -#: book.translate.xml:40450 +#: book.translate.xml:40584 msgid "" "<emphasis><varname>vfs.zfs.l2arc_write_boost</varname></emphasis> - The " "value of this tunable is added to <link linkend=\"zfs-advanced-tuning-" @@ -59969,7 +60513,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-scrub_delay -#: book.translate.xml:40462 +#: book.translate.xml:40596 msgid "" "<emphasis><varname>vfs.zfs.scrub_delay</varname></emphasis> - Number of " "ticks to delay between each I/O during a <link linkend=\"zfs-term-scrub" @@ -59994,7 +60538,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-resilver_delay -#: book.translate.xml:40489 +#: book.translate.xml:40623 msgid "" "<emphasis><varname>vfs.zfs.resilver_delay</varname></emphasis> - Number of " "milliseconds of delay inserted between each I/O during a <link linkend=\"zfs-" @@ -60020,7 +60564,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-scan_idle -#: book.translate.xml:40518 +#: book.translate.xml:40652 msgid "" "<emphasis><varname>vfs.zfs.scan_idle</varname></emphasis> - Number of " "milliseconds since the last operation before the pool is considered idle. " @@ -60033,7 +60577,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-advanced-tuning-txg-timeout -#: book.translate.xml:40529 +#: book.translate.xml:40663 msgid "" "<emphasis><varname>vfs.zfs.txg.timeout</varname></emphasis> - Maximum number " "of seconds between <link linkend=\"zfs-term-txg\">transaction group</link>s. " @@ -60048,12 +60592,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:40566 +#: book.translate.xml:40700 msgid "<acronym>ZFS</acronym> on i386" msgstr "i386 上的 <acronym>ZFS</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:40568 +#: book.translate.xml:40702 msgid "" "Some of the features provided by <acronym>ZFS</acronym> are memory " "intensive, and may require tuning for maximum efficiency on systems with " @@ -60063,12 +60607,12 @@ msgstr "" "<acronym>RAM</acronym> 的系統調校來取得最佳的效率。" #. (itstool) path: sect3/title -#: book.translate.xml:40574 +#: book.translate.xml:40708 msgid "Memory" msgstr "記憶體" #. (itstool) path: sect3/para -#: book.translate.xml:40576 +#: book.translate.xml:40710 msgid "" "As a bare minimum, the total system memory should be at least one gigabyte. " "The amount of recommended <acronym>RAM</acronym> depends upon the size of " @@ -60089,12 +60633,12 @@ msgstr "" "要更進一步的調校。" #. (itstool) path: sect3/title -#: book.translate.xml:40591 book.translate.xml:62566 +#: book.translate.xml:40725 book.translate.xml:62193 msgid "Kernel Configuration" msgstr "核心設定" #. (itstool) path: sect3/para -#: book.translate.xml:40593 +#: book.translate.xml:40727 msgid "" "Due to the address space limitations of the <trademark>i386</trademark> " "platform, <acronym>ZFS</acronym> users on the <trademark>i386</trademark> " @@ -60106,13 +60650,13 @@ msgstr "" "定檔,重新編譯核心並重新開啟:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:40599 +#: book.translate.xml:40733 #, no-wrap msgid "options KVA_PAGES=512" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:40601 +#: book.translate.xml:40735 msgid "" "This expands the kernel address space, allowing the <varname>vm.kvm_size</" "varname> tunable to be pushed beyond the currently imposed limit of 1 GB, or " @@ -60126,12 +60670,12 @@ msgstr "" "<literal>512</literal>。" #. (itstool) path: sect3/title -#: book.translate.xml:40611 +#: book.translate.xml:40745 msgid "Loader Tunables" msgstr "載入程式可調參數" #. (itstool) path: sect3/para -#: book.translate.xml:40613 +#: book.translate.xml:40747 msgid "" "The <filename>kmem</filename> address space can be increased on all FreeBSD " "architectures. On a test system with 1 GB of physical memory, success was " @@ -60143,7 +60687,7 @@ msgstr "" "conf</filename>,重新開啟系統,可成功設定。" #. (itstool) path: sect3/programlisting -#: book.translate.xml:40620 +#: book.translate.xml:40754 #, no-wrap msgid "" "vm.kmem_size=\"330M\"\n" @@ -60153,7 +60697,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:40625 +#: book.translate.xml:40759 msgid "" "For a more detailed list of recommendations for <acronym>ZFS</acronym>-" "related tuning, see <link xlink:href=\"http://wiki.freebsd.org/ZFSTuningGuide" @@ -60163,54 +60707,54 @@ msgstr "" "xlink:href=\"http://wiki.freebsd.org/ZFSTuningGuide\"/>。" #. (itstool) path: sect1/title -#: book.translate.xml:40632 +#: book.translate.xml:40766 msgid "Additional Resources" msgstr "其他資源" #. (itstool) path: listitem/para -#: book.translate.xml:40636 +#: book.translate.xml:40770 msgid "" "<link xlink:href=\"https://wiki.freebsd.org/ZFS\">FreeBSD Wiki - " "<acronym>ZFS</acronym></link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40641 +#: book.translate.xml:40775 msgid "" "<link xlink:href=\"https://wiki.freebsd.org/ZFSTuningGuide\">FreeBSD Wiki - " "<acronym>ZFS</acronym> Tuning</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40646 +#: book.translate.xml:40780 msgid "" "<link xlink:href=\"http://wiki.illumos.org/display/illumos/ZFS\">Illumos " "Wiki - <acronym>ZFS</acronym></link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40651 +#: book.translate.xml:40785 msgid "" "<link xlink:href=\"http://docs.oracle.com/cd/E19253-01/819-5461/index.html" "\">Oracle Solaris <acronym>ZFS</acronym> Administration Guide</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40657 +#: book.translate.xml:40791 msgid "" "<link xlink:href=\"http://www.solarisinternals.com/wiki/index.php/" "ZFS_Evil_Tuning_Guide\"><acronym>ZFS</acronym> Evil Tuning Guide</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40662 +#: book.translate.xml:40796 msgid "" "<link xlink:href=\"http://www.solarisinternals.com/wiki/index.php/" "ZFS_Best_Practices_Guide\"><acronym>ZFS</acronym> Best Practices Guide</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:40667 +#: book.translate.xml:40801 msgid "" "<link xlink:href=\"https://calomel.org/zfs_raid_speed_capacity.html" "\">Calomel Blog - <acronym>ZFS</acronym> Raidz Performance, Capacity and " @@ -60218,12 +60762,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:40675 +#: book.translate.xml:40809 msgid "<acronym>ZFS</acronym> Features and Terminology" msgstr "<acronym>ZFS</acronym> 特色與術語" #. (itstool) path: sect1/para -#: book.translate.xml:40677 +#: book.translate.xml:40811 msgid "" "<acronym>ZFS</acronym> is a fundamentally different file system because it " "is more than just a file system. <acronym>ZFS</acronym> combines the roles " @@ -60254,12 +60798,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-pool -#: book.translate.xml:40701 +#: book.translate.xml:40835 msgid "pool" msgstr "儲存池 (Pool)" #. (itstool) path: note/para -#: book.translate.xml:40715 +#: book.translate.xml:40849 msgid "" "FreeBSD 9.0 and 9.1 include support for <acronym>ZFS</acronym> version 28. " "Later versions use <acronym>ZFS</acronym> version 5000 with feature flags. " @@ -60271,7 +60815,7 @@ msgstr "" "統有更佳的相容性,能夠與其他人實作的 <acronym>ZFS</acronym> 相容。" #. (itstool) path: row/entry -#: book.translate.xml:40703 +#: book.translate.xml:40837 msgid "" "A storage <emphasis>pool</emphasis> is the most basic building block of " "<acronym>ZFS</acronym>. A pool is made up of one or more vdevs, the " @@ -60291,13 +60835,13 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-vdev -#: book.translate.xml:40726 +#: book.translate.xml:40860 msgid "vdev Types" msgstr "vdev 型態 (vdev Types)" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-disk -#: book.translate.xml:40737 +#: book.translate.xml:40871 msgid "" "<emphasis>Disk</emphasis> - The most basic type of vdev is a standard block " "device. This can be an entire disk (such as <filename><replaceable>/dev/" @@ -60316,7 +60860,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-file -#: book.translate.xml:40752 +#: book.translate.xml:40886 msgid "" "<emphasis>File</emphasis> - In addition to disks, <acronym>ZFS</acronym> " "pools can be backed by regular files, this is especially useful for testing " @@ -60330,7 +60874,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-mirror -#: book.translate.xml:40762 +#: book.translate.xml:40896 msgid "" "<emphasis>Mirror</emphasis> - When creating a mirror, specify the " "<literal>mirror</literal> keyword followed by the list of member devices for " @@ -60345,7 +60889,7 @@ msgstr "" "故障只剩其中一個而不損失任何資料。" #. (itstool) path: note/para -#: book.translate.xml:40773 +#: book.translate.xml:40907 msgid "" "A regular single disk vdev can be upgraded to a mirror vdev at any time with " "<command>zpool <link linkend=\"zfs-zpool-attach\">attach</link></command>." @@ -60355,7 +60899,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-raidz -#: book.translate.xml:40781 +#: book.translate.xml:40915 msgid "" "<emphasis><acronym>RAID-Z</acronym></emphasis> - <acronym>ZFS</acronym> " "implements <acronym>RAID-Z</acronym>, a variation on standard " @@ -60379,7 +60923,7 @@ msgstr "" "<acronym>RAID-Z3</acronym> 。" #. (itstool) path: listitem/para -#: book.translate.xml:40799 +#: book.translate.xml:40933 msgid "" "In a <acronym>RAID-Z1</acronym> configuration with four disks, each 1 TB, " "usable storage is 3 TB and the pool will still be able to operate in " @@ -60392,7 +60936,7 @@ msgstr "" "未更換並修復 (Resilver) 之前又有磁碟故障,所有在儲存池中的資料便會遺失。" #. (itstool) path: listitem/para -#: book.translate.xml:40807 +#: book.translate.xml:40941 msgid "" "In a <acronym>RAID-Z3</acronym> configuration with eight disks of 1 TB, the " "volume will provide 5 TB of usable space and still be able to operate with " @@ -60407,7 +60951,7 @@ msgstr "" "vdev,這樣儲存池的資料便會分散到這兩個 vdev。" #. (itstool) path: listitem/para -#: book.translate.xml:40816 +#: book.translate.xml:40950 msgid "" "A configuration of two <acronym>RAID-Z2</acronym> vdevs consisting of 8 " "disks each would create something similar to a <acronym>RAID-60</acronym> " @@ -60425,7 +60969,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-spare -#: book.translate.xml:40831 +#: book.translate.xml:40965 msgid "" "<emphasis>Spare</emphasis> - <acronym>ZFS</acronym> has a special pseudo-" "vdev type for keeping track of available hot spares. Note that installed hot " @@ -60439,7 +60983,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-log -#: book.translate.xml:40841 +#: book.translate.xml:40975 msgid "" "<emphasis>Log</emphasis> - <acronym>ZFS</acronym> Log Devices, also known as " "<acronym>ZFS</acronym> Intent Log (<link linkend=\"zfs-term-zil" @@ -60460,7 +61004,7 @@ msgstr "" #. (itstool) path: listitem/para #. (itstool) id: book.translate.xml#zfs-term-vdev-cache -#: book.translate.xml:40856 +#: book.translate.xml:40990 msgid "" "<emphasis>Cache</emphasis> - Adding a cache vdev to a pool will add the " "storage of the cache to the <link linkend=\"zfs-term-l2arc\"><acronym>L2ARC</" @@ -60472,7 +61016,7 @@ msgstr "" "置無法做鏡像,因快取裝置只會儲存額外的現有資料的複本,並沒有資料遺失的風險。" #. (itstool) path: row/entry -#: book.translate.xml:40728 +#: book.translate.xml:40862 msgid "" "A pool is made up of one or more vdevs, which themselves can be a single " "disk or a group of disks, in the case of a <acronym>RAID</acronym> " @@ -60486,12 +61030,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-txg -#: book.translate.xml:40867 +#: book.translate.xml:41001 msgid "Transaction Group (<acronym>TXG</acronym>)" msgstr "交易群組 (Transaction Group, <acronym>TXG</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:40881 +#: book.translate.xml:41015 msgid "" "<emphasis>Open</emphasis> - When a new transaction group is created, it is " "in the open state, and accepts new writes. There is always a transaction " @@ -60508,7 +61052,7 @@ msgstr "" "交易群組便會繼續進入下一個狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:40893 +#: book.translate.xml:41027 msgid "" "<emphasis>Quiescing</emphasis> - A short state that allows any pending " "operations to finish while not blocking the creation of a new open " @@ -60520,7 +61064,7 @@ msgstr "" "便會進入到最終狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:40902 +#: book.translate.xml:41036 msgid "" "<emphasis>Syncing</emphasis> - All of the data in the transaction group is " "written to stable storage. This process will in turn modify other data, such " @@ -60547,7 +61091,7 @@ msgstr "" "態。" #. (itstool) path: row/entry -#: book.translate.xml:40870 +#: book.translate.xml:41004 msgid "" "Transaction Groups are the way changed blocks are grouped together and " "eventually written to the pool. Transaction groups are the atomic unit that " @@ -60571,12 +61115,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-arc -#: book.translate.xml:40934 +#: book.translate.xml:41068 msgid "Adaptive Replacement Cache (<acronym>ARC</acronym>)" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40937 +#: book.translate.xml:41071 msgid "" "<acronym>ZFS</acronym> uses an Adaptive Replacement Cache (<acronym>ARC</" "acronym>), rather than a more traditional Least Recently Used (<acronym>LRU</" @@ -60613,12 +61157,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-l2arc -#: book.translate.xml:40965 +#: book.translate.xml:41099 msgid "<acronym>L2ARC</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:40967 +#: book.translate.xml:41101 msgid "" "<acronym>L2ARC</acronym> is the second level of the <acronym>ZFS</acronym> " "caching system. The primary <acronym>ARC</acronym> is stored in " @@ -60672,12 +61216,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-zil -#: book.translate.xml:41002 +#: book.translate.xml:41136 msgid "<acronym>ZIL</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:41004 +#: book.translate.xml:41138 msgid "" "<acronym>ZIL</acronym> accelerates synchronous transactions by using storage " "devices like <acronym>SSD</acronym>s that are faster than those used in the " @@ -60699,12 +61243,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-cow -#: book.translate.xml:41020 +#: book.translate.xml:41154 msgid "Copy-On-Write" msgstr "寫入時複製 (Copy-On-Write)" #. (itstool) path: row/entry -#: book.translate.xml:41022 +#: book.translate.xml:41156 msgid "" "Unlike a traditional file system, when data is overwritten on <acronym>ZFS</" "acronym>, the new data is written to a different block rather than " @@ -60726,12 +61270,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-dataset -#: book.translate.xml:41036 +#: book.translate.xml:41170 msgid "Dataset" msgstr "資料集 (Dataset)" #. (itstool) path: row/entry -#: book.translate.xml:41038 +#: book.translate.xml:41172 msgid "" "<emphasis>Dataset</emphasis> is the generic term for a <acronym>ZFS</" "acronym> file system, volume, snapshot or clone. Each dataset has a unique " @@ -60758,12 +61302,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-filesystem -#: book.translate.xml:41060 +#: book.translate.xml:41194 msgid "File system" msgstr "檔案系統 (File system)" #. (itstool) path: row/entry -#: book.translate.xml:41062 +#: book.translate.xml:41196 msgid "" "A <acronym>ZFS</acronym> dataset is most often used as a file system. Like " "most other file systems, a <acronym>ZFS</acronym> file system is mounted " @@ -60776,12 +61320,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-volume -#: book.translate.xml:41071 +#: book.translate.xml:41205 msgid "Volume" msgstr "磁碟區 (Volume)" #. (itstool) path: row/entry -#: book.translate.xml:41073 +#: book.translate.xml:41207 msgid "" "In additional to regular file system datasets, <acronym>ZFS</acronym> can " "also create volumes, which are block devices. Volumes have many of the same " @@ -60798,12 +61342,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-snapshot -#: book.translate.xml:41085 +#: book.translate.xml:41219 msgid "Snapshot" msgstr "快照 (Snapshot)" #. (itstool) path: row/entry -#: book.translate.xml:41087 +#: book.translate.xml:41221 msgid "" "The <link linkend=\"zfs-term-cow\">copy-on-write</link> (<acronym>COW</" "acronym>) design of <acronym>ZFS</acronym> allows for nearly instantaneous, " @@ -60851,12 +61395,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-clone -#: book.translate.xml:41126 +#: book.translate.xml:41260 msgid "Clone" msgstr "複本 (Clone)" #. (itstool) path: row/entry -#: book.translate.xml:41128 +#: book.translate.xml:41262 msgid "" "Snapshots can also be cloned. A clone is a writable version of a snapshot, " "allowing the file system to be forked as a new dataset. As with a snapshot, " @@ -60882,27 +61426,27 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-checksum -#: book.translate.xml:41148 +#: book.translate.xml:41282 msgid "Checksum" msgstr "校驗碼 (Checksum)" #. (itstool) path: listitem/para -#: book.translate.xml:41164 +#: book.translate.xml:41298 msgid "<literal>fletcher2</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41168 +#: book.translate.xml:41302 msgid "<literal>fletcher4</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41172 +#: book.translate.xml:41306 msgid "<literal>sha256</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:41150 +#: book.translate.xml:41284 msgid "" "Every block that is allocated is also checksummed. The checksum algorithm " "used is a per-dataset property, see <link linkend=\"zfs-zfs-set" @@ -60929,7 +61473,7 @@ msgstr "" "效能,但其有強大的密碼雜湊與較低的衝突率。也可關閉資料校驗,但並不建議。" #. (itstool) path: listitem/para -#: book.translate.xml:41196 +#: book.translate.xml:41330 msgid "" "<emphasis><acronym>LZ4</acronym></emphasis> - Added in <acronym>ZFS</" "acronym> pool version 5000 (feature flags), <acronym>LZ4</acronym> is now " @@ -60950,12 +61494,12 @@ msgstr "" "1.5 GB/s (每個 CPU 核心)。" #. (itstool) path: note/para -#: book.translate.xml:41213 +#: book.translate.xml:41347 msgid "<acronym>LZ4</acronym> compression is only available after FreeBSD 9.2." msgstr "<acronym>LZ4</acronym> 壓縮只在 FreeBSD 9.2 之後可使用。" #. (itstool) path: listitem/para -#: book.translate.xml:41219 +#: book.translate.xml:41353 msgid "" "<emphasis><acronym>LZJB</acronym></emphasis> - The default compression " "algorithm. Created by Jeff Bonwick (one of the original creators of " @@ -60970,7 +61514,7 @@ msgstr "" "提供較佳的壓縮功能。在未來預設的壓縮演算法將會更換為 <acronym>LZ4</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:41231 +#: book.translate.xml:41365 msgid "" "<emphasis><acronym>GZIP</acronym></emphasis> - A popular stream compression " "algorithm available in <acronym>ZFS</acronym>. One of the main advantages of " @@ -60989,7 +61533,7 @@ msgstr "" "間。" #. (itstool) path: listitem/para -#: book.translate.xml:41247 +#: book.translate.xml:41381 msgid "" "<emphasis><acronym>ZLE</acronym></emphasis> - Zero Length Encoding is a " "special compression algorithm that only compresses continuous runs of zeros. " @@ -61001,7 +61545,7 @@ msgstr "" "用。" #. (itstool) path: row/entry -#: book.translate.xml:41186 +#: book.translate.xml:41320 msgid "" "Each dataset has a compression property, which defaults to off. This " "property can be set to one of a number of compression algorithms. This will " @@ -61016,12 +61560,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-copies -#: book.translate.xml:41258 +#: book.translate.xml:41392 msgid "Copies" msgstr "備份數 (Copies)" #. (itstool) path: row/entry -#: book.translate.xml:41260 +#: book.translate.xml:41394 msgid "" "When set to a value greater than 1, the <literal>copies</literal> property " "instructs <acronym>ZFS</acronym> to maintain multiple copies of each block " @@ -61042,7 +61586,7 @@ msgstr "" "損失的資料。" #. (itstool) path: row/entry -#: book.translate.xml:41279 +#: book.translate.xml:41413 msgid "" "Checksums make it possible to detect duplicate blocks of data as they are " "written. With deduplication, the reference count of an existing, identical " @@ -61089,12 +61633,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-scrub -#: book.translate.xml:41317 +#: book.translate.xml:41451 msgid "Scrub" msgstr "清潔 (Scrub)" #. (itstool) path: row/entry -#: book.translate.xml:41319 +#: book.translate.xml:41453 msgid "" "Instead of a consistency check like <citerefentry><refentrytitle>fsck</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, <acronym>ZFS</" @@ -61126,12 +61670,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-quota -#: book.translate.xml:41339 +#: book.translate.xml:41473 msgid "Dataset Quota" msgstr "資料集配額 (Dataset Quota)" #. (itstool) path: entry/para -#: book.translate.xml:41348 +#: book.translate.xml:41482 msgid "" "<acronym>ZFS</acronym> supports different types of quotas: the dataset " "quota, the <link linkend=\"zfs-term-refquota\">reference quota " @@ -61145,7 +61689,7 @@ msgstr "" "以及群組配額 (<link linkend=\"zfs-term-groupquota\">Group quota</link>)。" #. (itstool) path: entry/para -#: book.translate.xml:41356 +#: book.translate.xml:41490 msgid "" "Quotas limit the amount of space that a dataset and all of its descendants, " "including snapshots of the dataset, child datasets, and the snapshots of " @@ -61155,7 +61699,7 @@ msgstr "" "量。" #. (itstool) path: note/para -#: book.translate.xml:41362 +#: book.translate.xml:41496 msgid "" "Quotas cannot be set on volumes, as the <literal>volsize</literal> property " "acts as an implicit quota." @@ -61164,7 +61708,7 @@ msgstr "" "配額。" #. (itstool) path: row/entry -#: book.translate.xml:41341 +#: book.translate.xml:41475 msgid "" "<acronym>ZFS</acronym> provides very fast and accurate dataset, user, and " "group space accounting in addition to quotas and space reservations. This " @@ -61178,12 +61722,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-refquota -#: book.translate.xml:41369 +#: book.translate.xml:41503 msgid "Reference Quota" msgstr "參考配額 (Reference Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41372 +#: book.translate.xml:41506 msgid "" "A reference quota limits the amount of space a dataset can consume by " "enforcing a hard limit. However, this hard limit includes only space that " @@ -61196,12 +61740,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-userquota -#: book.translate.xml:41380 +#: book.translate.xml:41514 msgid "User Quota" msgstr "使用者配額 (User Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41383 +#: book.translate.xml:41517 msgid "" "User quotas are useful to limit the amount of space that can be used by the " "specified user." @@ -61209,12 +61753,12 @@ msgstr "使用者配額在用來限制特定使用者能使用的空間量時非 #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-groupquota -#: book.translate.xml:41388 +#: book.translate.xml:41522 msgid "Group Quota" msgstr "群組配額 (Group Quota)" #. (itstool) path: row/entry -#: book.translate.xml:41391 +#: book.translate.xml:41525 msgid "" "The group quota limits the amount of space that a specified group can " "consume." @@ -61222,12 +61766,12 @@ msgstr "群組配額可以限制特定群組能使用的空間量。" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-reservation -#: book.translate.xml:41396 +#: book.translate.xml:41530 msgid "Dataset Reservation" msgstr "資料集保留空間 (Dataset Reservation)" #. (itstool) path: entry/para -#: book.translate.xml:41414 +#: book.translate.xml:41548 msgid "" "Reservations of any sort are useful in many situations, such as planning and " "testing the suitability of disk space allocation in a new system, or " @@ -61238,7 +61782,7 @@ msgstr "" "上的適應性,或是確保有足夠的空間供稽查日誌或系統還原程序及檔案使用。" #. (itstool) path: row/entry -#: book.translate.xml:41399 +#: book.translate.xml:41533 msgid "" "The <literal>reservation</literal> property makes it possible to guarantee a " "minimum amount of space for a specific dataset and its descendants. If a " @@ -61260,12 +61804,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-refreservation -#: book.translate.xml:41424 +#: book.translate.xml:41558 msgid "Reference Reservation" msgstr "參考保留空間 (Reference Reservation)" #. (itstool) path: row/entry -#: book.translate.xml:41427 +#: book.translate.xml:41561 msgid "" "The <literal>refreservation</literal> property makes it possible to " "guarantee a minimum amount of space for the use of a specific dataset " @@ -61293,12 +61837,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-resilver -#: book.translate.xml:41449 +#: book.translate.xml:41583 msgid "Resilver" msgstr "修復 (Resilver)" #. (itstool) path: row/entry -#: book.translate.xml:41451 +#: book.translate.xml:41585 msgid "" "When a disk fails and is replaced, the new disk must be filled with the data " "that was lost. The process of using the parity information distributed " @@ -61311,12 +61855,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-online -#: book.translate.xml:41460 +#: book.translate.xml:41594 msgid "Online" msgstr "上線 (Online)" #. (itstool) path: row/entry -#: book.translate.xml:41462 +#: book.translate.xml:41596 msgid "" "A pool or vdev in the <literal>Online</literal> state has all of its member " "devices connected and fully operational. Individual devices in the " @@ -61328,12 +61872,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-offline -#: book.translate.xml:41470 +#: book.translate.xml:41604 msgid "Offline" msgstr "離線 (Offline)" #. (itstool) path: row/entry -#: book.translate.xml:41472 +#: book.translate.xml:41606 msgid "" "Individual devices can be put in an <literal>Offline</literal> state by the " "administrator if there is sufficient redundancy to avoid putting the pool or " @@ -61348,12 +61892,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-degraded -#: book.translate.xml:41483 +#: book.translate.xml:41617 msgid "Degraded" msgstr "降級 (Degraded)" #. (itstool) path: row/entry -#: book.translate.xml:41485 +#: book.translate.xml:41619 msgid "" "A pool or vdev in the <literal>Degraded</literal> state has one or more " "disks that have been disconnected or have failed. The pool is still usable, " @@ -61371,12 +61915,12 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) id: book.translate.xml#zfs-term-faulted -#: book.translate.xml:41498 +#: book.translate.xml:41632 msgid "Faulted" msgstr "故障 (Faulted)" #. (itstool) path: row/entry -#: book.translate.xml:41500 +#: book.translate.xml:41634 msgid "" "A pool or vdev in the <literal>Faulted</literal> state is no longer " "operational. The data on it can no longer be accessed. A pool or vdev enters " @@ -61395,22 +61939,22 @@ msgstr "" "還原。" #. (itstool) path: info/title -#: book.translate.xml:41525 +#: book.translate.xml:41659 msgid "Other File Systems" msgstr "其他檔案系統" #. (itstool) path: sect1/indexterm -#: book.translate.xml:41536 +#: book.translate.xml:41670 msgid "<primary>File Systems</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:41537 +#: book.translate.xml:41671 msgid "<primary>File Systems Support</primary> <see>File Systems</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41542 +#: book.translate.xml:41676 msgid "" "File systems are an integral part of any operating system. They allow users " "to upload and store files, provide access to data, and make hard drives " @@ -61423,7 +61967,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41552 +#: book.translate.xml:41686 msgid "" "In addition to its native file systems, FreeBSD supports a multitude of " "other file systems so that data from other operating systems can be accessed " @@ -61434,7 +61978,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41560 +#: book.translate.xml:41694 msgid "" "There are different levels of FreeBSD support for the various file systems. " "Some require a kernel module to be loaded and others may require a toolset " @@ -61443,56 +61987,56 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41570 +#: book.translate.xml:41704 msgid "The difference between native and supported file systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41575 +#: book.translate.xml:41709 msgid "Which file systems are supported by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41579 +#: book.translate.xml:41713 msgid "" "How to enable, configure, access, and make use of non-native file systems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41588 +#: book.translate.xml:41722 msgid "" "Understand <trademark class=\"registered\">UNIX</trademark> and <link " "linkend=\"basics\">FreeBSD basics</link>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41593 +#: book.translate.xml:41727 msgid "" "Be familiar with the basics of <link linkend=\"kernelconfig\">kernel " "configuration and compilation</link>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41598 +#: book.translate.xml:41732 msgid "" "Feel comfortable <link linkend=\"ports\">installing software</link> in " "FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:41603 +#: book.translate.xml:41737 msgid "" "Have some familiarity with <link linkend=\"disks\">disks</link>, storage, " "and device names in FreeBSD." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:41610 +#: book.translate.xml:41744 msgid "<trademark class=\"registered\">Linux</trademark> File Systems" msgstr "<trademark class=\"registered\">Linux</trademark> 檔案系統" #. (itstool) path: sect1/para -#: book.translate.xml:41612 +#: book.translate.xml:41746 msgid "" "FreeBSD provides built-in support for several <trademark class=\"registered" "\">Linux</trademark> file systems. This section demonstrates how to load " @@ -61501,12 +62045,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41617 +#: book.translate.xml:41751 msgid "<acronym>ext2</acronym>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41619 +#: book.translate.xml:41753 msgid "" "Kernel support for ext2 file systems has been available since FreeBSD 2.2. " "In FreeBSD 8.x and earlier, the code is licensed under the <acronym>GPL</" @@ -61515,7 +62059,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41626 +#: book.translate.xml:41760 msgid "" "The <citerefentry><refentrytitle>ext2fs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> driver allows the FreeBSD kernel to both read and " @@ -61523,7 +62067,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:41630 +#: book.translate.xml:41764 msgid "" "This driver can also be used to access ext3 and ext4 file systems. However, " "ext3 journaling and extended attributes are not supported. Support for ext4 " @@ -61531,18 +62075,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41636 +#: book.translate.xml:41770 msgid "To access an ext file system, first load the kernel loadable module:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41639 +#: book.translate.xml:41773 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload ext2fs</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41641 +#: book.translate.xml:41775 msgid "" "Then, mount the ext volume by specifying its FreeBSD partition name and an " "existing mount point. This example mounts <filename>/dev/ad1s1</filename> on " @@ -61550,68 +62094,68 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41646 +#: book.translate.xml:41780 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t ext2fs <replaceable>/dev/ad1s1</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41650 +#: book.translate.xml:41784 msgid "ReiserFS" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41652 +#: book.translate.xml:41786 msgid "" "FreeBSD provides read-only support for The Reiser file system, ReiserFS." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41655 +#: book.translate.xml:41789 msgid "" "To load the <citerefentry><refentrytitle>reiserfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry> driver:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41657 +#: book.translate.xml:41791 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload reiserfs</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41659 +#: book.translate.xml:41793 msgid "" "Then, to mount a ReiserFS volume located on <filename>/dev/ad1s1</filename>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:41662 +#: book.translate.xml:41796 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount -t reiserfs <replaceable>/dev/ad1s1</replaceable> <replaceable>/mnt</replaceable></userinput>" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:41717 +#: book.translate.xml:41851 msgid "Virtualization" msgstr "虛擬化" #. (itstool) path: authorgroup/author -#: book.translate.xml:41720 book.translate.xml:56758 +#: book.translate.xml:41854 book.translate.xml:56379 msgid "" "<personname> <firstname>Murray</firstname> <surname>Stokely</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:41730 +#: book.translate.xml:41864 msgid "" "<personname> <firstname>Allan</firstname> <surname>Jude</surname> </" "personname> <contrib>bhyve section by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:41743 +#: book.translate.xml:41877 msgid "" "Virtualization software allows multiple operating systems to run " "simultaneously on the same computer. Such software systems for <acronym>PC</" @@ -61623,13 +62167,13 @@ msgstr "" "安裝在其中的客端 (Guest) 作業系統。" #. (itstool) path: listitem/para -#: book.translate.xml:41753 +#: book.translate.xml:41887 msgid "" "The difference between a host operating system and a guest operating system." msgstr "主端作業系統及客端作業系統的差別。" #. (itstool) path: listitem/para -#: book.translate.xml:41758 +#: book.translate.xml:41892 msgid "" "How to install FreeBSD on an <trademark class=\"registered\">Intel</" "trademark>-based <trademark class=\"registered\">Apple</trademark> " @@ -61640,7 +62184,7 @@ msgstr "" "trademark> 電腦安裝 FreeBSD 。" #. (itstool) path: listitem/para -#: book.translate.xml:41763 +#: book.translate.xml:41897 msgid "" "How to install FreeBSD on <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> with " @@ -61651,17 +62195,17 @@ msgstr "" "application> 安裝 FreeBSD。" #. (itstool) path: listitem/para -#: book.translate.xml:41768 +#: book.translate.xml:41902 msgid "How to install FreeBSD as a guest in <application>bhyve</application>." msgstr "如何以 FreeBSD 作為客端安裝在 <application>bhyve</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:41773 +#: book.translate.xml:41907 msgid "How to tune a FreeBSD system for best performance under virtualization." msgstr "如何調校 FreeBSD 系統來取得虛擬化的最佳效能。" #. (itstool) path: listitem/para -#: book.translate.xml:41783 +#: book.translate.xml:41917 msgid "" "Understand the <link linkend=\"basics\">basics of <trademark class=" "\"registered\">UNIX</trademark> and FreeBSD</link>." @@ -61670,26 +62214,26 @@ msgstr "" "trademark> 與 FreeBSD 的基礎</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:41788 +#: book.translate.xml:41922 msgid "Know how to <link linkend=\"bsdinstall\">install FreeBSD</link>." msgstr "知道如何<link linkend=\"bsdinstall\">安裝 FreeBSD</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:41793 +#: book.translate.xml:41927 msgid "" "Know how to <link linkend=\"advanced-networking\">set up a network " "connection</link>." msgstr "知道如何<link linkend=\"advanced-networking\">設定網路連線</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:41798 +#: book.translate.xml:41932 msgid "" "Know how to <link linkend=\"ports\">install additional third-party software</" "link>." msgstr "知道如何<link linkend=\"ports\">安裝其他第三方軟體</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:41805 +#: book.translate.xml:41939 msgid "" "FreeBSD as a Guest on <application>Parallels</application> for <trademark " "class=\"registered\">Mac OS</trademark> X" @@ -61698,7 +62242,7 @@ msgstr "" "<application>Parallels</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:41808 +#: book.translate.xml:41942 msgid "" "<application>Parallels Desktop</application> for <trademark class=" "\"registered\">Mac</trademark> is a commercial software product available " @@ -61721,7 +62265,7 @@ msgstr "" "必先完成虛擬機器的設定後才可安裝想使用的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:41817 +#: book.translate.xml:41951 msgid "" "Installing FreeBSD on Parallels/<trademark class=\"registered\">Mac OS</" "trademark> X" @@ -61730,7 +62274,7 @@ msgstr "" "FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41819 +#: book.translate.xml:41953 msgid "" "The first step in installing FreeBSD on <application>Parallels</application> " "is to create a new virtual machine for installing FreeBSD. Select " @@ -61746,13 +62290,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41827 +#: book.translate.xml:41961 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41831 +#: book.translate.xml:41965 msgid "" "Choose a reasonable amount of disk and memory depending on the plans for " "this virtual FreeBSD instance. 4GB of disk space and 512MB of RAM work well " @@ -61767,7 +62311,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41838 +#: book.translate.xml:41972 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd2' md5='__failed__'" msgstr "" @@ -61777,7 +62321,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41844 +#: book.translate.xml:41978 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd3' md5='__failed__'" msgstr "" @@ -61787,7 +62331,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41850 +#: book.translate.xml:41984 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd4' md5='__failed__'" msgstr "" @@ -61797,13 +62341,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41856 +#: book.translate.xml:41990 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd5' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41860 +#: book.translate.xml:41994 msgid "Select the type of networking and a network interface:" msgstr "選擇網路類型以及網路介面:" @@ -61812,7 +62356,7 @@ msgstr "選擇網路類型以及網路介面:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41865 +#: book.translate.xml:41999 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd6' md5='__failed__'" msgstr "" @@ -61822,13 +62366,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41871 +#: book.translate.xml:42005 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd7' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41875 book.translate.xml:42059 +#: book.translate.xml:42009 book.translate.xml:42193 msgid "Save and finish the configuration:" msgstr "儲存並完成設定:" @@ -61837,7 +62381,7 @@ msgstr "儲存並完成設定:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41879 +#: book.translate.xml:42013 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd8' md5='__failed__'" msgstr "" @@ -61847,13 +62391,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41885 +#: book.translate.xml:42019 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd9' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41889 +#: book.translate.xml:42023 msgid "" "After the FreeBSD virtual machine has been created, FreeBSD can be installed " "on it. This is best done with an official FreeBSD <acronym>CD</acronym>/" @@ -61885,13 +62429,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41906 +#: book.translate.xml:42040 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41910 +#: book.translate.xml:42044 msgid "" "Once this association with the <acronym>CD-ROM</acronym> source has been " "made, reboot the FreeBSD virtual machine by clicking the reboot icon. " @@ -61908,13 +62452,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41919 +#: book.translate.xml:42053 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41923 +#: book.translate.xml:42057 msgid "" "In this case it will find the FreeBSD installation media and begin a normal " "FreeBSD installation. Perform the installation, but do not attempt to " @@ -61928,13 +62472,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41930 +#: book.translate.xml:42064 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:41934 +#: book.translate.xml:42068 msgid "" "When the installation is finished, reboot into the newly installed FreeBSD " "virtual machine." @@ -61945,18 +62489,18 @@ msgstr "當安裝完成後,重新開機將會進入新安裝的 FreeBSD 虛擬 #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:41939 +#: book.translate.xml:42073 msgctxt "_" msgid "external ref='virtualization/parallels-freebsd13' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:41945 +#: book.translate.xml:42079 msgid "Configuring FreeBSD on <application>Parallels</application>" msgstr "在 <application>Parallels</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:41948 +#: book.translate.xml:42082 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Mac OS</trademark> X with <application>Parallels</" @@ -61968,12 +62512,12 @@ msgstr "" "在虛擬機器上的運作。" #. (itstool) path: step/title -#: book.translate.xml:41955 book.translate.xml:42160 book.translate.xml:42364 +#: book.translate.xml:42089 book.translate.xml:42294 book.translate.xml:42498 msgid "Set Boot Loader Variables" msgstr "設定 Boot Loader 變數" #. (itstool) path: step/para -#: book.translate.xml:41957 +#: book.translate.xml:42091 msgid "" "The most important step is to reduce the <option>kern.hz</option> tunable to " "reduce the CPU utilization of FreeBSD under the <application>Parallels</" @@ -61985,13 +62529,13 @@ msgstr "" "<filename>/boot/loader.conf</filename> 來完成這個動作:" #. (itstool) path: step/programlisting -#: book.translate.xml:41964 book.translate.xml:42169 book.translate.xml:42373 +#: book.translate.xml:42098 book.translate.xml:42303 book.translate.xml:42507 #, no-wrap msgid "kern.hz=100" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:41966 +#: book.translate.xml:42100 msgid "" "Without this setting, an idle FreeBSD <application>Parallels</application> " "guest will use roughly 15% of the CPU of a single processor <trademark class=" @@ -62003,12 +62547,12 @@ msgstr "" "15% 的 CPU。完成此更改後使用率會減至接近 5%。" #. (itstool) path: step/title -#: book.translate.xml:41973 book.translate.xml:42179 book.translate.xml:42382 +#: book.translate.xml:42107 book.translate.xml:42313 book.translate.xml:42516 msgid "Create a New Kernel Configuration File" msgstr "建立新核心設定檔" #. (itstool) path: step/para -#: book.translate.xml:41975 +#: book.translate.xml:42109 msgid "" "All of the SCSI, FireWire, and USB device drivers can be removed from a " "custom kernel configuration file. <application>Parallels</application> " @@ -62029,12 +62573,12 @@ msgstr "" "citerefentry> 外的所有網路裝置可以自核心中移除。" #. (itstool) path: step/title -#: book.translate.xml:41984 book.translate.xml:42190 book.translate.xml:42393 +#: book.translate.xml:42118 book.translate.xml:42324 book.translate.xml:42527 msgid "Configure Networking" msgstr "設定網路" #. (itstool) path: step/para -#: book.translate.xml:41986 +#: book.translate.xml:42120 msgid "" "The most basic networking setup uses DHCP to connect the virtual machine to " "the same local area network as the host <trademark class=\"registered\">Mac</" @@ -62049,7 +62593,7 @@ msgstr "" "中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:41999 +#: book.translate.xml:42133 msgid "" "FreeBSD as a Guest on <application>Virtual PC</application> for <trademark " "class=\"registered\">Windows</trademark>" @@ -62058,7 +62602,7 @@ msgstr "" "<application>Virtual PC</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:42002 +#: book.translate.xml:42136 msgid "" "<application>Virtual PC</application> for <trademark class=\"registered" "\">Windows</trademark> is a <trademark class=\"registered\">Microsoft</" @@ -62080,12 +62624,12 @@ msgstr "" "的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:42011 +#: book.translate.xml:42145 msgid "Installing FreeBSD on <application>Virtual PC</application>" msgstr "在 <application>Virtual PC</application> 安裝 FreeBSD " #. (itstool) path: sect2/para -#: book.translate.xml:42014 +#: book.translate.xml:42148 msgid "" "The first step in installing FreeBSD on <application>Virtual PC</" "application> is to create a new virtual machine for installing FreeBSD. " @@ -62100,7 +62644,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42022 +#: book.translate.xml:42156 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd1' md5='__failed__'" msgstr "" @@ -62110,13 +62654,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42028 +#: book.translate.xml:42162 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42032 +#: book.translate.xml:42166 msgid "" "Select <guimenuitem>Other</guimenuitem> as the <guimenuitem>Operating " "system</guimenuitem> when prompted:" @@ -62129,13 +62673,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42038 +#: book.translate.xml:42172 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42042 +#: book.translate.xml:42176 msgid "" "Then, choose a reasonable amount of disk and memory depending on the plans " "for this virtual FreeBSD instance. 4GB of disk space and 512MB of RAM work " @@ -62150,7 +62694,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42049 +#: book.translate.xml:42183 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd4' md5='__failed__'" msgstr "" @@ -62160,7 +62704,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42055 +#: book.translate.xml:42189 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd5' md5='__failed__'" msgstr "" @@ -62170,13 +62714,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42063 +#: book.translate.xml:42197 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd6' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42067 +#: book.translate.xml:42201 msgid "" "Select the FreeBSD virtual machine and click <guimenu>Settings</guimenu>, " "then set the type of networking and a network interface:" @@ -62189,7 +62733,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42073 +#: book.translate.xml:42207 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd7' md5='__failed__'" msgstr "" @@ -62199,13 +62743,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42079 +#: book.translate.xml:42213 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd8' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42083 +#: book.translate.xml:42217 msgid "" "After the FreeBSD virtual machine has been created, FreeBSD can be installed " "on it. This is best done with an official FreeBSD <acronym>CD</acronym>/" @@ -62237,7 +62781,7 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42101 +#: book.translate.xml:42235 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd9' md5='__failed__'" msgstr "" @@ -62247,13 +62791,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42107 +#: book.translate.xml:42241 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42111 +#: book.translate.xml:42245 msgid "" "Once this association with the <acronym>CD-ROM</acronym> source has been " "made, reboot the FreeBSD virtual machine by clicking <guimenu>Action</" @@ -62271,13 +62815,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42121 +#: book.translate.xml:42255 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42125 +#: book.translate.xml:42259 msgid "" "In this case it will find the FreeBSD installation media and begin a normal " "FreeBSD installation. Continue with the installation, but do not attempt to " @@ -62291,13 +62835,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42132 +#: book.translate.xml:42266 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42136 +#: book.translate.xml:42270 msgid "" "When the installation is finished, remember to eject the <acronym>CD</" "acronym>/<acronym>DVD</acronym> or release the <acronym>ISO</acronym> image. " @@ -62311,18 +62855,18 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42143 +#: book.translate.xml:42277 msgctxt "_" msgid "external ref='virtualization/virtualpc-freebsd13' md5='__failed__'" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42149 +#: book.translate.xml:42283 msgid "Configuring FreeBSD on <application>Virtual PC</application>" msgstr "在 <application>Virtual PC</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:42152 +#: book.translate.xml:42286 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Microsoft</trademark> <trademark class=\"registered" @@ -62336,7 +62880,7 @@ msgstr "" "虛擬機器上的運作。" #. (itstool) path: step/para -#: book.translate.xml:42162 +#: book.translate.xml:42296 msgid "" "The most important step is to reduce the <option>kern.hz</option> tunable to " "reduce the CPU utilization of FreeBSD under the <application>Virtual PC</" @@ -62348,7 +62892,7 @@ msgstr "" "幾行到 <filename>/boot/loader.conf</filename> 來完成:" #. (itstool) path: step/para -#: book.translate.xml:42171 +#: book.translate.xml:42305 msgid "" "Without this setting, an idle FreeBSD <application>Virtual PC</application> " "guest OS will use roughly 40% of the CPU of a single processor computer. " @@ -62358,7 +62902,7 @@ msgstr "" "OS 會消耗掉單一處理器的電腦 40% 的 CPU。完成此更改後使用率會減至接近 3%。" #. (itstool) path: step/para -#: book.translate.xml:42181 +#: book.translate.xml:42315 msgid "" "All of the SCSI, FireWire, and USB device drivers can be removed from a " "custom kernel configuration file. <application>Virtual PC</application> " @@ -62379,7 +62923,7 @@ msgstr "" "citerefentry> 外的所有網路裝置可以自核心中移除。" #. (itstool) path: step/para -#: book.translate.xml:42192 +#: book.translate.xml:42326 msgid "" "The most basic networking setup uses DHCP to connect the virtual machine to " "the same local area network as the <trademark class=\"registered" @@ -62395,7 +62939,7 @@ msgstr "" "設定在 <xref linkend=\"advanced-networking\"/> 中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:42205 +#: book.translate.xml:42339 msgid "" "FreeBSD as a Guest on <application>VMware Fusion</application> for " "<trademark class=\"registered\">Mac OS</trademark>" @@ -62404,7 +62948,7 @@ msgstr "" "Fusion</application> 安裝 FreeBSD 為客端" #. (itstool) path: sect1/para -#: book.translate.xml:42208 +#: book.translate.xml:42342 msgid "" "<application>VMware Fusion</application> for <trademark class=\"registered" "\">Mac</trademark> is a commercial software product available for <trademark " @@ -62425,12 +62969,12 @@ msgstr "" "application> 後,使用者必先完成虛擬機器的設定後才可安裝想使用的客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:42217 +#: book.translate.xml:42351 msgid "Installing FreeBSD on <application>VMware Fusion</application>" msgstr "在 <application>VMware Fusion</application> 安裝 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:42220 +#: book.translate.xml:42354 msgid "" "The first step is to start <application>VMware Fusion</application> which " "will load the Virtual Machine Library. Click <guimenuitem>New</guimenuitem> " @@ -62444,13 +62988,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42227 +#: book.translate.xml:42361 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd01' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42231 +#: book.translate.xml:42365 msgid "" "This will load the New Virtual Machine Assistant. Click " "<guimenuitem>Continue</guimenuitem> to proceed:" @@ -62463,13 +63007,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42236 +#: book.translate.xml:42370 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd02' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42240 +#: book.translate.xml:42374 msgid "" "Select <guimenuitem>Other</guimenuitem> as the <guimenuitem>Operating " "System</guimenuitem> and either <guimenuitem>FreeBSD</guimenuitem> or " @@ -62486,13 +63030,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42248 +#: book.translate.xml:42382 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd03' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42252 +#: book.translate.xml:42386 msgid "" "Choose the name of the virtual machine and the directory where it should be " "saved:" @@ -62503,13 +63047,13 @@ msgstr "選擇虛擬機器要使用的名稱以及要儲存目錄位置:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42257 +#: book.translate.xml:42391 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd04' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42261 +#: book.translate.xml:42395 msgid "Choose the size of the Virtual Hard Disk for the virtual machine:" msgstr "選擇虛擬機器的 Virtual Hard Disk 大小:" @@ -62518,13 +63062,13 @@ msgstr "選擇虛擬機器的 Virtual Hard Disk 大小:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42266 +#: book.translate.xml:42400 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd05' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42270 +#: book.translate.xml:42404 msgid "" "Choose the method to install the virtual machine, either from an " "<acronym>ISO</acronym> image or from a <acronym>CD</acronym>/<acronym>DVD</" @@ -62538,13 +63082,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42276 +#: book.translate.xml:42410 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd06' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42280 +#: book.translate.xml:42414 msgid "" "Click <guimenuitem>Finish</guimenuitem> and the virtual machine will boot:" msgstr "點選 <guimenuitem>Finish</guimenuitem> 接著虛擬機器會開機:" @@ -62554,13 +63098,13 @@ msgstr "點選 <guimenuitem>Finish</guimenuitem> 接著虛擬機器會開機:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42285 +#: book.translate.xml:42419 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd07' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42289 +#: book.translate.xml:42423 msgid "Install FreeBSD as usual:" msgstr "照往常方式安裝 FreeBSD:" @@ -62569,20 +63113,20 @@ msgstr "照往常方式安裝 FreeBSD:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42293 +#: book.translate.xml:42427 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd08' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42297 +#: book.translate.xml:42431 msgid "" "Once the install is complete, the settings of the virtual machine can be " "modified, such as memory usage:" msgstr "安裝完成後,可以修改虛擬機器的設定,例如記憶體使用量:" #. (itstool) path: note/para -#: book.translate.xml:42301 +#: book.translate.xml:42435 msgid "" "The System Hardware settings of the virtual machine cannot be modified while " "the virtual machine is running." @@ -62593,13 +63137,13 @@ msgstr "虛擬機器的 System Hardware 設定無法在虛擬機器執行時修 #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42308 +#: book.translate.xml:42442 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd09' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42312 +#: book.translate.xml:42446 msgid "The number of CPUs the virtual machine will have access to:" msgstr "虛擬機器要使用的 CPU 數量:" @@ -62608,13 +63152,13 @@ msgstr "虛擬機器要使用的 CPU 數量:" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42317 +#: book.translate.xml:42451 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd10' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42321 +#: book.translate.xml:42455 msgid "" "The status of the <acronym>CD-ROM</acronym> device. Normally the " "<acronym>CD</acronym>/<acronym>DVD</acronym>/<acronym>ISO</acronym> is " @@ -62629,13 +63173,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42329 +#: book.translate.xml:42463 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd11' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42333 +#: book.translate.xml:42467 msgid "" "The last thing to change is how the virtual machine will connect to the " "network. To allow connections to the virtual machine from other machines " @@ -62656,25 +63200,25 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:42345 +#: book.translate.xml:42479 msgctxt "_" msgid "external ref='virtualization/vmware-freebsd12' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42349 +#: book.translate.xml:42483 msgid "" "After modifying the settings, boot the newly installed FreeBSD virtual " "machine." msgstr "在修改設定之後,開機進入新安裝的 FreeBSD 虛擬機器。" #. (itstool) path: sect2/title -#: book.translate.xml:42354 +#: book.translate.xml:42488 msgid "Configuring FreeBSD on <application>VMware Fusion</application>" msgstr "在 <application>VMware Fusion</application> 設定 FreeBSD" #. (itstool) path: sect2/para -#: book.translate.xml:42357 +#: book.translate.xml:42491 msgid "" "After FreeBSD has been successfully installed on <trademark class=" "\"registered\">Mac OS</trademark> X with <application>VMware Fusion</" @@ -62686,7 +63230,7 @@ msgstr "" "系統在虛擬機器上的運作。" #. (itstool) path: step/para -#: book.translate.xml:42366 +#: book.translate.xml:42500 msgid "" "The most important step is to reduce the <option>kern.hz</option> tunable to " "reduce the CPU utilization of FreeBSD under the <application>VMware Fusion</" @@ -62698,7 +63242,7 @@ msgstr "" "下列幾行到 <filename>/boot/loader.conf</filename> 來完成:" #. (itstool) path: step/para -#: book.translate.xml:42375 +#: book.translate.xml:42509 msgid "" "Without this setting, an idle FreeBSD <application>VMware Fusion</" "application> guest will use roughly 15% of the CPU of a single processor " @@ -62710,7 +63254,7 @@ msgstr "" "近 15% 的 CPU。完成此更改後使用率會減至接近 5%。" #. (itstool) path: step/para -#: book.translate.xml:42384 +#: book.translate.xml:42518 msgid "" "All of the FireWire, and USB device drivers can be removed from a custom " "kernel configuration file. <application>VMware Fusion</application> provides " @@ -62728,7 +63272,7 @@ msgstr "" "核心中移除。" #. (itstool) path: step/para -#: book.translate.xml:42395 +#: book.translate.xml:42529 msgid "" "The most basic networking setup uses DHCP to connect the virtual machine to " "the same local area network as the host <trademark class=\"registered\">Mac</" @@ -62743,75 +63287,82 @@ msgstr "" "中描述。" #. (itstool) path: sect1/title -#: book.translate.xml:42408 +#: book.translate.xml:42542 msgid "FreeBSD as a Guest on <trademark>VirtualBox</trademark>" msgstr "在 <trademark>VirtualBox</trademark> 使用 FreeBSD 作為客端" #. (itstool) path: sect1/para -#: book.translate.xml:42410 +#: book.translate.xml:42544 msgid "" "FreeBSD works well as a guest in <application><trademark>VirtualBox</" "trademark></application>. The virtualization software is available for most " "common operating systems, including FreeBSD itself." msgstr "" +"在 <application><trademark>VirtualBox</trademark></application> 中使用 " +"FreeBSD 做為客端系統也可運作的很好,虛擬化軟體可支援最常見的幾個作業系統,這" +"當然也包含 FreeBSD。" #. (itstool) path: sect1/para -#: book.translate.xml:42415 +#: book.translate.xml:42549 msgid "" "The <application><trademark>VirtualBox</trademark></application> guest " "additions provide support for:" msgstr "" +"<application><trademark>VirtualBox</trademark></application> guest additions " +"支援以下功能:" #. (itstool) path: listitem/para -#: book.translate.xml:42420 +#: book.translate.xml:42554 msgid "Clipboard sharing." -msgstr "" +msgstr "剪貼簿共享。" #. (itstool) path: listitem/para -#: book.translate.xml:42424 +#: book.translate.xml:42558 msgid "Mouse pointer integration." -msgstr "" +msgstr "滑鼠指標整合。" #. (itstool) path: listitem/para -#: book.translate.xml:42428 +#: book.translate.xml:42562 msgid "Host time synchronization." -msgstr "" +msgstr "主機時間同步。" #. (itstool) path: listitem/para -#: book.translate.xml:42432 +#: book.translate.xml:42566 msgid "Window scaling." -msgstr "" +msgstr "視窗縮放。" #. (itstool) path: listitem/para -#: book.translate.xml:42436 +#: book.translate.xml:42570 msgid "Seamless mode." -msgstr "" +msgstr "無痕模式。" #. (itstool) path: note/para -#: book.translate.xml:42441 +#: book.translate.xml:42575 msgid "These commands are run in the FreeBSD guest." -msgstr "" +msgstr "以下指令均是在 FreeBSD 客端中執行。" #. (itstool) path: sect1/para -#: book.translate.xml:42444 +#: book.translate.xml:42578 msgid "" "First, install the <package>emulators/virtualbox-ose-additions</package> " "package or port in the FreeBSD guest. This will install the port:" msgstr "" +"首先,在 FreeBSD 客端安裝 <package>emulators/virtualbox-ose-additions</" +"package> 套件或 Port,以下指令會安裝 Port:" #. (itstool) path: sect1/screen -#: book.translate.xml:42448 +#: book.translate.xml:42582 #, no-wrap msgid "<prompt>#</prompt> <userinput>cd /usr/ports/emulators/virtualbox-ose-additions && make install clean</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42450 +#: book.translate.xml:42584 msgid "Add these lines to <filename>/etc/rc.conf</filename>:" -msgstr "" +msgstr "加入下行到 <filename>/etc/rc.conf</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42452 +#: book.translate.xml:42586 #, no-wrap msgid "" "vboxguest_enable=\"YES\"\n" @@ -62819,30 +63370,36 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42455 +#: book.translate.xml:42589 msgid "" "If <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> or <citerefentry><refentrytitle>ntpdate</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is used, disable host " "time synchronization:" msgstr "" +"若有使用 <citerefentry><refentrytitle>ntpd</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 或 <citerefentry><refentrytitle>ntpdate</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>,便可關閉主機時間同步功" +"能:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42458 +#: book.translate.xml:42592 #, no-wrap msgid "vboxservice_flags=\"--disable-timesync\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42460 +#: book.translate.xml:42594 msgid "" "<application>Xorg</application> will automatically recognize the " "<literal>vboxvideo</literal> driver. It can also be manually entered in " "<filename>/etc/X11/xorg.conf</filename>:" msgstr "" +"<application>Xorg</application> 會自動辨識 <literal>vboxvideo</literal> 驅動" +"程式,也可手動在 <filename>/etc/X11/xorg.conf</filename> 中輸入:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42465 +#: book.translate.xml:42599 #, no-wrap msgid "" "Section \"Device\"\n" @@ -62854,14 +63411,16 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42472 +#: book.translate.xml:42606 msgid "" "To use the <literal>vboxmouse</literal> driver, adjust the mouse section in " "<filename>/etc/X11/xorg.conf</filename>:" msgstr "" +"要使用 <literal>vboxmouse</literal> 驅動程式,可調整在 <filename>/etc/X11/" +"xorg.conf</filename> 中與滑鼠相關的一節:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42475 +#: book.translate.xml:42609 #, no-wrap msgid "" "Section \"InputDevice\"\n" @@ -62871,16 +63430,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42480 +#: book.translate.xml:42614 msgid "" "<acronym>HAL</acronym> users should create the following <filename>/usr/" "local/etc/hal/fdi/policy/90-vboxguest.fdi</filename> or copy it from " "<filename>/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi</" "filename>:" msgstr "" +"<acronym>HAL</acronym> 的使用者應建立以下 <filename>/usr/local/etc/hal/fdi/" +"policy/90-vboxguest.fdi</filename> 或複製自 <filename>/usr/local/share/hal/" +"fdi/policy/10osvendor/90-vboxguest.fdi</filename>:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:42485 +#: book.translate.xml:42619 #, no-wrap msgid "" "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" @@ -62918,12 +63480,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:42520 +#: book.translate.xml:42654 msgid "FreeBSD as a Host with <application>VirtualBox</application>" msgstr "以 FreeBSD 作為主端安裝 <application>VirtualBox</application> " #. (itstool) path: sect1/para -#: book.translate.xml:42523 +#: book.translate.xml:42657 msgid "" "<application><trademark>VirtualBox</trademark></application> is an actively " "developed, complete virtualization package, that is available for most " @@ -62939,22 +63501,35 @@ msgid "" "<application><trademark>VirtualBox</trademark></application> wiki</link>. " "Currently, these extensions are not available for FreeBSD." msgstr "" +"<application><trademark>VirtualBox</trademark></application> 是一套積極開發、" +"完整的虛擬化套件,適用大多數作業系統,包含 <trademark class=\"registered" +"\">Windows</trademark>, <trademark class=\"registered\">Mac OS</trademark>, " +"<trademark class=\"registered\">Linux</trademark> 與 FreeBSD,它同樣能夠執行" +"類 <trademark class=\"registered\">Windows</trademark> 或 <trademark class=" +"\"registered\">UNIX</trademark> 的客端系統。它是以開源軟體的方式發佈,但閉源" +"元件可獨立在擴充包中使用,這些元件包含對 USB 2.0 裝置的支援。更多資訊可在 " +"<link xlink:href=\"http://www.virtualbox.org/wiki/Downloads" +"\"><application><trademark>VirtualBox</trademark></application> wiki 的 " +"<quote>Downloads</quote> 頁面</link>。目前,這些擴充套件並不支援 FreeBSD。" #. (itstool) path: sect2/title -#: book.translate.xml:42536 +#: book.translate.xml:42670 msgid "Installing <trademark>VirtualBox</trademark>" msgstr "安裝 <trademark>VirtualBox</trademark>" #. (itstool) path: sect2/para -#: book.translate.xml:42538 +#: book.translate.xml:42672 msgid "" "<application><trademark>VirtualBox</trademark></application> is available as " "a FreeBSD package or port in <package>emulators/virtualbox-ose</package>. " "The port can be installed using these commands:" msgstr "" +"<application><trademark>VirtualBox</trademark></application> 可於 " +"<package>emulators/virtualbox-ose</package> 以 FreeBSD 套件或 Port 的方式取" +"得。要安裝 Port 可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:42543 +#: book.translate.xml:42677 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/emulators/virtualbox-ose</userinput>\n" @@ -62962,7 +63537,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42546 +#: book.translate.xml:42680 msgid "" "One useful option in the port's configuration menu is the " "<literal>GuestAdditions</literal> suite of programs. These provide a number " @@ -62973,50 +63548,62 @@ msgid "" "guests. The guest additions are available in the <guimenu>Devices</guimenu> " "menu, after the installation of the guest is finished." msgstr "" +"在 Port 的設定選單中 <literal>GuestAdditions</literal> 相關程式是最有用的選項" +"之一,這些程式可在客端作業系統提供數個有用的功能,如滑鼠指標整合 (允許滑鼠在" +"主端與客端之間移動,不需要按特殊快速鍵來切換) 與較快的影像繪圖速度,特別是在 " +"<trademark class=\"registered\">Windows</trademark> 的客端系統。Guest " +"additions 可在客端系統安裝完之後的 <guimenu>Devices</guimenu> 選單找到。" #. (itstool) path: sect2/para -#: book.translate.xml:42556 +#: book.translate.xml:42690 msgid "" "A few configuration changes are needed before " "<application><trademark>VirtualBox</trademark></application> is started for " "the first time. The port installs a kernel module in <filename>/boot/" "modules</filename> which must be loaded into the running kernel:" msgstr "" +"還有一些設定需要在 <application><trademark>VirtualBox</trademark></" +"application> 第一次啟動端做修改,Port 會安裝一個核心模組在 <filename>/boot/" +"modules</filename>,該模組必須在核心中載入:" #. (itstool) path: sect2/screen -#: book.translate.xml:42562 +#: book.translate.xml:42696 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vboxdrv</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42564 +#: book.translate.xml:42698 msgid "" "To ensure the module is always loaded after a reboot, add this line to " "<filename>/boot/loader.conf</filename>:" msgstr "" +"要確保該模組在重新開機後會載入,可加入下行到 <filename>/boot/loader.conf</" +"filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42568 +#: book.translate.xml:42702 #, no-wrap msgid "vboxdrv_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42570 +#: book.translate.xml:42704 msgid "" "To use the kernel modules that allow bridged or host-only networking, add " "this line to <filename>/etc/rc.conf</filename> and reboot the computer:" msgstr "" +"要使用可支援橋接或僅限主端 (Host-only) 的網路,可加入下行到 <filename>/etc/" +"rc.conf</filename>,然後重新啟動電腦:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42575 +#: book.translate.xml:42709 #, no-wrap msgid "vboxnet_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42577 +#: book.translate.xml:42711 msgid "" "The <systemitem class=\"groupname\">vboxusers</systemitem> group is created " "during installation of <application><trademark>VirtualBox</trademark></" @@ -63025,22 +63612,28 @@ msgid "" "added as members of this group. <command>pw</command> can be used to add new " "members:" msgstr "" +"在安裝 <application><trademark>VirtualBox</trademark></application> 的過程中" +"會建立 <systemitem class=\"groupname\">vboxusers</systemitem> 群組,所有需要" +"存取 <application><trademark>VirtualBox</trademark></application> 的使用者均" +"需要加入成為此群組的成員,<command>pw</command> 可用來加入新的成員:" #. (itstool) path: sect2/screen -#: book.translate.xml:42584 +#: book.translate.xml:42718 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw groupmod vboxusers -m <replaceable>yourusername</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42586 +#: book.translate.xml:42720 msgid "" "The default permissions for <filename>/dev/vboxnetctl</filename> are " "restrictive and need to be changed for bridged networking:" msgstr "" +"<filename>/dev/vboxnetctl</filename> 的預設權限是受限的,需要更改後才可使用橋" +"接網路:" #. (itstool) path: sect2/screen -#: book.translate.xml:42590 +#: book.translate.xml:42724 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chown root:vboxusers /dev/vboxnetctl</userinput>\n" @@ -63048,14 +63641,15 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42593 +#: book.translate.xml:42727 msgid "" "To make this permissions change permanent, add these lines to <filename>/etc/" "devfs.conf</filename>:" msgstr "" +"要永久變更權限,可加入下列幾行到 <filename>/etc/devfs.conf</filename>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42596 +#: book.translate.xml:42730 #, no-wrap msgid "" "own vboxnetctl root:vboxusers\n" @@ -63063,20 +63657,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42599 +#: book.translate.xml:42733 msgid "" "To launch <application><trademark>VirtualBox</trademark></application>, type " "from a <application>Xorg</application> session:" msgstr "" +"要執行 <application><trademark>VirtualBox</trademark></application>,可在 " +"<application>Xorg</application> 工作階段輸入:" #. (itstool) path: sect2/screen -#: book.translate.xml:42602 +#: book.translate.xml:42736 #, no-wrap msgid "<prompt>%</prompt> <userinput>VirtualBox</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42604 +#: book.translate.xml:42738 msgid "" "For more information on configuring and using " "<application><trademark>VirtualBox</trademark></application>, refer to the " @@ -63085,23 +63681,31 @@ msgid "" "<link xlink:href=\"http://wiki.FreeBSD.org/VirtualBox\">relevant page in the " "FreeBSD wiki</link>." msgstr "" +"要取得更多有關設定與使用 <application><trademark>VirtualBox</trademark></" +"application> 的資訊,請參考 <link xlink:href=\"http://www.virtualbox.org\">官" +"方網站</link>。供 FreeBSD 特定的資訊與疑難排解操作指示,可參考 <link xlink:" +"href=\"http://wiki.FreeBSD.org/VirtualBox\">FreeBSD wiki 中相關的頁面</" +"link>。" #. (itstool) path: sect2/title -#: book.translate.xml:42613 +#: book.translate.xml:42747 msgid "<trademark>VirtualBox</trademark> USB Support" msgstr "<trademark>VirtualBox</trademark> USB 支援" #. (itstool) path: sect2/para -#: book.translate.xml:42615 +#: book.translate.xml:42749 msgid "" "The <application><trademark>VirtualBox</trademark></application> extension " "pack is not available for FreeBSD hosts. Without the extension pack, the " "FreeBSD host cannot pass <acronym>USB</acronym> ports through to guest " "operating systems." msgstr "" +"<application><trademark>VirtualBox</trademark></application> 擴充包目前不支" +"援 FreeBSD 主端系統,沒有這個擴充包,FreeBSD 主端系統無法傳遞 <acronym>USB</" +"acronym> 埠給客端作業系統。" #. (itstool) path: sect2/title -#: book.translate.xml:42622 +#: book.translate.xml:42756 msgid "" "<trademark>VirtualBox</trademark> Host <acronym>DVD</acronym>/<acronym>CD</" "acronym> Access" @@ -63110,7 +63714,7 @@ msgstr "" "acronym> 存取" #. (itstool) path: sect2/para -#: book.translate.xml:42625 +#: book.translate.xml:42759 msgid "" "Access to the host <acronym>DVD</acronym>/<acronym>CD</acronym> drives from " "guests is achieved through the sharing of the physical drives. Within " @@ -63123,30 +63727,42 @@ msgid "" "machine to use the hardware directly. For example, audio <acronym>CD</" "acronym>s or the burner will only function if this option is selected." msgstr "" +"透過共享實體磁碟機可讓客端系統能夠存取主端系統的 <acronym>DVD</acronym>/" +"<acronym>CD</acronym> 磁碟機。在 <trademark>VirtualBox</trademark> 中,這個功" +"能可在虛擬機器設定中的儲存 (Storage) 視窗中設定。若需要,可先建立一個空的 " +"<acronym>IDE</acronym> <acronym>CD</acronym>/<acronym>DVD</acronym> 裝置,然" +"後在跳出的選單中選擇要做為虛擬 <acronym>CD</acronym>/<acronym>DVD</acronym> " +"磁碟機的主端磁碟機,此時會出現一個標籤為 <literal>Passthrough</literal> 的核" +"選方塊,勾選這個核選方塊可讓虛擬機器直接使用該硬體,例如,音樂 <acronym>CD</" +"acronym> 或燒錄機只會在有勾選此選項時能夠運作。" #. (itstool) path: sect2/para -#: book.translate.xml:42639 +#: book.translate.xml:42773 msgid "" "<acronym>HAL</acronym> needs to run for <application><trademark>VirtualBox</" "trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> " "functions to work, so enable it in <filename>/etc/rc.conf</filename> and " "start it if it is not already running:" msgstr "" +"<application><trademark>VirtualBox</trademark></application> <acronym>DVD</" +"acronym>/<acronym>CD</acronym> 功能要能運作需要執行 <acronym>HAL</acronym>," +"因此需在 <filename>/etc/rc.conf</filename> 中開啟,若該服務尚未啟動,則啟動" +"它:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42645 +#: book.translate.xml:42779 #, no-wrap msgid "hald_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42647 +#: book.translate.xml:42781 #, no-wrap msgid "<prompt>#</prompt> <userinput>service hald start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42649 +#: book.translate.xml:42783 msgid "" "In order for users to be able to use <application><trademark>VirtualBox</" "trademark></application> <acronym>DVD</acronym>/<acronym>CD</acronym> " @@ -63157,9 +63773,16 @@ msgid "" "systemitem>. Permissions to these devices have to be corrected by adding " "these lines to <filename>/etc/devfs.conf</filename>:" msgstr "" +"為了讓使用者能夠使用 <application><trademark>VirtualBox</trademark></" +"application> <acronym>DVD</acronym>/<acronym>CD</acronym> 功能,這些使用者需" +"要存取 <filename>/dev/xpt0</filename>, <filename>/dev/cd<replaceable>N</" +"replaceable></filename> 以及 <filename>/dev/pass<replaceable>N</" +"replaceable></filename>,這通常可讓這些使用者成為 <systemitem class=" +"\"groupname\">operator</systemitem> 的成員來達成。對這些裝置的權限必須加入下" +"行到 <filename>/etc/devfs.conf</filename> 來修正:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42660 +#: book.translate.xml:42794 #, no-wrap msgid "" "perm cd* 0660\n" @@ -63168,31 +63791,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42664 +#: book.translate.xml:42798 #, no-wrap msgid "<prompt>#</prompt> <userinput>service devfs restart</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:42669 +#: book.translate.xml:42803 msgid "FreeBSD as a Host with <application>bhyve</application>" msgstr "以 FreeBSD 作為主端安裝 <application>bhyve</application> " #. (itstool) path: sect1/para -#: book.translate.xml:42672 +#: book.translate.xml:42806 msgid "" "The <application>bhyve</application> <acronym>BSD</acronym>-licensed " "hypervisor became part of the base system with FreeBSD 10.0-RELEASE. This " "hypervisor supports a number of guests, including FreeBSD, OpenBSD, and many " -"<trademark class=\"registered\">Linux</trademark> distributions. Currently, " -"<application>bhyve</application> only supports a serial console and does not " -"emulate a graphical console. Virtualization offload features of newer " +"<trademark class=\"registered\">Linux</trademark> distributions. By default, " +"<application>bhyve</application> provides access to serial console and does " +"not emulate a graphical console. Virtualization offload features of newer " "<acronym>CPU</acronym>s are used to avoid the legacy methods of translating " "instructions and manually managing memory mappings." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:42683 +#: book.translate.xml:42817 msgid "" "The <application>bhyve</application> design requires a processor that " "supports <trademark class=\"registered\">Intel</trademark> Extended Page " @@ -63221,12 +63844,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42708 +#: book.translate.xml:42842 msgid "Preparing the Host" msgstr "準備主端" #. (itstool) path: sect2/para -#: book.translate.xml:42710 +#: book.translate.xml:42844 msgid "" "The first step to creating a virtual machine in <application>bhyve</" "application> is configuring the host system. First, load the " @@ -63234,13 +63857,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42715 +#: book.translate.xml:42849 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload vmm</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42717 +#: book.translate.xml:42851 msgid "" "Then, create a <filename>tap</filename> interface for the network device in " "the virtual machine to attach to. In order for the network device to " @@ -63250,7 +63873,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42725 +#: book.translate.xml:42859 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>tap0</replaceable> create</userinput>\n" @@ -63262,30 +63885,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42734 +#: book.translate.xml:42868 msgid "Creating a FreeBSD Guest" msgstr "建立 FreeBSD 客端" #. (itstool) path: sect2/para -#: book.translate.xml:42736 +#: book.translate.xml:42870 msgid "" "Create a file to use as the virtual disk for the guest machine. Specify the " "size and name of the virtual disk:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42740 +#: book.translate.xml:42874 #, no-wrap msgid "<prompt>#</prompt> <userinput>truncate -s <replaceable>16G</replaceable> <replaceable>guest.img</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42742 +#: book.translate.xml:42876 msgid "Download an installation image of FreeBSD to install:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42744 +#: book.translate.xml:42878 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>fetch <replaceable>ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.3/FreeBSD-10.3-RELEASE-amd64-bootonly.iso</replaceable></userinput>\n" @@ -63293,7 +63916,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42747 +#: book.translate.xml:42881 msgid "" "FreeBSD comes with an example script for running a virtual machine in " "<application>bhyve</application>. The script will start the virtual machine " @@ -63311,13 +63934,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42764 +#: book.translate.xml:42898 #, no-wrap msgid "<prompt>#</prompt> <userinput>sh /usr/share/examples/bhyve/vmrun.sh -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> -t <replaceable>tap0</replaceable> -d <replaceable>guest.img</replaceable> -i -I <replaceable>FreeBSD-10.3-RELEASE-amd64-bootonly.iso</replaceable> <replaceable>guestname</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42766 +#: book.translate.xml:42900 msgid "" "The virtual machine will boot and start the installer. After installing a " "system in the virtual machine, when the system asks about dropping in to a " @@ -63328,20 +63951,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42774 +#: book.translate.xml:42908 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty 3wire\" xterm on secure" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:42776 +#: book.translate.xml:42910 msgid "" "Beginning with FreeBSD 9.3-RELEASE and 10.1-RELEASE the console is " "configured automatically." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42780 +#: book.translate.xml:42914 msgid "" "Reboot the virtual machine. While rebooting the virtual machine causes " "<application>bhyve</application> to exit, the <filename>vmrun.sh</filename> " @@ -63352,36 +63975,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42788 +#: book.translate.xml:42922 #, no-wrap msgid "<prompt>#</prompt> <userinput>sh /usr/share/examples/bhyve/vmrun.sh -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> -t <replaceable>tap0</replaceable> -d <replaceable>guest.img</replaceable> <replaceable>guestname</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42792 +#: book.translate.xml:42926 msgid "Creating a <trademark class=\"registered\">Linux</trademark> Guest" msgstr "建立 <trademark class=\"registered\">Linux</trademark> 客端" #. (itstool) path: sect2/para -#: book.translate.xml:42794 +#: book.translate.xml:42928 msgid "" "In order to boot operating systems other than FreeBSD, the <package>sysutils/" "grub2-bhyve</package> port must be first installed." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42798 +#: book.translate.xml:42932 msgid "Next, create a file to use as the virtual disk for the guest machine:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42801 +#: book.translate.xml:42935 #, no-wrap msgid "<prompt>#</prompt> <userinput>truncate -s <replaceable>16G</replaceable> <replaceable>linux.img</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42803 +#: book.translate.xml:42937 msgid "" "Starting a virtual machine with <application>bhyve</application> is a two " "step process. First a kernel must be loaded, then the guest can be started. " @@ -63392,7 +64015,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:42812 +#: book.translate.xml:42946 #, no-wrap msgid "" "(hd0) ./linux.img\n" @@ -63400,7 +64023,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42815 +#: book.translate.xml:42949 msgid "" "Use <package>sysutils/grub2-bhyve</package> to load the <trademark class=" "\"registered\">Linux</trademark> kernel from the <acronym>ISO</acronym> " @@ -63408,13 +64031,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42818 +#: book.translate.xml:42952 #, no-wrap msgid "<prompt>#</prompt> <userinput>grub-bhyve -m device.map -r cd0 -M <replaceable>1024M</replaceable> <replaceable>linuxguest</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42820 +#: book.translate.xml:42954 msgid "" "This will start grub. If the installation <acronym>CD</acronym> contains a " "<filename>grub.cfg</filename>, a menu will be displayed. If not, the " @@ -63423,7 +64046,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42827 +#: book.translate.xml:42961 #, no-wrap msgid "" "grub> <userinput>ls</userinput>\n" @@ -63437,14 +64060,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42836 +#: book.translate.xml:42970 msgid "" "Now that the <trademark class=\"registered\">Linux</trademark> kernel is " "loaded, the guest can be started:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42839 +#: book.translate.xml:42973 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,<replaceable>tap0</replaceable> -s 3:0,virtio-blk,<replaceable>./linux.img</replaceable> \\\n" @@ -63452,7 +64075,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42842 +#: book.translate.xml:42976 msgid "" "The system will boot and start the installer. After installing a system in " "the virtual machine, reboot the virtual machine. This will cause " @@ -63461,19 +64084,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42848 book.translate.xml:42876 +#: book.translate.xml:42982 book.translate.xml:43010 #, no-wrap msgid "<prompt>#</prompt> <userinput>bhyvectl --destroy --vm=<replaceable>linuxguest</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42850 +#: book.translate.xml:42984 msgid "" "Now the guest can be started directly from the virtual disk. Load the kernel:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42853 +#: book.translate.xml:42987 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>grub-bhyve -m device.map -r hd0,msdos1 -M <replaceable>1024M</replaceable> <replaceable>linuxguest</replaceable></userinput>\n" @@ -63490,12 +64113,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42865 +#: book.translate.xml:42999 msgid "Boot the virtual machine:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42867 +#: book.translate.xml:43001 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,<replaceable>tap0</replaceable> \\\n" @@ -63503,7 +64126,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42870 +#: book.translate.xml:43004 msgid "" "<trademark class=\"registered\">Linux</trademark> will now boot in the " "virtual machine and eventually present you with the login prompt. Login and " @@ -63513,13 +64136,135 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42880 +#: book.translate.xml:43014 +msgid "" +"Booting <application>bhyve</application> Virtual Machines with " +"<acronym>UEFI</acronym> Firmware" +msgstr "" +"使用 <acronym>UEFI</acronym> 韌體開機 <application>bhyve</application> 虛擬機" +"器" + +#. (itstool) path: sect2/para +#: book.translate.xml:43017 +msgid "" +"In addition to <application>bhyveload</application> and <application>grub-" +"bhyve</application>, the <application>bhyve</application> hypervisor can " +"also boot virtual machines using the <acronym>UEFI</acronym> userspace " +"firmware. This option may support guest operating systems that are not " +"supported by the other loaders." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43024 +msgid "" +"In order to make use of the <acronym>UEFI</acronym> support in " +"<application>bhyve</application>, first obtain the <acronym>UEFI</acronym> " +"firmware images. This can be done by installing <package>sysutils/bhyve-" +"firmware</package> port or package." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43030 +msgid "" +"With the firmware in place, add the flags <option>-l bootrom,<replaceable>/" +"path/to/firmware</replaceable></option> to your <application>bhyve</" +"application> command line. The actual <application>bhyve</application> " +"command may look like this:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:43036 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \\\n" +"-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \\\n" +"-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \\\n" +"-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI.fd</replaceable> \\\n" +"<replaceable>guest</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43042 +msgid "" +"<package>sysutils/bhyve-firmware</package> also contains a <acronym>CSM</" +"acronym>-enabled firmware, to boot guests with no <acronym>UEFI</acronym> " +"support in legacy <acronym>BIOS</acronym> mode:" +msgstr "" + +#. (itstool) path: sect2/screen +#: book.translate.xml:43047 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \\\n" +"-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \\\n" +"-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \\\n" +"-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI_CSM.fd</replaceable> \\\n" +"<replaceable>guest</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:43055 +msgid "" +"Graphical <acronym>UEFI</acronym> Framebuffer for <application>bhyve</" +"application> Guests" +msgstr "" +"供 <application>bhyve</application> 客端用的圖型化 <acronym>UEFI</acronym> " +"Framebuffer " + +#. (itstool) path: sect2/para +#: book.translate.xml:43058 +msgid "" +"The <acronym>UEFI</acronym> firmware support is particularly useful with " +"predominantly graphical guest operating systems such as Microsoft <trademark " +"class=\"registered\">Windows</trademark>." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43062 +msgid "" +"Support for the UEFI-GOP framebuffer may also be enabled with the <option>-s " +"29,fbuf,tcp=<replaceable>0.0.0.0:5900</replaceable></option> flags. The " +"framebuffer resolution may be configured with <option>w=<replaceable>800</" +"replaceable></option> and <option>h=<replaceable>600</replaceable></option>, " +"and <application>bhyve</application> can be instructed to wait for a " +"<acronym>VNC</acronym> connection before booting the guest by adding " +"<option>wait</option>. The framebuffer may be accessed from the host or over " +"the network via the <acronym>VNC</acronym> protocol." +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43073 +msgid "" +"The resulting <application>bhyve</application> command would look like this:" +msgstr "<application>bhyve</application> 指令的結果會如下:" + +#. (itstool) path: sect2/screen +#: book.translate.xml:43076 +#, no-wrap +msgid "" +"<prompt>#</prompt> <userinput>bhyve -AHP -s 0:0,hostbridge -s 31:0,lpc \\\n" +"-s 2:0,virtio-net,<replaceable>tap1</replaceable> -s 3:0,virtio-blk,<replaceable>./disk.img</replaceable> \\\n" +"-s 4:0,ahci-cd,<replaceable>./install.iso</replaceable> -c <replaceable>4</replaceable> -m <replaceable>1024M</replaceable> \\\n" +"-s 29,fbuf,tcp=<replaceable>0.0.0.0:5900</replaceable>,w=<replaceable>800</replaceable>,h=<replaceable>600</replaceable>,wait \\\n" +"-l bootrom,<replaceable>/usr/local/share/uefi-firmware/BHYVE_UEFI.fd</replaceable> \\\n" +"<replaceable>guest</replaceable></userinput>" +msgstr "" + +#. (itstool) path: sect2/para +#: book.translate.xml:43083 +msgid "" +"Note, in BIOS emulation mode, the framebuffer will cease receiving updates " +"once control is passed from firmware to guest operating system." +msgstr "" + +#. (itstool) path: sect2/title +#: book.translate.xml:43089 msgid "" "Using <acronym>ZFS</acronym> with <application>bhyve</application> Guests" -msgstr "在 <application>bhyve</application> Guests 使用 <acronym>ZFS</acronym>" +msgstr "在 <application>bhyve</application> 客端使用 <acronym>ZFS</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:42883 +#: book.translate.xml:43092 msgid "" "If <acronym>ZFS</acronym> is available on the host machine, using " "<acronym>ZFS</acronym> volumes instead of disk image files can provide " @@ -63528,20 +64273,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42889 +#: book.translate.xml:43098 #, no-wrap msgid "<prompt>#</prompt> <userinput>zfs create -V<replaceable>16G</replaceable> -o volmode=dev <replaceable>zroot/linuxdisk0</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42891 +#: book.translate.xml:43100 msgid "" "When starting the <acronym>VM</acronym>, specify the <acronym>ZFS</acronym> " "volume as the disk drive:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42894 +#: book.translate.xml:43103 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,<replaceable>tap0</replaceable> -s3:0,virtio-blk,<replaceable>/dev/zvol/zroot/linuxdisk0</replaceable> \\\n" @@ -63549,12 +64294,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42899 +#: book.translate.xml:43108 msgid "Virtual Machine Consoles" msgstr "虛擬機器 Console" #. (itstool) path: sect2/para -#: book.translate.xml:42901 +#: book.translate.xml:43110 msgid "" "It is advantageous to wrap the <application>bhyve</application> console in a " "session management tool such as <package>sysutils/tmux</package> or " @@ -63571,7 +64316,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42918 +#: book.translate.xml:43127 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload nmdm</userinput>\n" @@ -63586,12 +64331,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42930 +#: book.translate.xml:43139 msgid "Managing Virtual Machines" msgstr "管理虛擬機器" #. (itstool) path: sect2/para -#: book.translate.xml:42932 +#: book.translate.xml:43141 msgid "" "A device node is created in <filename role=\"directory\">/dev/vmm</filename> " "for each virtual machine. This allows the administrator to easily see a list " @@ -63599,7 +64344,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42936 +#: book.translate.xml:43145 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ls -al /dev/vmm</userinput>\n" @@ -63612,25 +64357,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:42944 +#: book.translate.xml:43153 msgid "" "A specified virtual machine can be destroyed using <command>bhyvectl</" "command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:42947 +#: book.translate.xml:43156 #, no-wrap msgid "<prompt>#</prompt> bhyvectl --destroy --vm=<replaceable>guestname</replaceable>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:42951 +#: book.translate.xml:43160 msgid "Persistent Configuration" msgstr "Persistent 設定" #. (itstool) path: sect2/para -#: book.translate.xml:42953 +#: book.translate.xml:43162 msgid "" "In order to configure the system to start <application>bhyve</application> " "guests at boot time, the following configurations must be made in the " @@ -63638,23 +64383,23 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:42960 +#: book.translate.xml:43169 msgid "<filename>/etc/sysctl.conf</filename>" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:42962 +#: book.translate.xml:43171 #, no-wrap msgid "net.link.tap.up_on_open=1" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:42966 +#: book.translate.xml:43175 msgid "<filename>/boot/loader.conf</filename>" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:42968 +#: book.translate.xml:43177 #, no-wrap msgid "" "vmm_load=\"YES\"\n" @@ -63664,12 +64409,12 @@ msgid "" msgstr "" #. (itstool) path: step/title -#: book.translate.xml:42975 +#: book.translate.xml:43184 msgid "<filename>/etc/rc.conf</filename>" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:42977 +#: book.translate.xml:43186 #, no-wrap msgid "" "cloned_interfaces=\"<replaceable>bridge0</replaceable> <replaceable>tap0</replaceable>\"\n" @@ -63677,28 +64422,28 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:43005 +#: book.translate.xml:43214 msgid "" "Localization - <acronym>i18n</acronym>/<acronym>L10n</acronym> Usage and " "Setup" msgstr "在地化 - <acronym>i18n</acronym>/<acronym>L10n</acronym> 使用與安裝" #. (itstool) path: authorgroup/author -#: book.translate.xml:43010 +#: book.translate.xml:43219 msgid "" "<personname><firstname>Andrey</firstname><surname>Chernov</surname></" "personname><contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:43014 +#: book.translate.xml:43223 msgid "" "<personname><firstname>Michael C.</firstname><surname>Wu</surname></" "personname><contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43024 +#: book.translate.xml:43233 msgid "" "FreeBSD is a distributed project with users and contributors located all " "over the world. As such, FreeBSD supports localization into many languages, " @@ -63711,17 +64456,17 @@ msgstr "" "含但不限於以下語言:中文、德文、日文、韓文、法文、俄文及越南文。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43032 +#: book.translate.xml:43241 msgid "<primary>internationalization</primary> <see>localization</see>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43036 +#: book.translate.xml:43245 msgid "<primary>localization</primary>" msgstr "<primary>在地化</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:43038 +#: book.translate.xml:43247 msgid "" "The term internationalization has been shortened to <acronym>i18n</acronym>, " "which represents the number of letters between the first and the last " @@ -63737,63 +64482,63 @@ msgstr "" "方法、協定及應用程式讓使用者可以自己選擇使用的語言。" #. (itstool) path: sect1/para -#: book.translate.xml:43048 +#: book.translate.xml:43257 msgid "" "This chapter discusses the internationalization and localization features of " "FreeBSD. After reading this chapter, you will know:" msgstr "本章會討論 FreeBSD 的國際化及在地化功能。在閱讀本章之後,您會了解:" #. (itstool) path: listitem/para -#: book.translate.xml:43054 +#: book.translate.xml:43263 msgid "How locale names are constructed." msgstr "語系名稱如何組成。" #. (itstool) path: listitem/para -#: book.translate.xml:43058 +#: book.translate.xml:43267 msgid "How to set the locale for a login shell." msgstr "如何設定登入 Shell 的語系。" #. (itstool) path: listitem/para -#: book.translate.xml:43062 +#: book.translate.xml:43271 msgid "How to configure the console for non-English languages." msgstr "如何設定 Console 給非英文語言的使用者。" #. (itstool) path: listitem/para -#: book.translate.xml:43067 +#: book.translate.xml:43276 msgid "" "How to configure <application>Xorg</application> for different languages." msgstr "如果設定 <application>Xorg</application> 使用不同語言。" #. (itstool) path: listitem/para -#: book.translate.xml:43072 +#: book.translate.xml:43281 msgid "How to find <acronym>i18n</acronym>-compliant applications." msgstr "如何找到支援 <acronym>i18n</acronym> 的應用程式。" #. (itstool) path: listitem/para -#: book.translate.xml:43077 +#: book.translate.xml:43286 msgid "Where to find more information for configuring specific languages." msgstr "那裡可以找到更多設定特定語言的資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:43085 +#: book.translate.xml:43294 msgid "" "Know how to <link linkend=\"ports\">install additional third-party " "applications</link>." msgstr "了解如何 <link linkend=\"ports\">安裝其他第三方應用程式</link>。" #. (itstool) path: sect1/title -#: book.translate.xml:43092 +#: book.translate.xml:43301 msgid "Using Localization" msgstr "使用語系" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:43094 book.translate.xml:43211 +#: book.translate.xml:43303 book.translate.xml:43420 msgid "<primary>locale</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43096 +#: book.translate.xml:43305 msgid "" "Localization settings are based on three components: the language code, " "country code, and encoding. Locale names are constructed from these parts as " @@ -63803,23 +64548,23 @@ msgstr "" "下:" #. (itstool) path: sect1/programlisting -#: book.translate.xml:43100 +#: book.translate.xml:43309 #, no-wrap msgid "<replaceable>LanguageCode</replaceable>_<replaceable>CountryCode</replaceable>.<replaceable>Encoding</replaceable>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43102 +#: book.translate.xml:43311 msgid "<primary>language codes</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43103 +#: book.translate.xml:43312 msgid "<primary>country codes</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43105 +#: book.translate.xml:43314 msgid "" "The <replaceable>LanguageCode</replaceable> and <replaceable>CountryCode</" "replaceable> are used to determine the country and the specific language " @@ -63833,79 +64578,79 @@ msgstr "" "replaceable> 的範例:" #. (itstool) path: table/title -#: book.translate.xml:43111 +#: book.translate.xml:43320 msgid "Common Language and Country Codes" msgstr "常用語言及城市代碼" #. (itstool) path: row/entry -#: book.translate.xml:43116 +#: book.translate.xml:43325 msgid "LanguageCode_Country Code" msgstr "語言代號_城市代號" #. (itstool) path: row/entry -#: book.translate.xml:43123 +#: book.translate.xml:43332 msgid "en_US" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43124 +#: book.translate.xml:43333 msgid "English, United States" msgstr "英文,美國" #. (itstool) path: row/entry -#: book.translate.xml:43128 +#: book.translate.xml:43337 msgid "ru_RU" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43129 +#: book.translate.xml:43338 msgid "Russian, Russia" msgstr "俄文,俄國" #. (itstool) path: row/entry -#: book.translate.xml:43133 +#: book.translate.xml:43342 msgid "zh_TW" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43134 +#: book.translate.xml:43343 msgid "Traditional Chinese, Taiwan" msgstr "繁體中文,台灣" #. (itstool) path: sect1/para -#: book.translate.xml:43140 +#: book.translate.xml:43349 msgid "A complete listing of available locales can be found by typing:" msgstr "完整可用的語系清單可用以下指令查詢:" #. (itstool) path: sect1/screen -#: book.translate.xml:43143 +#: book.translate.xml:43352 #, no-wrap msgid "<prompt>%</prompt> <userinput>locale -a | more</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43145 +#: book.translate.xml:43354 msgid "To determine the current locale setting:" msgstr "查詢目前使用的語系設定:" #. (itstool) path: sect1/screen -#: book.translate.xml:43147 +#: book.translate.xml:43356 #, no-wrap msgid "<prompt>%</prompt> <userinput>locale</userinput>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43149 +#: book.translate.xml:43358 msgid "<primary>encodings</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:43150 +#: book.translate.xml:43359 msgid "<primary>ASCII</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:43152 +#: book.translate.xml:43361 msgid "" "Language specific character sets, such as ISO8859-1, ISO8859-15, KOI8-R, and " "CP437, are described in <citerefentry><refentrytitle>multibyte</" @@ -63920,7 +64665,7 @@ msgstr "" "詢。" #. (itstool) path: sect1/para -#: book.translate.xml:43158 +#: book.translate.xml:43367 msgid "" "Some languages, such as Chinese or Japanese, cannot be represented using " "<acronym>ASCII</acronym> characters and require an extended language " @@ -63938,12 +64683,12 @@ msgstr "" "組字元支援或者使用正確的字元設定來編譯應用程式。" #. (itstool) path: note/para -#: book.translate.xml:43170 +#: book.translate.xml:43379 msgid "FreeBSD uses Xorg-compatible locale encodings." msgstr "FreeBSD 使用 Xorg 相容的語系編碼。" #. (itstool) path: sect1/para -#: book.translate.xml:43173 +#: book.translate.xml:43382 msgid "" "The rest of this section describes the various methods for configuring the " "locale on a FreeBSD system. The next section will discuss the considerations " @@ -63953,12 +64698,12 @@ msgstr "" "找以及編譯使用 <acronym>i18n</acronym> 支援的應用程式。" #. (itstool) path: sect2/title -#: book.translate.xml:43179 +#: book.translate.xml:43388 msgid "Setting Locale for Login Shell" msgstr "設定登入 Shell 的語系" #. (itstool) path: sect2/para -#: book.translate.xml:43181 +#: book.translate.xml:43390 msgid "" "Locale settings are configured either in a user's <filename>~/.login_conf</" "filename> or in the startup file of the user's shell: <filename>~/.profile</" @@ -63969,22 +64714,22 @@ msgstr "" "<filename>~/.cshrc</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:43188 +#: book.translate.xml:43397 msgid "Two environment variables should be set:" msgstr "有兩個環境變數需要設定:" #. (itstool) path: listitem/para -#: book.translate.xml:43193 +#: book.translate.xml:43402 msgid "<envar>LANG</envar>, which sets the locale<_:indexterm-1/>" msgstr "<envar>LANG</envar> 用來設定語系<_:indexterm-1/>" #. (itstool) path: listitem/indexterm -#: book.translate.xml:43198 +#: book.translate.xml:43407 msgid "<primary>MIME</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43200 +#: book.translate.xml:43409 msgid "" "<envar>MM_CHARSET</envar>, which sets the <acronym>MIME</acronym> character " "set used by applications" @@ -63993,7 +64738,7 @@ msgstr "" "元集" #. (itstool) path: sect2/para -#: book.translate.xml:43206 +#: book.translate.xml:43415 msgid "" "In addition to the user's shell configuration, these variables should also " "be set for specific application configuration and <application>Xorg</" @@ -64004,12 +64749,12 @@ msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:43212 book.translate.xml:43305 +#: book.translate.xml:43421 book.translate.xml:43514 msgid "<primary>login class</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43214 +#: book.translate.xml:43423 msgid "" "Two methods are available for making the needed variable assignments: the " "<link linkend=\"login-class\">login class</link> method, which is the " @@ -64021,12 +64766,12 @@ msgstr "" "(Startup file) </link> 法。以下兩節將示範如何使用這兩個方法。" #. (itstool) path: sect3/title -#: book.translate.xml:43222 +#: book.translate.xml:43431 msgid "Login Classes Method" msgstr "登入類別 (Login Class) 法" #. (itstool) path: sect3/para -#: book.translate.xml:43224 +#: book.translate.xml:43433 msgid "" "This first method is the recommended method as it assigns the required " "environment variables for locale name and <acronym>MIME</acronym> character " @@ -64038,7 +64783,7 @@ msgstr "" "者設定。" #. (itstool) path: sect3/para -#: book.translate.xml:43231 +#: book.translate.xml:43440 msgid "" "This minimal example sets both variables for Latin-1 encoding in the " "<filename>.login_conf</filename> of an individual user's home directory:" @@ -64047,7 +64792,7 @@ msgstr "" "定 Latin-1 編碼使用的兩個環境變數:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43235 +#: book.translate.xml:43444 #, no-wrap msgid "" "me:\\\n" @@ -64056,13 +64801,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:43239 +#: book.translate.xml:43448 msgid "" "<primary>Traditional Chinese</primary> <secondary>BIG-5 encoding</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43242 +#: book.translate.xml:43451 msgid "" "Here is an example of a user's <filename>~/.login_conf</filename> that sets " "the variables for Traditional Chinese in BIG-5 encoding. More variables are " @@ -64074,7 +64819,7 @@ msgstr "" "因此需要額外多做一些設定:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43249 +#: book.translate.xml:43458 #, no-wrap msgid "" "#Users who do not wish to use monetary units or time formats\n" @@ -64087,7 +64832,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43257 +#: book.translate.xml:43466 msgid "" "Alternately, the superuser can configure all users of the system for " "localization. The following variables in <filename>/etc/login.conf</" @@ -64098,7 +64843,7 @@ msgstr "" "conf</filename> 中的變數可用來設定語系及 <acronym>MIME</acronym> 字元集:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43262 +#: book.translate.xml:43471 #, no-wrap msgid "" "<replaceable>language_name</replaceable>|<replaceable>Account Type Description</replaceable>:\\\n" @@ -64108,12 +64853,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43267 +#: book.translate.xml:43476 msgid "So, the previous Latin-1 example would look like this:" msgstr "若套用之前的 Latin-1 編碼範例如下:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43270 +#: book.translate.xml:43479 #, no-wrap msgid "" "german|German Users Accounts:\\\n" @@ -64123,7 +64868,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43275 +#: book.translate.xml:43484 msgid "" "See <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for more details about these variables." @@ -64132,7 +64877,7 @@ msgstr "" "manvolnum></citerefentry> 以取得更多有關這些變數的詳細資訊。" #. (itstool) path: sect3/para -#: book.translate.xml:43278 +#: book.translate.xml:43487 msgid "" "Whenever <filename>/etc/login.conf</filename> is edited, remember to execute " "the following command to update the capability database:" @@ -64141,17 +64886,17 @@ msgstr "" "新登入類別的能力資料庫(Capability database):" #. (itstool) path: sect4/title -#: book.translate.xml:43285 +#: book.translate.xml:43494 msgid "Utilities Which Change Login Classes" msgstr "變更登入類別的工具" #. (itstool) path: sect4/indexterm -#: book.translate.xml:43287 +#: book.translate.xml:43496 msgid "<primary><command>vipw</command></primary>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43291 +#: book.translate.xml:43500 msgid "" "In addition to manually editing <filename>/etc/login.conf</filename>, " "several utilities are available for setting the locale for newly created " @@ -64161,7 +64906,7 @@ msgstr "" "新建立的使用者設定語系。" #. (itstool) path: sect4/para -#: book.translate.xml:43296 +#: book.translate.xml:43505 msgid "" "When using <command>vipw</command> to add new users, specify the " "<replaceable>language</replaceable> to set the locale:" @@ -64170,13 +64915,13 @@ msgstr "" "replaceable> 來設定語系:" #. (itstool) path: sect4/programlisting -#: book.translate.xml:43300 +#: book.translate.xml:43509 #, no-wrap msgid "user:password:1111:11:<replaceable>language</replaceable>:0:0:User Name:/home/user:/bin/sh" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43307 +#: book.translate.xml:43516 msgid "" "When using <command>adduser</command> to add new users, the default language " "can be pre-configured for all new users or specified for an individual user." @@ -64185,7 +64930,7 @@ msgstr "" "者事先設定預設的語言。" #. (itstool) path: sect4/para -#: book.translate.xml:43311 +#: book.translate.xml:43520 msgid "" "If all new users use the same language, set " "<literal>defaultclass=<replaceable>language</replaceable></literal> in " @@ -64196,49 +64941,49 @@ msgstr "" "literal>。" #. (itstool) path: sect4/para -#: book.translate.xml:43315 +#: book.translate.xml:43524 msgid "" "To override this setting when creating a user, either input the required " "locale at this prompt:" msgstr "要在建立使用者時覆蓋預設的設定,可在出現此提示時輸入需要的語系:" #. (itstool) path: sect4/screen -#: book.translate.xml:43318 +#: book.translate.xml:43527 #, no-wrap msgid "<prompt>Enter login class: default []:</prompt>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43320 +#: book.translate.xml:43529 msgid "or specify the locale to set when invoking <command>adduser</command>:" msgstr "或執行 <command>adduser</command> 時指定語系:" #. (itstool) path: sect4/screen -#: book.translate.xml:43323 +#: book.translate.xml:43532 #, no-wrap msgid "<prompt>#</prompt> <userinput>adduser -class <replaceable>language</replaceable></userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:43329 +#: book.translate.xml:43538 msgid "" "If <command>pw</command> is used to add new users, specify the locale as " "follows:" msgstr "若使用 <command>pw</command> 來新增使用者,則可指定語系如下:" #. (itstool) path: sect4/screen -#: book.translate.xml:43332 +#: book.translate.xml:43541 #, no-wrap msgid "<prompt>#</prompt> <userinput>pw useradd <replaceable>user_name</replaceable> -L <replaceable>language</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:43337 +#: book.translate.xml:43546 msgid "Shell Startup File Method" msgstr "Shell 啟動檔 (Startup File) 法" #. (itstool) path: sect3/para -#: book.translate.xml:43339 +#: book.translate.xml:43548 msgid "" "This second method is not recommended as each shell that is used requires " "manual configuration, where each shell has a different configuration file " @@ -64255,7 +65000,7 @@ msgstr "" "filename> 或 <filename>/usr/share/skel/dot.profile</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43350 +#: book.translate.xml:43559 #, no-wrap msgid "" "<envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar>\n" @@ -64263,7 +65008,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43353 +#: book.translate.xml:43562 msgid "" "However, the name of the configuration file and the syntax used differs for " "the <command>csh</command> shell. These are the equivalent settings for " @@ -64275,7 +65020,7 @@ msgstr "" "login</filename> 或 <filename>/usr/share/skel/dot.login</filename>:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43360 +#: book.translate.xml:43569 #, no-wrap msgid "" "setenv <envar>LANG</envar> de_DE.ISO8859-1\n" @@ -64283,7 +65028,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:43363 +#: book.translate.xml:43572 msgid "" "To complicate matters, the syntax needed to configure <application>Xorg</" "application> in <filename>~/.xinitrc</filename> also depends upon the shell. " @@ -64295,24 +65040,24 @@ msgstr "" "command> shell 而第二個則是針對 <command>csh</command> shell:" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43370 +#: book.translate.xml:43579 #, no-wrap msgid "<envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar>" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:43372 +#: book.translate.xml:43581 #, no-wrap msgid "setenv <envar>LANG</envar> de_DE.ISO8859-1" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43377 +#: book.translate.xml:43586 msgid "Console Setup" msgstr "Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:43379 +#: book.translate.xml:43588 msgid "" "Several localized fonts are available for the console. To see a listing of " "available fonts, type <command>ls /usr/share/syscons/fonts</command>. To " @@ -64326,7 +65071,7 @@ msgstr "" "型名稱 <replaceable>font_name</replaceable>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43387 +#: book.translate.xml:43596 #, no-wrap msgid "" "font8x16=<replaceable>font_name</replaceable>\n" @@ -64335,17 +65080,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43391 +#: book.translate.xml:43600 msgid "<primary>keymap</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43392 +#: book.translate.xml:43601 msgid "<primary>screenmap</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43393 +#: book.translate.xml:43602 msgid "" "The keymap and screenmap can be set by adding the following to <filename>/" "etc/rc.conf</filename>:" @@ -64354,7 +65099,7 @@ msgstr "" "rc.conf</filename> 來設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43396 +#: book.translate.xml:43605 #, no-wrap msgid "" "scrnmap=<replaceable>screenmap_name</replaceable>\n" @@ -64363,7 +65108,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43400 +#: book.translate.xml:43609 msgid "" "To see the list of available screenmaps, type <command>ls /usr/share/syscons/" "scrnmaps</command>. Do not include the <filename>.scm</filename> suffix when " @@ -64379,7 +65124,7 @@ msgstr "" "8 的欄位,字母會移出虛擬繪圖區 (Pseudographics area)。" #. (itstool) path: sect2/para -#: book.translate.xml:43409 +#: book.translate.xml:43618 msgid "" "To see the list of available keymaps, type <command>ls /usr/share/syscons/" "keymaps</command>. When specifying the <replaceable>keymap_name</" @@ -64394,7 +65139,7 @@ msgstr "" "citerefentry>。" #. (itstool) path: sect2/para -#: book.translate.xml:43416 +#: book.translate.xml:43625 msgid "" "The <literal>keychange</literal> entry is usually needed to program function " "keys to match the selected terminal type because function key sequences " @@ -64404,7 +65149,7 @@ msgstr "" "定對應選擇終對機類型的功能鍵。" #. (itstool) path: sect2/para -#: book.translate.xml:43421 +#: book.translate.xml:43630 msgid "" "Next, set the correct console terminal type in <filename>/etc/ttys</" "filename> for all virtual terminal entries. <xref linkend=\"locale-charset\"/" @@ -64415,97 +65160,97 @@ msgstr "" "型:" #. (itstool) path: table/title -#: book.translate.xml:43427 +#: book.translate.xml:43636 msgid "Defined Terminal Types for Character Sets" msgstr "已定義供特定字元集使用的終端機類型" #. (itstool) path: row/entry -#: book.translate.xml:43432 +#: book.translate.xml:43641 msgid "Character Set" msgstr "字元集" #. (itstool) path: row/entry -#: book.translate.xml:43433 +#: book.translate.xml:43642 msgid "Terminal Type" msgstr "終端機類型" #. (itstool) path: row/entry -#: book.translate.xml:43439 +#: book.translate.xml:43648 msgid "ISO8859-1 or ISO8859-15" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43440 +#: book.translate.xml:43649 msgid "<literal>cons25l1</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43444 +#: book.translate.xml:43653 msgid "ISO8859-2" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43445 +#: book.translate.xml:43654 msgid "<literal>cons25l2</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43449 +#: book.translate.xml:43658 msgid "ISO8859-7" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43450 +#: book.translate.xml:43659 msgid "<literal>cons25l7</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43454 +#: book.translate.xml:43663 msgid "KOI8-R" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43455 +#: book.translate.xml:43664 msgid "<literal>cons25r</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43459 +#: book.translate.xml:43668 msgid "KOI8-U" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43460 +#: book.translate.xml:43669 msgid "<literal>cons25u</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43464 +#: book.translate.xml:43673 msgid "CP437 (VGA default)" msgstr "CP437 (VGA 預設值)" #. (itstool) path: row/entry -#: book.translate.xml:43465 +#: book.translate.xml:43674 msgid "<literal>cons25</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43469 +#: book.translate.xml:43678 msgid "US-ASCII" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43470 +#: book.translate.xml:43679 msgid "<literal>cons25w</literal>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43476 +#: book.translate.xml:43685 msgid "<primary><application>moused</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43480 +#: book.translate.xml:43689 msgid "" "For languages with wide or multibyte characters, install a console for that " "language from the FreeBSD Ports Collection. The available ports are " @@ -64519,73 +65264,73 @@ msgstr "" "用說明。" #. (itstool) path: table/title -#: book.translate.xml:43487 +#: book.translate.xml:43696 msgid "Available Console from Ports Collection" msgstr "Port 套件集中可用的 Console" #. (itstool) path: row/entry -#: book.translate.xml:43492 book.translate.xml:43571 +#: book.translate.xml:43701 book.translate.xml:43780 msgid "Language" msgstr "語言" #. (itstool) path: row/entry -#: book.translate.xml:43493 +#: book.translate.xml:43702 msgid "Port Location" msgstr "Port 位置" #. (itstool) path: row/entry -#: book.translate.xml:43499 +#: book.translate.xml:43708 msgid "Traditional Chinese (BIG-5)" msgstr "繁體中文 (BIG-5)" #. (itstool) path: row/entry -#: book.translate.xml:43500 +#: book.translate.xml:43709 msgid "<package>chinese/big5con</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43504 book.translate.xml:43509 +#: book.translate.xml:43713 book.translate.xml:43718 msgid "Chinese/Japanese/Korean" msgstr "中文/日文/韓文" #. (itstool) path: row/entry -#: book.translate.xml:43505 +#: book.translate.xml:43714 msgid "<package>chinese/cce</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43510 +#: book.translate.xml:43719 msgid "<package>chinese/zhcon</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43514 book.translate.xml:43519 book.translate.xml:43524 -#: book.translate.xml:43614 book.translate.xml:43619 book.translate.xml:43624 -#: book.translate.xml:43629 book.translate.xml:43634 book.translate.xml:43639 -#: book.translate.xml:43644 book.translate.xml:43649 book.translate.xml:43654 -#: book.translate.xml:43659 book.translate.xml:43664 book.translate.xml:43669 -#: book.translate.xml:43674 book.translate.xml:43679 book.translate.xml:43684 -#: book.translate.xml:43689 book.translate.xml:43694 book.translate.xml:43699 +#: book.translate.xml:43723 book.translate.xml:43728 book.translate.xml:43733 +#: book.translate.xml:43823 book.translate.xml:43828 book.translate.xml:43833 +#: book.translate.xml:43838 book.translate.xml:43843 book.translate.xml:43848 +#: book.translate.xml:43853 book.translate.xml:43858 book.translate.xml:43863 +#: book.translate.xml:43868 book.translate.xml:43873 book.translate.xml:43878 +#: book.translate.xml:43883 book.translate.xml:43888 book.translate.xml:43893 +#: book.translate.xml:43898 book.translate.xml:43903 book.translate.xml:43908 msgid "Japanese" msgstr "日文" #. (itstool) path: row/entry -#: book.translate.xml:43515 +#: book.translate.xml:43724 msgid "<package>chinese/kon2</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43520 +#: book.translate.xml:43729 msgid "<package>japanese/kon2-14dot</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43525 +#: book.translate.xml:43734 msgid "<package>japanese/kon2-16dot</package>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43531 +#: book.translate.xml:43740 msgid "" "If <application>moused</application> is enabled in <filename>/etc/rc.conf</" "filename>, additional configuration may be required. By default, the mouse " @@ -64603,18 +65348,18 @@ msgstr "" "到 <filename>/etc/rc.conf</filename> 來移動游標的範圍:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43540 +#: book.translate.xml:43749 #, no-wrap msgid "mousechar_start=3" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43544 +#: book.translate.xml:43753 msgid "Xorg Setup" msgstr "Xorg 設定" #. (itstool) path: sect2/para -#: book.translate.xml:43546 +#: book.translate.xml:43755 msgid "" "<xref linkend=\"x11\"/> describes how to install and configure " "<application>Xorg</application>. When configuring <application>Xorg</" @@ -64631,12 +65376,12 @@ msgstr "" "filename> 中調校且可允許使用者在圖型化應用程式選單檢視其所選擇的語言。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43556 +#: book.translate.xml:43765 msgid "<primary>X Input Method (XIM)</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43558 +#: book.translate.xml:43767 msgid "" "The X Input Method (<acronym>XIM</acronym>) protocol is an " "<application>Xorg</application> standard for inputting non-English " @@ -64650,200 +65395,200 @@ msgstr "" "式。" #. (itstool) path: table/title -#: book.translate.xml:43566 +#: book.translate.xml:43775 msgid "Available Input Methods" msgstr "可用的輸入法" #. (itstool) path: row/entry -#: book.translate.xml:43572 +#: book.translate.xml:43781 msgid "Input Method" msgstr "輸入法" #. (itstool) path: row/entry -#: book.translate.xml:43579 book.translate.xml:43584 book.translate.xml:43589 -#: book.translate.xml:43594 book.translate.xml:43599 book.translate.xml:43604 -#: book.translate.xml:43609 +#: book.translate.xml:43788 book.translate.xml:43793 book.translate.xml:43798 +#: book.translate.xml:43803 book.translate.xml:43808 book.translate.xml:43813 +#: book.translate.xml:43818 msgid "Chinese" msgstr "中文" #. (itstool) path: row/entry -#: book.translate.xml:43580 +#: book.translate.xml:43789 msgid "<package>chinese/gcin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43585 +#: book.translate.xml:43794 msgid "<package>chinese/ibus-chewing</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43590 +#: book.translate.xml:43799 msgid "<package>chinese/ibus-pinyin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43595 +#: book.translate.xml:43804 msgid "<package>chinese/oxim</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43600 +#: book.translate.xml:43809 msgid "<package>chinese/scim-fcitx</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43605 +#: book.translate.xml:43814 msgid "<package>chinese/scim-pinyin</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43610 +#: book.translate.xml:43819 msgid "<package>chinese/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43615 +#: book.translate.xml:43824 msgid "<package>japanese/ibus-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43620 +#: book.translate.xml:43829 msgid "<package>japanese/ibus-mozc</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43625 +#: book.translate.xml:43834 msgid "<package>japanese/ibus-skk</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43630 +#: book.translate.xml:43839 msgid "<package>japanese/im-ja</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43635 +#: book.translate.xml:43844 msgid "<package>japanese/kinput2</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43640 +#: book.translate.xml:43849 msgid "<package>japanese/scim-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43645 +#: book.translate.xml:43854 msgid "<package>japanese/scim-canna</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43650 +#: book.translate.xml:43859 msgid "<package>japanese/scim-honoka</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43655 +#: book.translate.xml:43864 msgid "<package>japanese/scim-honoka-plugin-romkan</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43660 +#: book.translate.xml:43869 msgid "<package>japanese/scim-honoka-plugin-wnn</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43665 +#: book.translate.xml:43874 msgid "<package>japanese/scim-prime</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43670 +#: book.translate.xml:43879 msgid "<package>japanese/scim-skk</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43675 +#: book.translate.xml:43884 msgid "<package>japanese/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43680 +#: book.translate.xml:43889 msgid "<package>japanese/scim-tomoe</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43685 +#: book.translate.xml:43894 msgid "<package>japanese/scim-uim</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43690 +#: book.translate.xml:43899 msgid "<package>japanese/skkinput</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43695 +#: book.translate.xml:43904 msgid "<package>japanese/skkinput3</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43700 +#: book.translate.xml:43909 msgid "<package>japanese/uim-anthy</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43704 book.translate.xml:43709 book.translate.xml:43714 -#: book.translate.xml:43719 book.translate.xml:43724 +#: book.translate.xml:43913 book.translate.xml:43918 book.translate.xml:43923 +#: book.translate.xml:43928 book.translate.xml:43933 msgid "Korean" msgstr "韓文" #. (itstool) path: row/entry -#: book.translate.xml:43705 +#: book.translate.xml:43914 msgid "<package>korean/ibus-hangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43710 +#: book.translate.xml:43919 msgid "<package>korean/imhangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43715 +#: book.translate.xml:43924 msgid "<package>korean/nabi</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43720 +#: book.translate.xml:43929 msgid "<package>korean/scim-hangul</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43725 +#: book.translate.xml:43934 msgid "<package>korean/scim-tables</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43729 book.translate.xml:43734 +#: book.translate.xml:43938 book.translate.xml:43943 msgid "Vietnamese" msgstr "越南文" #. (itstool) path: row/entry -#: book.translate.xml:43730 +#: book.translate.xml:43939 msgid "<package>vietnamese/xvnkb</package>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:43735 +#: book.translate.xml:43944 msgid "<package>vietnamese/x-unikey</package>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:43779 +#: book.translate.xml:43988 msgid "Finding <acronym>i18n</acronym> Applications" msgstr "尋找 <acronym>i18n</acronym> 應用程式" #. (itstool) path: sect1/para -#: book.translate.xml:43781 +#: book.translate.xml:43990 msgid "" "<acronym>i18n</acronym> applications are programmed using <acronym>i18n</" "acronym> kits under libraries. These allow developers to write a simple file " @@ -64853,7 +65598,7 @@ msgstr "" "庫開發。這讓開發人員可以寫一個簡單的檔案並翻譯顯示的選單及文字至各種語言。" #. (itstool) path: sect1/para -#: book.translate.xml:43786 +#: book.translate.xml:43995 msgid "" "The <link xlink:href=\"@@URL_RELPREFIX@@/ports/index.html\">FreeBSD Ports " "Collection</link> contains many applications with built-in support for wide " @@ -64867,7 +65612,7 @@ msgstr "" "支援您所需要的語言。" #. (itstool) path: sect1/para -#: book.translate.xml:43793 +#: book.translate.xml:44002 msgid "" "Some applications can be compiled with the specific charset. This is usually " "done in the port's <filename>Makefile</filename> or by passing a value to " @@ -64884,12 +65629,12 @@ msgstr "" "解在編譯時有那些可以使用的編譯選項。" #. (itstool) path: sect1/title -#: book.translate.xml:43805 +#: book.translate.xml:44014 msgid "Locale Configuration for Specific Languages" msgstr "特定語言的語系設定" #. (itstool) path: sect1/para -#: book.translate.xml:43807 +#: book.translate.xml:44016 msgid "" "This section provides configuration examples for localizing a FreeBSD system " "for the Russian language. It then provides some additional resources for " @@ -64897,24 +65642,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:43813 +#: book.translate.xml:44022 msgid "Russian Language (KOI8-R Encoding)" msgstr "俄語 (KOI8-R 編碼)" #. (itstool) path: authorgroup/author -#: book.translate.xml:43816 +#: book.translate.xml:44025 msgid "" "<personname><firstname>Andrey</firstname><surname>Chernov</surname></" "personname><contrib>Originally contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43821 +#: book.translate.xml:44030 msgid "<primary>localization</primary> <secondary>Russian</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43826 +#: book.translate.xml:44035 msgid "" "This section shows the specific settings needed to localize a FreeBSD system " "for the Russian language. Refer to <link linkend=\"using-localization" @@ -64923,14 +65668,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43832 +#: book.translate.xml:44041 msgid "" "To set this locale for the login shell, add the following lines to each " "user's <filename>~/.login_conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43836 +#: book.translate.xml:44045 #, no-wrap msgid "" "me:My Account:\\\n" @@ -64939,14 +65684,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43840 +#: book.translate.xml:44049 msgid "" "To configure the console, add the following lines to <filename>/etc/rc.conf</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43843 +#: book.translate.xml:44052 #, no-wrap msgid "" "keymap=\"ru.koi8-r\"\n" @@ -64958,19 +65703,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43850 +#: book.translate.xml:44059 msgid "" "For each <literal>ttyv</literal> entry in <filename>/etc/ttys</filename>, " "use <literal>cons25r</literal> as the terminal type." msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43854 +#: book.translate.xml:44063 msgid "<primary>printers</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43855 +#: book.translate.xml:44064 msgid "" "To configure printing, a special output filter is needed to convert from " "KOI8-R to CP866 since most printers with Russian characters come with " @@ -64980,7 +65725,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43863 +#: book.translate.xml:44072 #, no-wrap msgid "" "lp|Russian local line printer:\\\n" @@ -64989,14 +65734,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43867 +#: book.translate.xml:44076 msgid "" "Refer to <citerefentry><refentrytitle>printcap</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for a more detailed explanation." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43870 +#: book.translate.xml:44079 msgid "" "To configure support for Russian filenames in mounted <trademark class=" "\"registered\">MS-DOS</trademark> file systems, include <option>-L</option> " @@ -65004,20 +65749,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43875 +#: book.translate.xml:44084 #, no-wrap msgid "/dev/ad0s2 /dos/c msdos rw,-Lru_RU.KOI8-R 0 0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43877 +#: book.translate.xml:44086 msgid "" "Refer to <citerefentry><refentrytitle>mount_msdosfs</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> for more details." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43879 +#: book.translate.xml:44088 msgid "" "To configure Russian fonts for <application>Xorg</application>, install the " "<package>x11-fonts/xorg-fonts-cyrillic</package> package. Then, check the " @@ -65027,25 +65772,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43887 +#: book.translate.xml:44096 #, no-wrap msgid "FontPath \"/usr/local/lib/X11/fonts/cyrillic\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43889 +#: book.translate.xml:44098 msgid "Additional Cyrillic fonts are available in the Ports Collection." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43892 +#: book.translate.xml:44101 msgid "" "To activate a Russian keyboard, add the following to the <literal>\"Keyboard" "\"</literal> section of <filename>/etc/xorg.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43896 +#: book.translate.xml:44105 #, no-wrap msgid "" "Option \"XkbLayout\" \"us,ru\"\n" @@ -65053,13 +65798,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43899 +#: book.translate.xml:44108 msgid "" "Make sure that <literal>XkbDisable</literal> is commented out in that file." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43902 +#: book.translate.xml:44111 msgid "" "For <literal>grp:toggle</literal> use <keycap>Right Alt</keycap>, for " "<literal>grp:ctrl_shift_toggle</literal> use <keycombo action=\"simul" @@ -65072,7 +65817,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43913 +#: book.translate.xml:44122 msgid "" "If the keyboard has <quote><trademark class=\"registered\">Windows</" "trademark></quote> keys, and some non-alphabetical keys are mapped " @@ -65080,13 +65825,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:43917 +#: book.translate.xml:44126 #, no-wrap msgid "Option \"XkbVariant\" \",winkeys\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:43920 +#: book.translate.xml:44129 msgid "" "The Russian XKB keyboard may not work with non-localized applications. " "Minimally localized applications should call a <function>XtSetLanguageProc " @@ -65094,7 +65839,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:43927 +#: book.translate.xml:44136 msgid "" "See <uri xlink:href=\"http://koi8.pp.ru/xwin.html\">http://koi8.pp.ru/xwin." "html</uri> for more instructions on localizing <application>Xorg</" @@ -65104,49 +65849,49 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:43934 +#: book.translate.xml:44143 msgid "Additional Language-Specific Resources" msgstr "其他特定語言資源" #. (itstool) path: sect2/para -#: book.translate.xml:43936 +#: book.translate.xml:44145 msgid "" "This section lists some additional resources for configuring other locales." msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43939 +#: book.translate.xml:44148 msgid "" "<primary>localization</primary> <secondary>Traditional Chinese</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43943 +#: book.translate.xml:44152 msgid "<primary>localization</primary> <secondary>German</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43947 +#: book.translate.xml:44156 msgid "<primary>localization</primary> <secondary>Greek</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43951 +#: book.translate.xml:44160 msgid "<primary>localization</primary> <secondary>Japanese</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:43955 +#: book.translate.xml:44164 msgid "<primary>localization</primary> <secondary>Korean</secondary>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:43962 +#: book.translate.xml:44171 msgid "Traditional Chinese for Taiwan" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43965 +#: book.translate.xml:44174 msgid "" "The FreeBSD-Taiwan Project has a Chinese HOWTO for FreeBSD at <uri xlink:" "href=\"http://netlab.cse.yzu.edu.tw/~statue/freebsd/zh-tut/\">http://netlab." @@ -65154,12 +65899,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:43971 +#: book.translate.xml:44180 msgid "Greek Language Localization" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43974 +#: book.translate.xml:44183 msgid "" "A complete article on Greek support in FreeBSD is available <link xlink:href=" "\"@@URL_RELPREFIX@@/doc/el_GR.ISO8859-7/articles/greek-language-support/" @@ -65168,12 +65913,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:43982 +#: book.translate.xml:44191 msgid "Japanese and Korean Language Localization" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43985 +#: book.translate.xml:44194 msgid "" "For Japanese, refer to <uri xlink:href=\"http://www.jp.FreeBSD.org/\">http://" "www.jp.FreeBSD.org/</uri>, and for Korean, refer to <uri xlink:href=\"http://" @@ -65181,12 +65926,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:43991 +#: book.translate.xml:44200 msgid "Non-English FreeBSD Documentation" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:43994 +#: book.translate.xml:44203 msgid "" "Some FreeBSD contributors have translated parts of the FreeBSD documentation " "to other languages. They are available through links on the <link xlink:href=" @@ -65195,12 +65940,12 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:44015 +#: book.translate.xml:44224 msgid "Updating and Upgrading FreeBSD" msgstr "更新與升級 FreeBSD" #. (itstool) path: authorgroup/author -#: book.translate.xml:44018 +#: book.translate.xml:44227 msgid "" "<personname> <firstname>Jim</firstname> <surname>Mock</surname> </" "personname> <contrib>Restructured, reorganized, and parts updated by </" @@ -65208,35 +65953,35 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44030 +#: book.translate.xml:44239 msgid "" "<personname> <firstname>Jordan</firstname> <surname>Hubbard</surname> </" "personname> <contrib>Original work by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44038 +#: book.translate.xml:44247 msgid "" "<personname> <firstname>Poul-Henning</firstname> <surname>Kamp</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44045 +#: book.translate.xml:44254 msgid "" "<personname> <firstname>John</firstname> <surname>Polstra</surname> </" "personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:44052 +#: book.translate.xml:44261 msgid "" "<personname> <firstname>Nik</firstname> <surname>Clayton</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44064 +#: book.translate.xml:44273 msgid "" "FreeBSD is under constant development between releases. Some people prefer " "to use the officially released versions, while others prefer to keep in sync " @@ -65247,30 +65992,30 @@ msgid "" "track the development system and the basic tools for keeping a FreeBSD " "system up-to-date." msgstr "" -"FreeBSD 在每次的發佈之間持續在開發。有些人喜歡官方發佈的版本,有些人則喜歡持" -"續同步使用最新的開發版本。雖然如此,即使是官方發佈的版本仍時常會有安全性與其" -"他緊急修復的更新。無論使用哪種版本,FreeBSD 都提供所有必要的工具來讓系統保持" -"最新版,而且可以輕易升級不同版本。本章將說明如何追蹤開發版本的系統及保持 " -"FreeBSD 系統維持新版的基本工具。" +"FreeBSD 在每次的發佈之間持續在開發。有些人偏好正式發佈的版本,也有另一群人喜" +"歡使用最新的開發版本。然而,即使是正式發佈的版本也時常會有安全性與其他緊急修" +"復的更新,因此,無論使用哪種版本,FreeBSD 都提供所有必要的工具來讓系統能維持" +"最新的版本,且讓各種版本都能簡單的升級。本章將說明如何追蹤開發版本的系統及讓 " +"FreeBSD 系統維持最新版本的基本工具。" #. (itstool) path: listitem/para -#: book.translate.xml:44078 +#: book.translate.xml:44287 msgid "" "How to keep a FreeBSD system up-to-date with <application>freebsd-update</" "application> or <application>Subversion</application>." msgstr "" "如何使用 <application>freebsd-update</application>, <application>Subversion</" -"application> 來讓 FreeBSD 系統保持新版。" +"application> 來維持 FreeBSD 系統為最新版。" #. (itstool) path: listitem/para -#: book.translate.xml:44084 +#: book.translate.xml:44293 msgid "" "How to compare the state of an installed system against a known pristine " "copy." msgstr "如何比對已安裝系統與已知原始複本間的狀態。" #. (itstool) path: listitem/para -#: book.translate.xml:44089 +#: book.translate.xml:44298 msgid "" "How to keep the installed documentation up-to-date with " "<application>Subversion</application> or documentation ports." @@ -65279,33 +66024,33 @@ msgstr "" "文件為新版。" #. (itstool) path: listitem/para -#: book.translate.xml:44095 +#: book.translate.xml:44304 msgid "" "The difference between the two development branches: FreeBSD-STABLE and " "FreeBSD-CURRENT." msgstr "兩種開發分支間的差異:FreeBSD-STABLE 與 FreeBSD-CURRENT。" #. (itstool) path: listitem/para -#: book.translate.xml:44100 +#: book.translate.xml:44309 msgid "How to rebuild and reinstall the entire base system." msgstr "如何重新編譯及重新安裝整個基礎系統 (Base system)。" #. (itstool) path: listitem/para -#: book.translate.xml:44109 +#: book.translate.xml:44318 msgid "" "Properly set up the network connection (<xref linkend=\"advanced-networking" "\"/>)." msgstr "正確的設定網路連線 (<xref linkend=\"advanced-networking\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:44114 book.translate.xml:50555 book.translate.xml:61861 +#: book.translate.xml:44323 book.translate.xml:50176 book.translate.xml:61483 msgid "" "Know how to install additional third-party software (<xref linkend=\"ports\"/" ">)." msgstr "了解如何安裝其他第三方軟體 (<xref linkend=\"ports\"/>)。" #. (itstool) path: note/para -#: book.translate.xml:44120 +#: book.translate.xml:44329 msgid "" "Throughout this chapter, <command>svn</command> is used to obtain and update " "FreeBSD sources. To use it, first install the <package>devel/subversion</" @@ -65315,12 +66060,12 @@ msgstr "" "令請先安裝 <package>devel/subversion</package> Port 或套件。" #. (itstool) path: info/title -#: book.translate.xml:44129 +#: book.translate.xml:44338 msgid "FreeBSD Update" msgstr "FreeBSD 更新" #. (itstool) path: authorgroup/author -#: book.translate.xml:44142 +#: book.translate.xml:44351 msgid "" "<personname> <firstname>Colin</firstname> <surname>Percival</surname> </" "personname> <contrib>Based on notes provided by </contrib>" @@ -65328,29 +66073,29 @@ msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:44152 book.translate.xml:44659 book.translate.xml:44795 +#: book.translate.xml:44361 book.translate.xml:44868 book.translate.xml:45004 msgid "<primary>Updating and Upgrading</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44155 +#: book.translate.xml:44364 msgid "<primary>freebsd-update</primary> <see>updating-upgrading</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44160 +#: book.translate.xml:44369 msgid "" "Applying security patches in a timely manner and upgrading to a newer " "release of an operating system are important aspects of ongoing system " "administration. FreeBSD includes a utility called <command>freebsd-update</" "command> which can be used to perform both these tasks." msgstr "" -"即時套用安全性更新並升級到新發佈的作業系統對管理一個持續運作的系統是重要的。" -"FreeBSD 內含可以執行這兩項任務的工具程式,叫做 <command>freebsd-update</" -"command>。" +"隨時套用安全性更新以及升級到新發佈的作業系統版本對管理一個持續運作的系統是非" +"常重要的任務,FreeBSD 內含可以執行這兩項任務的工具程式,叫做 " +"<command>freebsd-update</command>。" #. (itstool) path: sect1/para -#: book.translate.xml:44166 +#: book.translate.xml:44375 msgid "" "This utility supports binary security and errata updates to FreeBSD, without " "the need to manually compile and install the patch or a new kernel. Binary " @@ -65365,7 +66110,7 @@ msgstr "" "www.FreeBSD.org/security/\">http://www.FreeBSD.org/security/</uri>。" #. (itstool) path: sect1/para -#: book.translate.xml:44173 +#: book.translate.xml:44382 msgid "" "This utility also supports operating system upgrades to minor point releases " "as well as upgrades to another release branch. Before upgrading to a new " @@ -65380,7 +66125,7 @@ msgstr "" "releases/\">http://www.FreeBSD.org/releases/</uri> 取得。" #. (itstool) path: note/para -#: book.translate.xml:44180 +#: book.translate.xml:44389 msgid "" "If a <command>crontab</command> utilizing the features of " "<citerefentry><refentrytitle>freebsd-update</refentrytitle><manvolnum>8</" @@ -65392,7 +66137,7 @@ msgstr "" "manvolnum></citerefentry>,則必須在升級作業系統前先關閉。" #. (itstool) path: sect1/para -#: book.translate.xml:44185 +#: book.translate.xml:44394 msgid "" "This section describes the configuration file used by <command>freebsd-" "update</command>, demonstrates how to apply a security patch and how to " @@ -65404,7 +66149,7 @@ msgstr "" "事項。" #. (itstool) path: sect2/para -#: book.translate.xml:44194 +#: book.translate.xml:44403 msgid "" "The default configuration file for <command>freebsd-update</command> works " "as-is. Some users may wish to tweak the default configuration in <filename>/" @@ -65418,7 +66163,7 @@ msgstr "" "要進一步的說明:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44202 +#: book.translate.xml:44411 #, no-wrap msgid "" "# Components of the base system which should be kept updated.\n" @@ -65426,7 +66171,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44205 +#: book.translate.xml:44414 msgid "" "This parameter controls which parts of FreeBSD will be kept up-to-date. The " "default is to update the entire base system and the kernel. Individual " @@ -65443,7 +66188,7 @@ msgstr "" "新而造成慘重的後果。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44215 +#: book.translate.xml:44424 #, no-wrap msgid "" "# Paths which start with anything matching an entry in an IgnorePaths\n" @@ -65452,7 +66197,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44219 +#: book.translate.xml:44428 msgid "" "To leave specified directories, such as <filename>/bin</filename> or " "<filename>/sbin</filename>, untouched during the update process, add their " @@ -65464,7 +66209,7 @@ msgstr "" "<command>freebsd-update</command> 覆蓋本地的修改。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44226 +#: book.translate.xml:44435 #, no-wrap msgid "" "# Paths which start with anything matching an entry in an UpdateIfUnmodified\n" @@ -65474,7 +66219,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44231 +#: book.translate.xml:44440 msgid "" "This option will only update unmodified configuration files in the specified " "directories. Any changes made by the user will prevent the automatic " @@ -65487,7 +66232,7 @@ msgstr "" "<command>freebsd-update</command> 在合併時儲存使用者做的變更。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44239 +#: book.translate.xml:44448 #, no-wrap msgid "" "# When upgrading to a new FreeBSD release, files which match MergeChanges\n" @@ -65496,7 +66241,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44243 +#: book.translate.xml:44452 msgid "" "List of directories with configuration files that <command>freebsd-update</" "command> should attempt to merge. The file merge process is a series of " @@ -65505,8 +66250,10 @@ msgid "" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, but with fewer " "options. Merges are either accepted, open an editor, or cause " "<command>freebsd-update</command> to abort. When in doubt, backup <filename>/" -"etc</filename> and just accept the merges. See <xref linkend=\"mergemaster\"/" -"> for more information about <command>mergemaster</command>." +"etc</filename> and just accept the merges. See " +"<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> for more information about <command>mergemaster</" +"command>." msgstr "" "列出 <command>freebsd-update</command> 應嘗試合併的設定檔目錄。 檔案合併程序" "是指一系列類似 <citerefentry><refentrytitle>mergemaster</" @@ -65515,10 +66262,11 @@ msgstr "" "citerefentry> 修補動作, 但是選項比較少。 合併的動作包含接受、開啟編輯器,或" "讓 <command>freebsd-update</command> 中止。 如果有疑慮,請先備份 <filename>/" "etc</filename>,然後再接受合併。 更多關於 <command>mergemaster</command> 的資" -"訊, 參見 <xref linkend=\"mergemaster\"/>。" +"訊, 參見 <citerefentry><refentrytitle>mergemaster</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44253 +#: book.translate.xml:44462 #, no-wrap msgid "" "# Directory in which to store downloaded updates and temporary\n" @@ -65527,7 +66275,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44257 +#: book.translate.xml:44466 msgid "" "This directory is where all patches and temporary files are placed. In cases " "where the user is doing a version upgrade, this location should have at " @@ -65537,7 +66285,7 @@ msgstr "" "有至少 1GB 的可用磁碟空間。" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44262 +#: book.translate.xml:44471 #, no-wrap msgid "" "# When upgrading between releases, should the list of Components be\n" @@ -65548,7 +66296,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44268 +#: book.translate.xml:44477 msgid "" "When this option is set to <literal>yes</literal>, <command>freebsd-update</" "command> will assume that the <literal>Components</literal> list is complete " @@ -65562,12 +66310,12 @@ msgstr "" "於 <literal>Components</literal> 清單中的檔案。" #. (itstool) path: sect2/title -#: book.translate.xml:44278 +#: book.translate.xml:44487 msgid "Applying Security Patches" msgstr "套用安全性修補" #. (itstool) path: sect2/para -#: book.translate.xml:44280 +#: book.translate.xml:44489 msgid "" "The process of applying FreeBSD security patches has been simplified, " "allowing an administrator to keep a system fully patched using " @@ -65579,7 +66327,7 @@ msgstr "" "<xref linkend=\"security-advisories\"/>。" #. (itstool) path: sect2/para -#: book.translate.xml:44286 +#: book.translate.xml:44495 msgid "" "FreeBSD security patches may be downloaded and installed using the following " "commands. The first command will determine if any outstanding patches are " @@ -65590,7 +66338,7 @@ msgstr "" "補,如果有,將列出若執行修補後會變更的檔案清單。第二個指令將會套用修補。" #. (itstool) path: sect2/screen -#: book.translate.xml:44292 +#: book.translate.xml:44501 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update fetch</userinput>\n" @@ -65598,7 +66346,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44295 +#: book.translate.xml:44504 msgid "" "If the update applies any kernel patches, the system will need a reboot in " "order to boot into the patched kernel. If the patch was applied to any " @@ -65610,7 +66358,7 @@ msgstr "" "本。" #. (itstool) path: sect2/para -#: book.translate.xml:44301 +#: book.translate.xml:44510 msgid "" "The system can be configured to automatically check for updates once every " "day by adding this entry to <filename>/etc/crontab</filename>:" @@ -65619,13 +66367,13 @@ msgstr "" "次:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:44305 +#: book.translate.xml:44514 #, no-wrap msgid "@daily root freebsd-update cron" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44307 +#: book.translate.xml:44516 msgid "" "If patches exist, they will automatically be downloaded but will not be " "applied. The <systemitem class=\"username\">root</systemitem> user will be " @@ -65637,7 +66385,7 @@ msgstr "" "<command>freebsd-update install</command> 安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:44313 +#: book.translate.xml:44522 msgid "" "If anything goes wrong, <command>freebsd-update</command> has the ability to " "roll back the last set of changes with the following command:" @@ -65646,7 +66394,7 @@ msgstr "" "後所做的變更:" #. (itstool) path: sect2/screen -#: book.translate.xml:44317 +#: book.translate.xml:44526 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>freebsd-update rollback</userinput>\n" @@ -65654,7 +66402,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44320 +#: book.translate.xml:44529 msgid "" "Again, the system should be restarted if the kernel or any kernel modules " "were modified and any affected binaries should be restarted." @@ -65663,7 +66411,7 @@ msgstr "" "Binary 應重新執行。" #. (itstool) path: sect2/para -#: book.translate.xml:44324 +#: book.translate.xml:44533 msgid "" "Only the <filename>GENERIC</filename> kernel can be automatically updated by " "<command>freebsd-update</command>. If a custom kernel is installed, it will " @@ -65680,7 +66428,7 @@ msgstr "" "新 <filename>GENERIC</filename> 核心,即使該核心並非目前系統正在執行的核心。" #. (itstool) path: note/para -#: book.translate.xml:44335 +#: book.translate.xml:44544 msgid "" "Always keep a copy of the <filename>GENERIC</filename> kernel in <filename>/" "boot/GENERIC</filename>. It will be helpful in diagnosing a variety of " @@ -65694,7 +66442,7 @@ msgstr "" "filename> 核心的複本說明。" #. (itstool) path: sect2/para -#: book.translate.xml:44343 +#: book.translate.xml:44552 msgid "" "Unless the default configuration in <filename>/etc/freebsd-update.conf</" "filename> has been changed, <command>freebsd-update</command> will install " @@ -65706,7 +66454,7 @@ msgstr "" "可依平常的方式執行重新編譯與重新安裝核心。" #. (itstool) path: sect2/para -#: book.translate.xml:44350 +#: book.translate.xml:44559 msgid "" "The updates distributed by <command>freebsd-update</command> do not always " "involve the kernel. It is not necessary to rebuild a custom kernel if the " @@ -65730,12 +66478,12 @@ msgstr "" "更新。" #. (itstool) path: sect2/title -#: book.translate.xml:44368 +#: book.translate.xml:44577 msgid "Performing Major and Minor Version Upgrades" msgstr "執行主要及次要版號升級" #. (itstool) path: sect2/para -#: book.translate.xml:44370 +#: book.translate.xml:44579 msgid "" "Upgrades from one minor version of FreeBSD to another, like from FreeBSD 9.0 " "to FreeBSD 9.1, are called <firstterm>minor version</firstterm> upgrades. " @@ -65751,7 +66499,7 @@ msgstr "" "以透過提供 <command>freebsd-update</command> 目標的發佈版本來執行。" #. (itstool) path: note/para -#: book.translate.xml:44380 +#: book.translate.xml:44589 msgid "" "If the system is running a custom kernel, make sure that a copy of the " "<filename>GENERIC</filename> kernel exists in <filename>/boot/GENERIC</" @@ -65765,20 +66513,20 @@ msgstr "" "何取得 <filename>GENERIC</filename> 核心複本的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:44388 +#: book.translate.xml:44597 msgid "" "The following command, when run on a FreeBSD 9.0 system, will upgrade it to " "FreeBSD 9.1:" msgstr "在 FreeBSD 9.0 系統執行以下指令,將會把系統升級至 FreeBSD 9.1:" #. (itstool) path: sect2/screen -#: book.translate.xml:44391 +#: book.translate.xml:44600 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update -r 9.1-RELEASE upgrade</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44393 +#: book.translate.xml:44602 msgid "" "After the command has been received, <command>freebsd-update</command> will " "evaluate the configuration file and current system in an attempt to gather " @@ -65789,7 +66537,7 @@ msgstr "" "統來收集升級所需的資訊。 螢幕會顯示偵測到或沒偵測到的元件清單。例如:" #. (itstool) path: sect2/screen -#: book.translate.xml:44400 +#: book.translate.xml:44609 #, no-wrap msgid "" "Looking up update.FreeBSD.org mirrors... 1 mirrors found.\n" @@ -65811,7 +66559,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44417 +#: book.translate.xml:44626 msgid "" "At this point, <command>freebsd-update</command> will attempt to download " "all files required for the upgrade. In some cases, the user may be prompted " @@ -65821,14 +66569,14 @@ msgstr "" "些情況,會詢問使用者一些關於要安裝什麼或要如何繼續。" #. (itstool) path: sect2/para -#: book.translate.xml:44422 +#: book.translate.xml:44631 msgid "" "When using a custom kernel, the above step will produce a warning similar to " "the following:" msgstr "當使用自訂核心,上述的步驟將會產生如下的警告:" #. (itstool) path: sect2/screen -#: book.translate.xml:44425 +#: book.translate.xml:44634 #, no-wrap msgid "" "WARNING: This system is running a \"<replaceable>MYKERNEL</replaceable>\" kernel, which is not a\n" @@ -65838,7 +66586,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44430 +#: book.translate.xml:44639 msgid "" "This warning may be safely ignored at this point. The updated " "<filename>GENERIC</filename> kernel will be used as an intermediate step in " @@ -65848,7 +66596,7 @@ msgstr "" "filename> 核心來進行。" #. (itstool) path: sect2/para -#: book.translate.xml:44434 +#: book.translate.xml:44643 msgid "" "Once all the patches have been downloaded to the local system, they will be " "applied. This process may take a while, depending on the speed and workload " @@ -65869,7 +66617,7 @@ msgstr "" "或 <filename>group</filename>。" #. (itstool) path: note/para -#: book.translate.xml:44448 +#: book.translate.xml:44657 msgid "" "The system is not being altered yet as all patching and merging is happening " "in another directory. Once all patches have been applied successfully, all " @@ -65883,13 +66631,13 @@ msgstr "" #. (itstool) path: note/screen #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:44455 book.translate.xml:44492 book.translate.xml:44586 +#: book.translate.xml:44664 book.translate.xml:44701 book.translate.xml:44795 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update install</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44458 +#: book.translate.xml:44667 msgid "" "The kernel and kernel modules will be patched first. If the system is " "running with a custom kernel, use <citerefentry><refentrytitle>nextboot</" @@ -65902,13 +66650,13 @@ msgstr "" "GENERIC</filename>:" #. (itstool) path: sect2/screen -#: book.translate.xml:44463 +#: book.translate.xml:44672 #, no-wrap msgid "<prompt>#</prompt> <userinput>nextboot -k GENERIC</userinput>" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:44466 +#: book.translate.xml:44675 msgid "" "Before rebooting with the <filename>GENERIC</filename> kernel, make sure it " "contains all the drivers required for the system to boot properly and " @@ -65927,18 +66675,19 @@ msgstr "" "filename> 核心。建議關閉非必須的服務和磁碟與網路掛載直到升級程序完成。" #. (itstool) path: sect2/para -#: book.translate.xml:44480 +#: book.translate.xml:44689 msgid "The machine should now be restarted with the updated kernel:" msgstr "機器現在應使用更新過的核心重新開機:" #. (itstool) path: sect2/screen -#: book.translate.xml:44483 +#. (itstool) path: sect3/screen +#: book.translate.xml:44692 book.translate.xml:45707 #, no-wrap msgid "<prompt>#</prompt> <userinput>shutdown -r now</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44485 +#: book.translate.xml:44694 msgid "" "Once the system has come back online, restart <command>freebsd-update</" "command> using the following command. Since the state of the process has " @@ -65951,14 +66700,14 @@ msgstr "" "一個階段並移除所有舊的共用程式庫和目標檔。" #. (itstool) path: note/para -#: book.translate.xml:44495 +#: book.translate.xml:44704 msgid "" "Depending upon whether any library version numbers were bumped, there may " "only be two install phases instead of three." msgstr "取決於是否有任何程式庫版本編號衝突,也可能只有兩個而不是三個安裝階段。" #. (itstool) path: sect2/para -#: book.translate.xml:44500 +#: book.translate.xml:44709 msgid "" "The upgrade is now complete. If this was a major version upgrade, reinstall " "all ports and packages as described in <xref linkend=\"freebsdupdate-" @@ -65968,12 +66717,12 @@ msgstr "" "\"freebsdupdate-portsrebuild\"/> 的說明重新安裝所有的 Port 和套件。" #. (itstool) path: sect3/title -#: book.translate.xml:44505 +#: book.translate.xml:44714 msgid "Custom Kernels with FreeBSD 9.X and Later" msgstr "在 FreeBSD 9.X 及之後版本自訂核心" #. (itstool) path: sect3/para -#: book.translate.xml:44507 +#: book.translate.xml:44716 msgid "" "Before using <command>freebsd-update</command>, ensure that a copy of the " "<filename>GENERIC</filename> kernel exists in <filename>/boot/GENERIC</" @@ -65987,7 +66736,7 @@ msgstr "" "literal> 核心,只需要將該目錄重新命名為 <filename>/boot/kernel</filename>。" #. (itstool) path: sect3/para -#: book.translate.xml:44515 +#: book.translate.xml:44724 msgid "" "If a custom kernel has been built more than once or if it is unknown how " "many times the custom kernel has been built, obtain a copy of the " @@ -66001,7 +66750,7 @@ msgstr "" "則可以從安裝媒體取得 <literal>GENERIC</literal> 核心複本:" #. (itstool) path: sect3/screen -#: book.translate.xml:44523 +#: book.translate.xml:44732 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mount /cdrom</userinput>\n" @@ -66010,14 +66759,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44527 +#: book.translate.xml:44736 msgid "" "Alternately, the <literal>GENERIC</literal> kernel may be rebuilt and " "installed from source:" msgstr "或者,可以從原始碼重新編譯 <literal>GENERIC</literal> 核心:" #. (itstool) path: sect3/screen -#: book.translate.xml:44530 +#: book.translate.xml:44739 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" @@ -66025,7 +66774,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44533 +#: book.translate.xml:44742 msgid "" "For this kernel to be identified as the <literal>GENERIC</literal> kernel by " "<command>freebsd-update</command>, the <filename>GENERIC</filename> " @@ -66037,7 +66786,7 @@ msgstr "" "在編譯核心時不要使用其他特殊選項。" #. (itstool) path: sect3/para -#: book.translate.xml:44541 +#: book.translate.xml:44750 msgid "" "Rebooting into the <filename>GENERIC</filename> kernel is not required as " "<command>freebsd-update</command> only needs <filename>/boot/GENERIC</" @@ -66047,12 +66796,12 @@ msgstr "" "存在便可,因此不須重新開機進入 <filename>GENERIC</filename>。" #. (itstool) path: sect3/title -#: book.translate.xml:44547 +#: book.translate.xml:44756 msgid "Upgrading Packages After a Major Version Upgrade" msgstr "主要版號升級後的套件升級" #. (itstool) path: sect3/para -#: book.translate.xml:44550 +#: book.translate.xml:44759 msgid "" "Generally, installed applications will continue to work without problems " "after minor version upgrades. Major versions use different Application " @@ -66070,7 +66819,7 @@ msgstr "" "package> 工具。" #. (itstool) path: sect3/para -#: book.translate.xml:44561 +#: book.translate.xml:44770 msgid "" "A forced upgrade of all installed packages will replace the packages with " "fresh versions from the repository even if the version number has not " @@ -66083,20 +66832,20 @@ msgstr "" "制升級可以執行以下指令來完成:" #. (itstool) path: sect3/screen -#: book.translate.xml:44568 +#: book.translate.xml:44777 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg-static upgrade -f</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:44570 +#: book.translate.xml:44779 msgid "" "A rebuild of all installed applications can be accomplished with this " "command:" msgstr "重新編譯所有已安裝的應用程式可以執行以下指令來完成:" #. (itstool) path: sect3/para -#: book.translate.xml:44575 +#: book.translate.xml:44784 msgid "" "This command will display the configuration screens for each application " "that has configurable options and wait for the user to interact with those " @@ -66108,7 +66857,7 @@ msgstr "" "option> 參數。" #. (itstool) path: sect3/para -#: book.translate.xml:44581 +#: book.translate.xml:44790 msgid "" "Once the software upgrades are complete, finish the upgrade process with a " "final call to <command>freebsd-update</command> in order to tie up all the " @@ -66118,7 +66867,7 @@ msgstr "" "動作:" #. (itstool) path: sect3/para -#: book.translate.xml:44588 +#: book.translate.xml:44797 msgid "" "If the <filename>GENERIC</filename> kernel was temporarily used, this is the " "time to build and install a new custom kernel using the instructions in " @@ -66128,19 +66877,19 @@ msgstr "" "\"kernelconfig\"/> 的說明編譯並安裝新的自訂核心。" #. (itstool) path: sect3/para -#: book.translate.xml:44592 +#: book.translate.xml:44801 msgid "" "Reboot the machine into the new FreeBSD version. The upgrade process is now " "complete." msgstr "重新開機使用新的 FreeBSD 版本後,升級程序便正式完成。" #. (itstool) path: sect2/title -#: book.translate.xml:44598 +#: book.translate.xml:44807 msgid "System State Comparison" msgstr "比對系統狀態" #. (itstool) path: sect2/para -#: book.translate.xml:44600 +#: book.translate.xml:44809 msgid "" "The state of the installed FreeBSD version against a known good copy can be " "tested using <command>freebsd-update IDS</command>. This command evaluates " @@ -66154,7 +66903,7 @@ msgstr "" "<acronym>IDS</acronym>)。" #. (itstool) path: warning/para -#: book.translate.xml:44608 +#: book.translate.xml:44817 msgid "" "This command is not a replacement for a real <acronym>IDS</acronym> such as " "<package>security/snort</package>. As <command>freebsd-update</command> " @@ -66176,19 +66925,19 @@ msgstr "" "<acronym>IDS</acronym> 功能,在 <xref linkend=\"security-ids\"/> 有詳細說明。" #. (itstool) path: sect2/para -#: book.translate.xml:44623 +#: book.translate.xml:44832 msgid "" "To begin the comparison, specify the output file to save the results to:" msgstr "要開始比對,需指定輸出的檔案來儲存結果:" #. (itstool) path: sect2/screen -#: book.translate.xml:44626 +#: book.translate.xml:44835 #, no-wrap msgid "<prompt>#</prompt> <userinput>freebsd-update IDS >> outfile.ids</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44628 +#: book.translate.xml:44837 msgid "" "The system will now be inspected and a lengthy listing of files, along with " "the <acronym>SHA256</acronym> hash values for both the known value in the " @@ -66199,7 +66948,7 @@ msgstr "" "版本的 <acronym>SHA256</acronym> 雜湊值會儲存到指定的輸出檔。" #. (itstool) path: sect2/para -#: book.translate.xml:44634 +#: book.translate.xml:44843 msgid "" "The entries in the listing are extremely long, but the output format may be " "easily parsed. For instance, to obtain a list of all files which differ from " @@ -66209,7 +66958,7 @@ msgstr "" "版本不同的檔案清單,可使用以下指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:44639 +#: book.translate.xml:44848 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cat outfile.ids | awk '{ print $1 }' | more</userinput>\n" @@ -66220,7 +66969,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44645 +#: book.translate.xml:44854 msgid "" "This sample output has been truncated as many more files exist. Some files " "have natural modifications. For example, <filename>/etc/passwd</filename> " @@ -66237,17 +66986,17 @@ msgstr "" "的 <literal>IDSIgnorePaths</literal> 選項。" #. (itstool) path: sect1/title -#: book.translate.xml:44657 +#: book.translate.xml:44866 msgid "Updating the Documentation Set" msgstr "更新文件集" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44661 +#: book.translate.xml:44870 msgid "<primary>Documentation</primary> <see>Updating and Upgrading</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44666 +#: book.translate.xml:44875 msgid "" "Documentation is an integral part of the FreeBSD operating system. While an " "up-to-date version of the FreeBSD documentation is always available on the " @@ -66261,7 +67010,7 @@ msgstr "" "<acronym>FAQ</acronym> 及文章的本地複本。" #. (itstool) path: sect1/para -#: book.translate.xml:44672 +#: book.translate.xml:44881 msgid "" "This section describes how to use either source or the FreeBSD Ports " "Collection to keep a local copy of the FreeBSD documentation up-to-date." @@ -66270,7 +67019,7 @@ msgstr "" "複本。" #. (itstool) path: sect1/para -#: book.translate.xml:44676 +#: book.translate.xml:44885 msgid "" "For information on editing and submitting corrections to the documentation, " "refer to the FreeBSD Documentation Project Primer for New Contributors " @@ -66282,12 +67031,12 @@ msgstr "" "freebsd.org/doc/zh_TW.UTF-8/books/fdp-primer/</link>)。" #. (itstool) path: sect2/title -#: book.translate.xml:44681 +#: book.translate.xml:44890 msgid "Updating Documentation from Source" msgstr "自原始碼更新說明文件" #. (itstool) path: sect2/para -#: book.translate.xml:44683 +#: book.translate.xml:44892 msgid "" "Rebuilding the FreeBSD documentation from source requires a collection of " "tools which are not part of the FreeBSD base system. The required tools, " @@ -66300,7 +67049,7 @@ msgstr "" "<package>textproc/docproj</package> 套件或 Port 安裝。" #. (itstool) path: sect2/para -#: book.translate.xml:44690 +#: book.translate.xml:44899 msgid "" "Once installed, use <application>svn</application> to fetch a clean copy of " "the documentation source:" @@ -66309,31 +67058,31 @@ msgstr "" "本:" #. (itstool) path: sect2/screen -#: book.translate.xml:44693 +#: book.translate.xml:44902 #, no-wrap msgid "<prompt>#</prompt> <userinput>svn checkout https://svn.FreeBSD.org/doc/head /usr/doc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44695 +#: book.translate.xml:44904 msgid "" "The initial download of the documentation sources may take a while. Let it " "run until it completes." msgstr "第一次下載文件原始碼需要一些時間,請耐心等候執行完畢。" #. (itstool) path: sect2/para -#: book.translate.xml:44698 +#: book.translate.xml:44907 msgid "Future updates of the documentation sources may be fetched by running:" msgstr "往後更新文件原始碼可執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:44701 +#: book.translate.xml:44910 #, no-wrap msgid "<prompt>#</prompt> <userinput>svn update /usr/doc</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44703 +#: book.translate.xml:44912 msgid "" "Once an up-to-date snapshot of the documentation sources has been fetched to " "<filename>/usr/doc</filename>, everything is ready for an update of the " @@ -66343,12 +67092,12 @@ msgstr "" "文件的準備動作。" #. (itstool) path: sect2/para -#: book.translate.xml:44707 +#: book.translate.xml:44916 msgid "A full update of all available languages may be performed by typing:" msgstr "完整更新所有可用的語言可以執行:" #. (itstool) path: sect2/screen -#: book.translate.xml:44710 +#: book.translate.xml:44919 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc</userinput>\n" @@ -66356,7 +67105,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44713 +#: book.translate.xml:44922 msgid "" "If an update of only a specific language is desired, <command>make</command> " "can be invoked in a language-specific subdirectory of <filename>/usr/doc</" @@ -66366,7 +67115,7 @@ msgstr "" "行 <command>make</command>:" #. (itstool) path: sect2/screen -#: book.translate.xml:44718 +#: book.translate.xml:44927 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc/en_US.ISO8859-1</userinput>\n" @@ -66374,7 +67123,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44721 +#: book.translate.xml:44930 msgid "" "An alternative way of updating the documentation is to run this command from " "<filename>/usr/doc</filename> or the desired language-specific subdirectory:" @@ -66383,20 +67132,20 @@ msgstr "" "行此指令:" #. (itstool) path: sect2/screen -#: book.translate.xml:44725 +#: book.translate.xml:44934 #, no-wrap msgid "<prompt>#</prompt> <userinput>make update</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44727 +#: book.translate.xml:44936 msgid "" "The output formats that will be installed may be specified by setting " "<varname>FORMATS</varname>:" msgstr "要指定安裝的輸出格式可使用 <varname>FORMATS</varname> 來設定:" #. (itstool) path: sect2/screen -#: book.translate.xml:44730 +#: book.translate.xml:44939 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/doc</userinput>\n" @@ -66404,7 +67153,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44733 +#: book.translate.xml:44942 msgid "" "Several options are available to ease the process of updating only parts of " "the documentation, or the build of specific translations. These options can " @@ -66416,17 +67165,17 @@ msgstr "" "給 <command>make</command>。" #. (itstool) path: sect2/para -#: book.translate.xml:44740 +#: book.translate.xml:44949 msgid "The options include:" msgstr "選項有:" #. (itstool) path: varlistentry/term -#: book.translate.xml:44744 +#: book.translate.xml:44953 msgid "<varname>DOC_LANG</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44747 +#: book.translate.xml:44956 msgid "" "The list of languages and encodings to build and install, such as " "<literal>en_US.ISO8859-1</literal> for English documentation." @@ -66435,12 +67184,12 @@ msgstr "" "語文件。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44754 +#: book.translate.xml:44963 msgid "<varname>FORMATS</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44757 +#: book.translate.xml:44966 msgid "" "A single format or a list of output formats to be built. Currently, " "<literal>html</literal>, <literal>html-split</literal>, <literal>txt</" @@ -66451,19 +67200,19 @@ msgstr "" "literal>。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44766 +#: book.translate.xml:44975 msgid "<varname>DOCDIR</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44769 +#: book.translate.xml:44978 msgid "" "Where to install the documentation. It defaults to <filename>/usr/share/doc</" "filename>." msgstr "要安裝文件的位置,預設為 <filename>/usr/share/doc</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:44775 +#: book.translate.xml:44984 msgid "" "For more <command>make</command> variables supported as system-wide options " "in FreeBSD, refer to <citerefentry><refentrytitle>make.conf</" @@ -66474,25 +67223,25 @@ msgstr "" "manvolnum></citerefentry>。" #. (itstool) path: info/title -#: book.translate.xml:44782 +#: book.translate.xml:44991 msgid "Updating Documentation from Ports" msgstr "自 Port 更新說明文件" #. (itstool) path: authorgroup/author -#: book.translate.xml:44785 +#: book.translate.xml:44994 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname> <contrib>Based on the work of </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44799 +#: book.translate.xml:45008 msgid "" "<primary>documentation package</primary> <see>Updating and Upgrading</see>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44804 +#: book.translate.xml:45013 msgid "" "The previous section presented a method for updating the FreeBSD " "documentation from sources. This section describes an alternative method " @@ -66502,21 +67251,21 @@ msgstr "" "方法,可由以下方式達成:" #. (itstool) path: listitem/para -#: book.translate.xml:44811 +#: book.translate.xml:45020 msgid "" "Install pre-built packages of the documentation, without having to locally " "build anything or install the documentation toolchain." msgstr "安裝事先編譯好的文件套件,無須在本地編譯任何東西或安裝文件工具集。" #. (itstool) path: listitem/para -#: book.translate.xml:44817 +#: book.translate.xml:45026 msgid "" "Build the documentation sources through the ports framework, making the " "checkout and build steps a bit easier." msgstr "使用 Port 框架來編譯文件原始碼,可讓取得與編譯文件的步驟更簡單。" #. (itstool) path: sect2/para -#: book.translate.xml:44823 +#: book.translate.xml:45032 msgid "" "This method of updating the FreeBSD documentation is supported by a set of " "documentation ports and packages which are updated by the Documentation " @@ -66531,12 +67280,12 @@ msgstr "" "org/docs/\">http://www.freshports.org/docs/</link>)。" #. (itstool) path: sect2/para -#: book.translate.xml:44829 +#: book.translate.xml:45038 msgid "Organization of the documentation ports is as follows:" msgstr "文件 Port 的組織方式如下:" #. (itstool) path: listitem/para -#: book.translate.xml:44834 +#: book.translate.xml:45043 msgid "" "The <package>misc/freebsd-doc-en</package> package or port installs all of " "the English documentation." @@ -66544,7 +67293,7 @@ msgstr "" "<package>misc/freebsd-doc-en</package> 套件或 Port 會安裝所有英語的文件。" #. (itstool) path: listitem/para -#: book.translate.xml:44839 +#: book.translate.xml:45048 msgid "" "The <package>misc/freebsd-doc-all</package> meta-package or port installs " "all documentation in all available languages." @@ -66553,7 +67302,7 @@ msgstr "" "件。" #. (itstool) path: listitem/para -#: book.translate.xml:44845 +#: book.translate.xml:45054 msgid "" "There is a package and port for each translation, such as <package>misc/" "freebsd-doc-hu</package> for the Hungarian documentation." @@ -66562,7 +67311,7 @@ msgstr "" "利語文件。" #. (itstool) path: sect2/para -#: book.translate.xml:44851 +#: book.translate.xml:45060 msgid "" "When binary packages are used, the FreeBSD documentation will be installed " "in all available formats for the given language. For example, the following " @@ -66572,13 +67321,13 @@ msgstr "" "會安裝最新的匈牙利語文件套件:" #. (itstool) path: sect2/screen -#: book.translate.xml:44856 +#: book.translate.xml:45065 #, no-wrap msgid "<prompt>#</prompt> <userinput>pkg install hu-freebsd-doc</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:44859 +#: book.translate.xml:45068 msgid "" "Packages use a format that differs from the corresponding port's name: " "<literal><replaceable>lang</replaceable>-freebsd-doc</literal>, where " @@ -66592,7 +67341,7 @@ msgstr "" "literal> 代表簡體中文。" #. (itstool) path: sect2/para -#: book.translate.xml:44868 +#: book.translate.xml:45077 msgid "" "To specify the format of the documentation, build the port instead of " "installing the package. For example, to build and install the English " @@ -66601,7 +67350,7 @@ msgstr "" "要指定文件的格式,需以編譯 Port 來代替安裝套件。例如要編譯並安裝英語文件:" #. (itstool) path: sect2/screen -#: book.translate.xml:44872 +#: book.translate.xml:45081 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/misc/freebsd-doc-en</userinput>\n" @@ -66609,7 +67358,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44875 +#: book.translate.xml:45084 msgid "" "The port provides a configuration menu where the format to build and install " "can be specified. By default, split <acronym>HTML</acronym>, similar to the " @@ -66621,7 +67370,7 @@ msgstr "" "FreeBSD.org</uri> 使用的格式) 以及 <acronym>PDF</acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:44880 +#: book.translate.xml:45089 msgid "" "Alternately, several <command>make</command> options can be specified when " "building a documentation port, including:" @@ -66629,12 +67378,12 @@ msgstr "" "此外,編譯文件 Port 時也可指定數個 <command>make</command> 選項,包括:" #. (itstool) path: varlistentry/term -#: book.translate.xml:44886 +#: book.translate.xml:45095 msgid "<varname>WITH_HTML</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44889 +#: book.translate.xml:45098 msgid "" "Builds the HTML format with a single HTML file per document. The formatted " "documentation is saved to a file called <filename>article.html</filename>, " @@ -66644,12 +67393,12 @@ msgstr "" "<filename>article.html</filename> 或 <filename>book.html</filename> 的檔案。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44897 +#: book.translate.xml:45106 msgid "<varname>WITH_PDF</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44900 +#: book.translate.xml:45109 msgid "" "The formatted documentation is saved to a file called <filename>article.pdf</" "filename> or <filename>book.pdf</filename>." @@ -66658,12 +67407,12 @@ msgstr "" "<filename>book.pdf</filename> 的檔案。" #. (itstool) path: varlistentry/term -#: book.translate.xml:44907 +#: book.translate.xml:45116 msgid "<varname>DOCBASE</varname>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:44910 +#: book.translate.xml:45119 msgid "" "Specifies where to install the documentation. It defaults to <filename>/usr/" "local/share/doc/freebsd</filename>." @@ -66672,7 +67421,7 @@ msgstr "" "filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:44917 +#: book.translate.xml:45126 msgid "" "This example uses variables to install the Hungarian documentation as a " "<acronym>PDF</acronym> in the specified directory:" @@ -66680,7 +67429,7 @@ msgstr "" "以下範例使用變數來安裝 <acronym>PDF</acronym> 的匈牙利語文件到特定目錄:" #. (itstool) path: sect2/screen -#: book.translate.xml:44921 +#: book.translate.xml:45130 #, no-wrap msgid "" "<prompt>#</prompt> cd /usr/ports/misc/freebsd-doc-hu\n" @@ -66688,7 +67437,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:44924 +#: book.translate.xml:45133 msgid "" "Documentation packages or ports can be updated using the instructions in " "<xref linkend=\"ports\"/>. For example, the following command updates the " @@ -66699,34 +67448,34 @@ msgstr "" "用 <package>ports-mgmt/portmaster</package> 更新已安裝的匈牙利語文件:" #. (itstool) path: sect2/screen -#: book.translate.xml:44930 +#: book.translate.xml:45139 #, no-wrap msgid "<prompt>#</prompt> <userinput>portmaster -PP hu-freebsd-doc</userinput>" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:44935 +#: book.translate.xml:45144 msgid "Tracking a Development Branch" msgstr "追蹤開發分支" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44937 +#: book.translate.xml:45146 msgid "<primary>-CURRENT</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:44938 +#: book.translate.xml:45147 msgid "<primary>-STABLE</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:44940 +#: book.translate.xml:45149 msgid "" "FreeBSD has two development branches: FreeBSD-CURRENT and FreeBSD-STABLE." msgstr "FreeBSD 有兩個開發分支:FreeBSD-CURRENT 及 FreeBSD-STABLE。" #. (itstool) path: sect1/para -#: book.translate.xml:44943 +#: book.translate.xml:45152 msgid "" "This section provides an explanation of each branch and its intended " "audience, as well as how to keep a system up-to-date with each respective " @@ -66735,12 +67484,12 @@ msgstr "" "本節將說明每個分支及其的特定使用者,也會說明如何在各別分支維持系統為最新版。" #. (itstool) path: sect2/title -#: book.translate.xml:44948 +#: book.translate.xml:45157 msgid "Using FreeBSD-CURRENT" msgstr "使用 FreeBSD-CURRENT" #. (itstool) path: sect2/para -#: book.translate.xml:44950 +#: book.translate.xml:45159 msgid "" "FreeBSD-CURRENT is the <quote>bleeding edge</quote> of FreeBSD development " "and FreeBSD-CURRENT users are expected to have a high degree of technical " @@ -66752,7 +67501,7 @@ msgstr "" "支。" #. (itstool) path: sect2/para -#: book.translate.xml:44956 +#: book.translate.xml:45165 msgid "" "FreeBSD-CURRENT is the very latest source code for FreeBSD and includes " "works in progress, experimental changes, and transitional mechanisms that " @@ -66770,19 +67519,19 @@ msgstr "" "量這個問題。" #. (itstool) path: sect2/para -#: book.translate.xml:44966 +#: book.translate.xml:45175 msgid "FreeBSD-CURRENT is made available for three primary interest groups:" msgstr "FreeBSD-CURRENT 主要給下以三種族群:" #. (itstool) path: listitem/para -#: book.translate.xml:44971 +#: book.translate.xml:45180 msgid "" "Members of the FreeBSD community who are actively working on some part of " "the source tree." msgstr "致力於開發某一部份原始碼樹的 FreeBSD 社群成員。" #. (itstool) path: listitem/para -#: book.translate.xml:44976 +#: book.translate.xml:45185 msgid "" "Members of the FreeBSD community who are active testers. They are willing to " "spend time solving problems, making topical suggestions on changes and the " @@ -66792,7 +67541,7 @@ msgstr "" "及大方向提出專業建議並送交修補。" #. (itstool) path: listitem/para -#: book.translate.xml:44983 +#: book.translate.xml:45192 msgid "" "Users who wish to keep an eye on things, use the current source for " "reference purposes, or make the occasional comment or code contribution." @@ -66800,7 +67549,7 @@ msgstr "" "隨時關注的使用者,使用目前原始碼做為參考用途,或是偶爾提供意見或貢獻原始碼。" #. (itstool) path: sect2/para -#: book.translate.xml:44989 +#: book.translate.xml:45198 msgid "" "FreeBSD-CURRENT should <emphasis>not</emphasis> be considered a fast-track " "to getting new features before the next release as pre-release features are " @@ -66815,17 +67564,17 @@ msgstr "" "CURRENT 不在 <quote>官方支援</quote> 的範圍內。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:44997 +#: book.translate.xml:45206 msgid "<primary>-CURRENT</primary> <secondary>using</secondary>" msgstr "<primary>-CURRENT</primary> <secondary>使用</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:45002 +#: book.translate.xml:45211 msgid "To track FreeBSD-CURRENT:" msgstr "若要追蹤 FreeBSD-CURRENT:" #. (itstool) path: listitem/para -#: book.translate.xml:45006 +#: book.translate.xml:45215 msgid "" "Join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" "freebsd-current\">freebsd-current</link> and the <link xlink:href=\"http://" @@ -66841,7 +67590,7 @@ msgstr "" "收有關 FreeBSD-CURRENT 目前狀態的重要公告。" #. (itstool) path: listitem/para -#: book.translate.xml:45013 +#: book.translate.xml:45222 msgid "" "The <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/svn-src-head" "\">svn-src-head</link> list records the commit log entry for each change as " @@ -66852,7 +67601,7 @@ msgstr "" "用的相關資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:45017 +#: book.translate.xml:45226 msgid "" "To join these lists, go to <link xlink:href=\"http://lists.FreeBSD.org/" "mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link>, click " @@ -66868,7 +67617,7 @@ msgstr "" "listinfo/svn-src-all\">svn-src-all</link> 郵遞論壇。" #. (itstool) path: listitem/para -#: book.translate.xml:45025 +#: book.translate.xml:45234 msgid "" "Synchronize with the FreeBSD-CURRENT sources. Typically, <link linkend=\"svn" "\">svn</link> is used to check out the -CURRENT code from the <literal>head</" @@ -66880,7 +67629,7 @@ msgstr "" "<literal>head</literal> 分支中取出 -CURRENT 的程式碼。" #. (itstool) path: listitem/para -#: book.translate.xml:45033 +#: book.translate.xml:45242 msgid "" "Due to the size of the repository, some users choose to only synchronize the " "sections of source that interest them or which they are contributing patches " @@ -66893,12 +67642,12 @@ msgstr "" "的 FreeBSD-CURRENT,不可只有選擇的部份。" #. (itstool) path: para/indexterm -#: book.translate.xml:45041 +#: book.translate.xml:45250 msgid "<primary>-CURRENT</primary> <secondary>compiling</secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:45040 +#: book.translate.xml:45249 msgid "" "Before compiling FreeBSD-CURRENT <_:indexterm-1/>, read <filename>/usr/src/" "Makefile</filename> very carefully and follow the instructions in <xref " @@ -66915,7 +67664,7 @@ msgstr "" "filename> 來了解升級的相關資訊,有時會含有升級下一個發行版的必要資訊。" #. (itstool) path: listitem/para -#: book.translate.xml:45055 +#: book.translate.xml:45264 msgid "" "Be active! FreeBSD-CURRENT users are encouraged to submit their suggestions " "for enhancements or bug fixes. Suggestions with accompanying code are always " @@ -66924,1485 +67673,796 @@ msgstr "" "積極!很鼓勵 FreeBSD-CURRENT 使用者發表他們對加強哪些功能或是修復哪些錯誤的建" "議。 如果您在建議時能附上相關程式碼的話, 那真是太棒了!" -#. (itstool) path: sect2/title -#: book.translate.xml:45064 -msgid "Using FreeBSD-STABLE" -msgstr "使用 FreeBSD-STABLE" - -#. (itstool) path: sect2/para -#: book.translate.xml:45066 -msgid "" -"FreeBSD-STABLE is the development branch from which major releases are made. " -"Changes go into this branch at a slower pace and with the general assumption " -"that they have first been tested in FreeBSD-CURRENT. This is " -"<emphasis>still</emphasis> a development branch and, at any given time, the " -"sources for FreeBSD-STABLE may or may not be suitable for general use. It is " -"simply another engineering development track, not a resource for end-users. " -"Users who do not have the resources to perform testing should instead run " -"the most recent release of FreeBSD." -msgstr "" -"主要發行版便是使用 FreeBSD-STABLE 這個開發分支所產生。變更進入這個分支的速度" -"比較慢,並假設這些變更已經先在 FreeBSD-CURRENT 測試過。但這 <emphasis>仍然</" -"emphasis> 是一個開發分支,而且 FreeBSD-STABLE 的原始碼在任何時候都有可能不適" -"合一般的使用。它只是另一個開發分支,並非專門提供給終端使用者使用。若沒有替代" -"資源可供測試的使用者應該改使用最新的 FreeBSD 發行版。" - -#. (itstool) path: sect2/para -#: book.translate.xml:45077 -msgid "" -"Those interested in tracking or contributing to the FreeBSD development " -"process, especially as it relates to the next release of FreeBSD, should " -"consider following FreeBSD-STABLE." -msgstr "" -"有興趣追蹤或對 FreeBSD 開發流程貢獻的人,尤其是對 FreeBSD 接下來的發行版相關" -"內容有興趣的人,應該考慮追蹤 FreeBSD-STABLE。" +#. (itstool) path: sect1/title +#: book.translate.xml:45274 +msgid "Updating FreeBSD from Source" +msgstr "從原始碼更新 FreeBSD" -#. (itstool) path: sect2/para -#: book.translate.xml:45081 +#. (itstool) path: sect1/para +#: book.translate.xml:45276 msgid "" -"While the FreeBSD-STABLE branch should compile and run at all times, this " -"cannot be guaranteed. Since more people run FreeBSD-STABLE than FreeBSD-" -"CURRENT, it is inevitable that bugs and corner cases will sometimes be found " -"in FreeBSD-STABLE that were not apparent in FreeBSD-CURRENT. For this " -"reason, one should not blindly track FreeBSD-STABLE. It is particularly " -"important <emphasis>not</emphasis> to update any production servers to " -"FreeBSD-STABLE without thoroughly testing the code in a development or " -"testing environment." +"Updating FreeBSD by compiling from source offers several advantages over " +"binary updates. Code can be built with options to take advantage of specific " +"hardware. Parts of the base system can be built with non-default settings, " +"or left out entirely where they are not needed or desired. The build process " +"takes longer to update a system than just installing binary updates, but " +"allows complete customization to produce a tailored version of FreeBSD." msgstr "" -"儘管 FreeBSD-STABLE 分支應該在任何時候均能正確編譯、執行,但是並不保証不會有" -"問題。因為使用 FreeBSD-STABLE 的人比 FreeBSD-CURRENT 多,有時無可避免地會在 " -"FreeBSD-STABLE 發現在 FreeBSD-CURRENT 並非顯而易見的錯誤和極端的狀況。也因" -"此,我們並不建議盲目追蹤 FreeBSD-STABLE。 特別重要的是 <emphasis>不要</" -"emphasis> 在尚未使用開發或測試環境對程式碼做完整的測試之前,升級任何上線的伺" -"服器為 FreeBSD-STABLE。" +"從編譯原始碼來更新 FreeBSD 比起用 Binary 更新有幾項優點,在編譯程式碼時可以自" +"訂選項來充分運用特定硬體,部份基礎系統可以使用非預設的設定值編譯,或是在不需" +"要或不想要的時候跳過編譯。使用編譯的程序來更新系統比起安裝 Binary 來更新會耗" +"時許多,但能夠完整自訂一個量身定做版本的 FreeBSD。" #. (itstool) path: sect2/para -#: book.translate.xml:45091 -msgid "To track FreeBSD-STABLE:" -msgstr "若要追蹤 FreeBSD-STABLE:" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45093 -msgid "<primary>-STABLE</primary> <secondary>using</secondary>" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45099 +#: book.translate.xml:45288 msgid "" -"Join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" -"freebsd-stable\">freebsd-stable</link> list in order to stay informed of " -"build dependencies that may appear in FreeBSD-STABLE or any other issues " -"requiring special attention. Developers will also make announcements in this " -"mailing list when they are contemplating some controversial fix or update, " -"giving the users a chance to respond if they have any issues to raise " -"concerning the proposed change." +"This is a quick reference for the typical steps used to update FreeBSD by " +"building from source. Later sections describe the process in more detail." msgstr "" -"加入 <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-" -"stable\">freebsd-stable</link> 郵遞論壇來隨時瞭解 FreeBSD-STABLE 編譯的相依關" -"係或是任何其他需特別注意的議題。開發者在評估一些有爭議的修正或更新時,也會先" -"在這裡發信公告,讓使用者有機會可以對提案的更改提出問題。" +"這是從原始碼編譯來更新 FreeBSD 的標準步驟快速的參考,稍後的章節會更詳細的說明" +"這個程序。" -#. (itstool) path: listitem/para -#: book.translate.xml:45108 -msgid "" -"Join the relevant <application>svn</application> list for the branch being " -"tracked. For example, users tracking the 9-STABLE branch should join the " -"<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/svn-src-" -"stable-9\">svn-src-stable-9</link> list. This list records the commit log " -"entry for each change as it is made, along with any pertinent information on " -"possible side effects." -msgstr "" -"加入 <application>svn</application> 相關郵遞論壇來追蹤該分支的修訂。 例如,要" -"追蹤 9-STABLE 分支的使用者應該加入 <link xlink:href=\"http://lists.FreeBSD." -"org/mailman/listinfo/svn-src-stable-9\">svn-src-stable-9</link> 郵遞論壇。這" -"個郵遞論壇會記錄每一次修改的提交項目,以及可能產生的副作用的相關資訊。" - -#. (itstool) path: listitem/para -#: book.translate.xml:45116 -msgid "" -"To join these lists, go to <link xlink:href=\"http://lists.FreeBSD.org/" -"mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link>, click " -"on the list to subscribe to, and follow the instructions. In order to track " -"changes for the whole source tree, subscribe to <link xlink:href=\"http://" -"lists.FreeBSD.org/mailman/listinfo/svn-src-all\">svn-src-all</link>." -msgstr "" -"要加入這兩個郵遞論壇,請前往 <link xlink:href=\"http://lists.FreeBSD.org/" -"mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link> 點選要訂" -"閱的郵遞論壇,並依照網頁指示的步驟操作。要追蹤整個原始碼樹,不單只有 FreeBSD-" -"CURRENT 的變更,可訂閱 <link xlink:href=\"http://lists.FreeBSD.org/mailman/" -"listinfo/svn-src-all\">svn-src-all</link> 郵遞論壇。" - -#. (itstool) path: listitem/para -#: book.translate.xml:45123 -msgid "" -"To install a new FreeBSD-STABLE system, install the most recent FreeBSD-" -"STABLE release from the <link linkend=\"mirrors\">FreeBSD mirror sites</" -"link> or use a monthly snapshot built from FreeBSD-STABLE. Refer to <link " -"xlink:href=\"@@URL_RELPREFIX@@/snapshots/\">www.freebsd.org/snapshots</link> " -"for more information about snapshots." -msgstr "" -"要安裝新的 FreeBSD-STABLE 系統, 可從 <link linkend=\"mirrors\">FreeBSD 鏡像" -"站</link> 或從 FreeBSD-STABLE 每個月的快照 (Snapshot) 來安裝最新的 FreeBSD-" -"STABLE 發行版。請參考 <link xlink:href=\"@@URL_RELPREFIX@@/snapshots/\">www." -"freebsd.org/snapshots</link> 來取得更多有關快照的資訊。" +#. (itstool) path: step/title +#: book.translate.xml:45294 +msgid "Update and Build" +msgstr "更新並編譯" -#. (itstool) path: listitem/para -#: book.translate.xml:45128 +#. (itstool) path: step/screen +#: book.translate.xml:45296 +#, no-wrap msgid "" -"To compile or upgrade to an existing FreeBSD system to FreeBSD-STABLE, use " -"<link linkend=\"svn\">svn</link> <_:indexterm-1/> to check out the source " -"for the desired branch. Branch names, such as <literal>stable/9</literal>, " -"are listed at <link xlink:href=\"@@URL_RELPREFIX@@/releng/\">www.freebsd.org/" -"releng</link>." +"<prompt>#</prompt> <userinput>svn update /usr/src</userinput> <co xml:id=\"updating-src-qs-svnup\"/>\n" +"<emphasis>check <filename>/usr/src/UPDATING</filename></emphasis> <co xml:id=\"updating-src-qs-review-updating\"/>\n" +"<prompt>#</prompt> <userinput>cd /usr/src</userinput> <co xml:id=\"updating-src-qs-cd\"/>\n" +"<prompt>#</prompt> <userinput>make -j<replaceable>4</replaceable> buildworld</userinput> <co xml:id=\"updating-src-qs-buildworld\"/>\n" +"<prompt>#</prompt> <userinput>make -j<replaceable>4</replaceable> kernel</userinput> <co xml:id=\"updating-src-qs-kernel\"/>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput> <co xml:id=\"updating-src-qs-reboot\"/>\n" +"<prompt>#</prompt> <userinput>cd /usr/src</userinput> <co xml:id=\"updating-src-qs-cd2\"/>\n" +"<prompt>#</prompt> <userinput>make installworld</userinput> <co xml:id=\"updating-src-qs-installworld\"/>\n" +"<prompt>#</prompt> <userinput>mergemaster -Ui</userinput> <co xml:id=\"updating-src-qs-mergemaster\"/>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput> <co xml:id=\"updating-src-qs-shutdown\"/>" msgstr "" -"要編譯或升級已經安裝的 FreeBSD 系統至 FreeBSD-STABLE,可使用 <link linkend=" -"\"svn\">svn</link> <_:indexterm-1/> 來取得欲安裝分支的原始碼。分支的名稱列在 " -"<link xlink:href=\"@@URL_RELPREFIX@@/releng/\">www.freebsd.org/releng</" -"link>,例如 <literal>stable/9</literal>。" -#. (itstool) path: para/indexterm -#: book.translate.xml:45139 -msgid "<primary>-STABLE</primary> <secondary>compiling</secondary>" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45138 +#. (itstool) path: callout/para +#: book.translate.xml:45309 msgid "" -"Before compiling or upgrading to FreeBSD-STABLE <_:indexterm-1/>, read " -"<filename>/usr/src/Makefile</filename> carefully and follow the instructions " -"in <xref linkend=\"makeworld\"/>. Read <link xlink:href=\"http://lists." -"FreeBSD.org/mailman/listinfo/freebsd-stable\">FreeBSD-STABLE mailing list</" -"link> and <filename>/usr/src/UPDATING</filename> to keep up-to-date on other " -"bootstrapping procedures that sometimes become necessary on the road to the " -"next release." +"Get the latest version of the source. See <xref linkend=\"updating-src-" +"obtaining-src\"/> for more information on obtaining and updating source." msgstr "" -"在編譯或升級到 FreeBSD-STABLE <_:indexterm-1/> 之前 , 請仔細閱讀 <filename>/" -"usr/src/Makefile</filename> 並依照 <xref linkend=\"makeworld\"/> 的指示操作。" -"閱讀 <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-" -"stable\">FreeBSD-STABLE 郵遞論壇</link> 以及 <filename>/usr/src/UPDATING</" -"filename> 來了解升級的相關資訊,有時會含有升級下一個發行版的必要資訊。" +"取得最新版本的原始碼,請參考 <xref linkend=\"updating-src-obtaining-src\"/> " +"來了解更多取得與更新原始碼的資訊。" -#. (itstool) path: sect1/title -#: book.translate.xml:45153 -msgid "Synchronizing Source" -msgstr "同步原始碼" - -#. (itstool) path: sect1/para -#: book.translate.xml:45155 +#. (itstool) path: callout/para +#: book.translate.xml:45316 msgid "" -"There are various methods for staying up-to-date with the FreeBSD sources. " -"This section describes the primary service, <application>Subversion</" -"application>." +"Any manual steps required before or after building from source are shown in " +"<filename>/usr/src/UPDATING</filename>." msgstr "" -"有多許方法可以更新 FreeBSD 的原始碼,本節將說明主要的方法 " -"<application>Subversion</application>。" +"從原始碼編譯之前與之後任何需要手動操作步驟會在 <filename>/usr/src/UPDATING</" +"filename> 中有說明。" -#. (itstool) path: warning/para -#: book.translate.xml:45160 -msgid "" -"While it is possible to update only parts of the source tree, the only " -"supported update procedure is to update the entire tree and recompile all " -"the programs that run in user space, such as those in <filename>/bin</" -"filename> and <filename>/sbin</filename>, and kernel sources. Updating only " -"part of the source tree, only the kernel, or only the userland programs will " -"often result in problems ranging from compile errors to kernel panics or " -"data corruption." -msgstr "" -"雖然有可能只更新部份原始碼樹,但是正式支援的更新步驟是更新整個樹並重新編譯所" -"有在使用者空間 (User space) 中的程式,例如在 <filename>/bin</filename> 和 " -"<filename>/sbin</filename> 中的程式及核心原始碼。只更新部份的原始碼樹,例如:" -"只更新核心或使用者空間的程式的做法經常會導致編譯錯誤、核心錯誤或資料損毀的問" -"題。" +#. (itstool) path: callout/para +#: book.translate.xml:45322 book.translate.xml:45342 +msgid "Go to the source directory." +msgstr "前往原始碼目錄。" -#. (itstool) path: sect1/para -#: book.translate.xml:45174 -msgid "" -"<application>Subversion</application> uses the <emphasis>pull</emphasis> " -"model of updating sources. The user, or a <command>cron</command> script, " -"invokes the <command>svn</command> program which updates the local version " -"of the source. <application>Subversion</application> is the preferred method " -"for updating local source trees as updates are up-to-the-minute and the user " -"controls when updates are downloaded. It is easy to restrict updates to " -"specific files or directories and the requested updates are generated on the " -"fly by the server. How to synchronize source using <application>Subversion</" -"application> is described in <xref linkend=\"svn\"/>." -msgstr "" +#. (itstool) path: callout/para +#: book.translate.xml:45326 +msgid "Compile the world, everything except the kernel." +msgstr "編譯世界 (World),即除了核心 (Kernel) 外的所有東西。" -#. (itstool) path: sect1/para -#: book.translate.xml:45186 -msgid "" -"If a user inadvertently wipes out portions of the local archive, " -"<application>Subversion</application> will detect and rebuild the damaged " -"portions during an update." +#. (itstool) path: para/buildtarget +#: book.translate.xml:45333 book.translate.xml:45549 book.translate.xml:45615 +msgid "buildkernel" msgstr "" -#. (itstool) path: sect1/title -#: book.translate.xml:45192 -msgid "Rebuilding World" -msgstr "重新編譯 World" - -#. (itstool) path: sect1/indexterm -#: book.translate.xml:45194 -msgid "<primary>Rebuilding <quote>world</quote></primary>" +#. (itstool) path: para/buildtarget +#: book.translate.xml:45334 +msgid "installkernel" msgstr "" -#. (itstool) path: sect1/para -#: book.translate.xml:45197 +#. (itstool) path: callout/para +#: book.translate.xml:45331 msgid "" -"Once the local source tree is synchronized against a particular version of " -"FreeBSD such as FreeBSD-STABLE or FreeBSD-CURRENT, the source tree can be " -"used to rebuild the system. This process is known as rebuilding world." +"Compile and install the kernel. This is equivalent to <_:buildtarget-1/> <_:" +"buildtarget-2/>." msgstr "" -"當本地的原始碼樹已與特定版本的 FreeBSD 如 FreeBSD-STABLE 或 FreeBSD-CURRENT " -"同步以後,便可使用原始碼樹來重新編譯系統。這個程序即為重新編譯 World。" +"編譯並安裝核心,此動作等同於同時做 <_:buildtarget-1/> <_:buildtarget-2/>。" -#. (itstool) path: sect1/para -#: book.translate.xml:45202 -msgid "" -"<emphasis>Before</emphasis> rebuilding world, be sure to perform the " -"following tasks:" -msgstr "在重新編譯 World <emphasis>之前</emphasis>,請確定已完成以下工作:" - -#. (itstool) path: procedure/title -#: book.translate.xml:45206 -msgid "Perform These Tasks <emphasis>Before</emphasis> Building World" -msgstr "編譯 World <emphasis>之前</emphasis> 要完成的工作" +#. (itstool) path: callout/para +#: book.translate.xml:45338 +#, fuzzy +msgid "Reboot the system to the new kernel." +msgstr "重新啟動系統以使用新編譯好的世界與核心。" -#. (itstool) path: step/para -#: book.translate.xml:45210 -msgid "" -"Backup all important data to another system or removable media, verify the " -"integrity of the backup, and have a bootable installation media at hand. It " -"cannot be stressed enough how important it is to make a backup of the system " -"<emphasis>before</emphasis> rebuilding the system. While rebuilding world is " -"an easy task, there will inevitably be times when mistakes in the source " -"tree render the system unbootable. You will probably never have to use the " -"backup, but it is better to be safe than sorry!" -msgstr "" -"備份所有重要的資料到另一個系統或可卸除的媒體,檢查備份的完整性並在手中保留一" -"份可開機的安裝媒體。如何強調都不足夠說明在重新編譯系統 <emphasis>之前</" -"emphasis> 備份系統的重要性。即便重新編譯 World 已變成簡單的一件事,也難免會有" -"原始碼樹失誤導致系統無法開機的時候。您可能永遠都用不上備份,但最好確保安全而" -"非後悔。" +#. (itstool) path: callout/para +#: book.translate.xml:45346 +msgid "Install the world." +msgstr "安裝世界。" -#. (itstool) path: step/indexterm -#: book.translate.xml:45222 -msgid "<primary>mailing list</primary>" -msgstr "" +#. (itstool) path: callout/para +#: book.translate.xml:45350 +msgid "Update and merge configuration files in <filename>/etc/</filename>." +msgstr "更新與合併在 <filename>/etc/</filename> 中的設定檔案。" -#. (itstool) path: step/para -#: book.translate.xml:45223 -msgid "" -"Review the recent <link xlink:href=\"http://lists.FreeBSD.org/mailman/" -"listinfo/freebsd-stable\">freebsd-stable</link> or <link xlink:href=\"http://" -"lists.FreeBSD.org/mailman/listinfo/freebsd-current\">freebsd-current</link> " -"entries, depending upon the branch being tracked. Be aware of any known " -"problems and which systems are affected. If a known issue affects the " -"version of synchronized code, wait for an <quote>all clear</quote> " -"announcement to be posted stating that the problem has been solved. " -"Resynchronize the sources to ensure that the local version of source has the " -"needed fix." -msgstr "" -"回顧最近 <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" -"freebsd-stable\">freebsd-stable</link> 或 <link xlink:href=\"http://lists." -"FreeBSD.org/mailman/listinfo/freebsd-current\">freebsd-current</link> 中的項" -"目,依您所追蹤的分支決定。注意任何已知的問題以及會被影響的系統。若已知的問題" -"影響您已同步的原始碼版本,請等候表明問題已被解決的 <quote>全部解決 (all " -"clear)</quote> 公告發佈,然後重新同步原始碼並確認本地的原始碼版本已含有所需的" -"修正。" +#. (itstool) path: callout/para +#: book.translate.xml:45355 +msgid "Restart the system to use the newly-built world and kernel." +msgstr "重新啟動系統以使用新編譯好的世界與核心。" -#. (itstool) path: step/para -#: book.translate.xml:45234 -msgid "" -"Read <filename>/usr/src/UPDATING</filename> for any extra steps necessary " -"for that version of the source. This file contains important information " -"about potential problems and may specify the order to run certain commands. " -"Many upgrades require specific additional steps such as renaming or deleting " -"specific files prior to installing the new world. These will be listed at " -"the end of this file where the currently recommended upgrade sequence is " -"explicitly spelled out. If <filename>UPDATING</filename> contradicts any " -"steps in this chapter, the instructions in <filename>UPDATING</filename> " -"take precedence and should be followed." -msgstr "" -"閱讀 <filename>/usr/src/UPDATING</filename> 了解該版本的原始碼是否有必要的額" -"外步驟要完成。 這個檔案中會包含有關潛藏問題的重要資訊,並且可能會要求執行某些" -"指令。大多升級需要完成指定的額外步驟,例如:在安裝新 World 前重新命名或刪除指" -"定檔案,這些步驟會列在檔案最後,明確說明目前建議的升級順序。若 " -"<filename>UPDATING</filename> 中有與本章相矛盾的步驟,請以 " -"<filename>UPDATING</filename> 為準並應遵循其內容。" - -#. (itstool) path: warning/title -#: book.translate.xml:45250 -msgid "Do Not Use <command>make world</command>" -msgstr "不要使用 <command>make world</command>" +#. (itstool) path: sect2/title +#: book.translate.xml:45364 +msgid "Preparing for a Source Update" +msgstr "準備原始碼更新" -#. (itstool) path: warning/para -#: book.translate.xml:45252 +#. (itstool) path: sect2/para +#: book.translate.xml:45366 msgid "" -"Some older documentation recommends using <command>make world</command>. " -"However, that command skips some important steps and should only be used by " -"experts. For almost all circumstances <command>make world</command> is the " -"wrong thing to do, and the procedure described here should be used instead." +"Read <filename>/usr/src/UPDATING</filename>. Any manual steps that must be " +"performed before or after an update are described in this file." msgstr "" -"部份舊版的文件建議使用 <command>make world</command>。然而該指令跳過了部份重" -"要的步驟,應僅供專家使用。大多數的情況使用 <command>make world</command> 都是" -"錯的,並應使用此處說明的程序。" +"閱讀 <filename>/usr/src/UPDATING</filename>,從原始碼編譯之前與之後任何需要手" +"動操作步驟會在此檔案中說明。" #. (itstool) path: sect2/title -#: book.translate.xml:45261 -msgid "Overview of Process" -msgstr "流程概述" +#: book.translate.xml:45372 +msgid "Updating the Source" +msgstr "更新原始碼" #. (itstool) path: sect2/para -#: book.translate.xml:45263 +#: book.translate.xml:45374 msgid "" -"The build world process assumes an upgrade from an older FreeBSD version " -"using the source of a newer version that was obtained using the instructions " -"in <xref linkend=\"synching\"/>." +"FreeBSD source code is located in <filename>/usr/src/</filename>. The " +"preferred method of updating this source is through the " +"<application>Subversion</application> version control system. Verify that " +"the source code is under version control:" msgstr "" -"編譯 World 流程會假設您是依照 <xref linkend=\"synching\"/> 指示取得最近版本的" -"原始碼來升級舊版的 FreeBSD。" +"FreeBSD 的原始碼位於 <filename>/usr/src/</filename>,較建議透過 " +"<application>Subversion</application> 版本控制系統來更新這份原始碼,要確認原" +"始碼已在版本控制系統的管控下可:" -#. (itstool) path: sect2/para -#: book.translate.xml:45267 +#. (itstool) path: sect2/screen +#: book.translate.xml:45380 +#, no-wrap msgid "" -"In FreeBSD, the term <quote>world</quote> includes the kernel, core system " -"binaries, libraries, programming files, and built-in compiler. The order in " -"which these components are built and installed is important." +"<prompt>#</prompt> <userinput>svn info /usr/src</userinput>\n" +"Path: /usr/src\n" +"Working Copy Root Path: /usr/src\n" +"..." msgstr "" -"在 FreeBSD,<quote>world</quote> 一詞包含了核心,核心系統 Binary,程式庫,原" -"始碼以及內建的編譯器。這些元件編譯與安裝的順序非常重要。" #. (itstool) path: sect2/para -#: book.translate.xml:45272 +#: book.translate.xml:45385 msgid "" -"For example, the old compiler might have a bug and not be able to compile " -"the new kernel. Since the new kernel should be built with the new compiler, " -"the new compiler must be built, but not necessarily installed, before the " -"new kernel is built." +"This indicates that <filename>/usr/src/</filename> is under version control " +"and can be updated with <citerefentry><refentrytitle>svn</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>:" msgstr "" -"舉例來說,舊的編譯器可能有問題而無法編譯新的核心。新的核心需使用新的編譯器來" -"編譯,因此新的編譯器必需先編譯,但在新核心編譯前並不一定要安裝。" +"此結果代表 <filename>/usr/src/</filename> 已在版本控制系統的管控下並且可以使" +"用 <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry> 來更新:" -#. (itstool) path: sect2/para -#: book.translate.xml:45278 -msgid "" -"The new world might rely on new kernel features, so the new kernel must be " -"installed before the new world is installed. The old world might not run " -"correctly on the new kernel, so the new world must be installed immediately " -"upon installing the new kernel." +#. (itstool) path: sect2/screen +#. (itstool) id: book.translate.xml#synching +#: book.translate.xml:45389 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>svn update /usr/src</userinput>" msgstr "" -"新的 World 可能需要使用新的核心功能,所以必須在新的 World 安裝之前先安裝新的" -"核心。舊的 World 也可能在新的核心上無法正常執行,所以必須在新的核心安裝完之" -"後\n" -"馬上安裝新的 World。" #. (itstool) path: sect2/para -#: book.translate.xml:45284 +#: book.translate.xml:45391 msgid "" -"Some configuration changes must be made before the new world is installed, " -"but others might break the old world. Hence, two different configuration " -"upgrade steps are used. For the most part, the update process only replaces " -"or adds files and existing old files are not deleted. Since this can cause " -"problems, <filename>/usr/src/UPDATING</filename> will indicate if any files " -"need to be manually deleted and at which step to do so." +"The update process can take some time if the directory has not been updated " +"recently. After it finishes, the source code is up to date and the build " +"process described in the next section can begin." msgstr "" -"有一部份設定必須在新的 World 安裝前變更,但其他的部份在之前變更則可能會破壞舊" -"的 World。因此會使用到兩種不同的設定升級步驟。大部份情況,更新程序只會取代或" -"新增檔案,不會刪除已存在的舊檔案。當這可能會造成問題時 <filename>/usr/src/" -"UPDATING</filename> 便會說明需要手動刪除的檔案以及操作的步驟。" +"若該目錄最近沒有更新過,可能會需要一些時間來完成更新動作。在更新完成之後,原" +"始碼便為最新版本,並可開始依下一章節的說明來編譯程序。" -#. (itstool) path: sect2/para -#: book.translate.xml:45293 -msgid "" -"These concerns have led to the recommended upgrade sequence described in the " -"following procedure." -msgstr "這些問題會影響接下來的建議升級順序。" +#. (itstool) path: note/title +#: book.translate.xml:45397 +msgid "Obtaining the Source" +msgstr "取得原始碼" #. (itstool) path: note/para -#: book.translate.xml:45297 +#: book.translate.xml:45399 msgid "" -"It is a good idea to save the output from running <command>make</command> to " -"a file. If something goes wrong, a copy of the error message can be posted " -"to one of the FreeBSD mailing lists." +"If the output says <literal>'/usr/src' is not a working copy</literal>, the " +"files there are missing or were installed with a different method. A new " +"checkout of the source is required." msgstr "" -"將執行 <command>make</command> 的輸出儲存到檔案是不錯的辦法,若發生錯誤時,便" -"可複製錯誤訊息張貼到 FreeBSD 郵遞論壇。" +"若輸出結果顯示 <literal>'/usr/src' is not a working copy</literal> 代表有缺少" +"檔案或原始碼是採用其他方式安裝,若是如此,便需重新取出 (checkout) 原始碼。" -#. (itstool) path: note/para -#: book.translate.xml:45302 -msgid "" -"The easiest way to do this is to use <command>script</command> with a " -"parameter that specifies the name of the file to save all output to. Do not " -"save the output to <filename>/tmp</filename> as this directory may be " -"cleared at next reboot. A better place to save the file is <filename>/var/" -"tmp</filename>. Run this command immediately before rebuilding the world, " -"and then type <userinput>exit</userinput> when the process has finished:" -msgstr "" -"最簡單的方式是使用 <command>script</command> 並透過參數指定要儲存所有輸出的檔" -"案名稱。請不要儲存輸出到 <filename>/tmp</filename>,因這個目錄可能在下次重新" -"開機後被清除。儲存檔案最好的地方是 <filename>/var/tmp</filename>。在重新編譯 " -"World 之前執行這個指令,並在流程完成後輸入 <userinput>exit</userinput>:" +#. (itstool) path: table/title +#: book.translate.xml:45405 +msgid "FreeBSD Versions and Repository Paths" +msgstr "FreeBSD 版本與檔案庫路徑" -#. (itstool) path: note/screen -#: book.translate.xml:45312 -#, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>script <replaceable>/var/tmp/mw.out</replaceable></userinput>\n" -"Script started, output file is /var/tmp/mw.out" -msgstr "" +#. (itstool) path: row/entry +#: book.translate.xml:45410 +msgid "<command>uname -r</command> Output" +msgstr "<command>uname -r</command> 的輸出結果" -#. (itstool) path: procedure/title -#: book.translate.xml:45317 -msgid "Overview of Build World Process" -msgstr "編譯 World 流程概述" +#. (itstool) path: row/entry +#: book.translate.xml:45411 +msgid "Repository Path" +msgstr "檔案庫路徑" -#. (itstool) path: procedure/para -#: book.translate.xml:45319 -msgid "" -"The commands used in the build world process should be run in the order " -"specified here. This section summarizes the function of each command." +#. (itstool) path: row/entry +#: book.translate.xml:45418 +msgid "<literal><replaceable>X.Y</replaceable>-RELEASE</literal>" msgstr "" -"編譯 World 流程中使用的指令應依此處指定的順序執行。本節將摘要各指令的功能。" -#. (itstool) path: step/para -#: book.translate.xml:45324 -msgid "" -"If the build world process has previously been run on this system, a copy of " -"the previous build may still exist in <filename>/usr/obj</filename>. To " -"speed up the new build world process, and possibly save some dependency " -"headaches, remove this directory if it already exists:" -msgstr "" -"若編譯 World 流程先前已在系統執行過,先前編譯的結果可能遺留在 <filename>/usr/" -"obj</filename>。要加速新的編譯 World 流程及節省處理相依問題的時間,若此目錄存" -"在,請移除此目錄:" +#. (itstool) path: row/entry +#: book.translate.xml:45419 +#, fuzzy +msgid "<literal>base/releng/</literal><replaceable>X.Y</replaceable>" +msgstr "<literal>ada</literal> 或 <literal>ad</literal>" -#. (itstool) path: step/screen -#: book.translate.xml:45331 -#, no-wrap +#. (itstool) path: row/entry +#: book.translate.xml:45420 msgid "" -"<prompt>#</prompt> <userinput>chflags -R noschg /usr/obj/*</userinput>\n" -"<prompt>#</prompt> <userinput>rm -rf /usr/obj</userinput>" -msgstr "" +"The Release version plus only critical security and bug fix patches. This " +"branch is recommended for most users." +msgstr "發佈版本加上關鍵的安全性與錯誤修正,較建議大多數使用者使用這個分支。" -#. (itstool) path: step/para -#: book.translate.xml:45336 -msgid "" -"Compile the new compiler and a few related tools, then use the new compiler " -"to compile the rest of the new world. The result is saved to <filename>/usr/" -"obj</filename>." +#. (itstool) path: row/entry +#: book.translate.xml:45426 +msgid "<literal><replaceable>X.Y</replaceable>-STABLE</literal>" msgstr "" -"編譯新的編譯器及一些相關工具,然後使用新的編譯器編譯新的 World。編譯的結果會" -"儲存到 <filename>/usr/obj</filename>。" -#. (itstool) path: step/screen -#: book.translate.xml:45340 -#, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make buildworld</userinput>" +#. (itstool) path: row/entry +#: book.translate.xml:45427 +msgid "<literal>base/stable/</literal><replaceable>X</replaceable>" msgstr "" -#. (itstool) path: step/para -#: book.translate.xml:45345 +#. (itstool) path: entry/para +#: book.translate.xml:45429 msgid "" -"Use the new compiler residing in <filename>/usr/obj</filename> to build the " -"new kernel, in order to protect against compiler-kernel mismatches. This is " -"necessary, as certain memory structures may have changed, and programs like " -"<command>ps</command> and <command>top</command> will fail to work if the " -"kernel and source code versions are not the same." +"The Release version plus all additional development on that branch. " +"<emphasis>STABLE</emphasis> refers to the Applications Binary Interface " +"(<acronym>ABI</acronym>) not changing, so software compiled for earlier " +"versions still runs. For example, software compiled to run on FreeBSD 10.1 " +"will still run on FreeBSD 10-STABLE compiled later." msgstr "" -"使用在 <filename>/usr/obj</filename> 中的新編譯器來編譯新的核心,來確保不會發" -"生編譯器與核心不相容的問題。因某些記憶體結構可能有修改,這個步驟是必要的,若" -"核心與原始碼的版本不同,<command>ps</command> 及 <command>top</command> 這類" -"的程式會無法運作。" +"發佈版本加上所有在該分支上其他開發中的程式,<emphasis>STABLE</emphasis> 代表" +"不會更改應用程式 Binary 介面 (Applications Binary Interface, <acronym>ABI</" +"acronym>),所以在先前版本所編譯的軟體仍可以正常運作,舉例來說,被編譯在 " +"FreeBSD 10.1 可執行的軟體在編譯完 FreeBSD 10-STABLE 之後仍可以執行。" -#. (itstool) path: step/screen -#: book.translate.xml:45353 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make buildkernel</userinput>" +#. (itstool) path: entry/para +#: book.translate.xml:45439 +msgid "" +"STABLE branches occasionally have bugs or incompatibilities which might " +"affect users, although these are typically fixed quickly." msgstr "" +"STABLE 分支偶爾也會有錯誤或無法相容的問題會影響使用者,雖然這些問題通常會很快" +"的被修正。" -#. (itstool) path: step/para -#: book.translate.xml:45357 -msgid "" -"Install the new kernel and kernel modules, making it possible to boot with " -"the newly updated kernel. If <varname>kern.securelevel</varname> has been " -"raised above <literal>1</literal> <emphasis>and</emphasis> <literal>noschg</" -"literal> or similar flags have been set on the kernel binary, drop the " -"system into single-user mode first. Otherwise, this command can be run from " -"multi-user mode without problems. See <citerefentry><refentrytitle>init</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> for details about " -"<varname>kern.securelevel</varname> and " -"<citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</" -"manvolnum></citerefentry> for details about the various file flags." +#. (itstool) path: row/entry +#: book.translate.xml:45446 +msgid "<literal><replaceable>X</replaceable>-CURRENT</literal>" msgstr "" -"安裝新的核心與新的核心模組,讓開機時可以使用新的核心。這個指令可在多使用者模" -"式執行,除非 <varname>kern.securelevel</varname> 設定在 <literal>1</literal> " -"以上 <emphasis>且</emphasis> 在核心 Binary 有設定 <literal>noschg</literal> " -"或類似的旗標 (Flag),請先讓系統進入單使用者模式。請參考 " -"<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></" -"citerefentry> 取得有關 <varname>kern.securelevel</varname> 的詳細資訊以及 " -"<citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</" -"manvolnum></citerefentry> 取得有關各種檔案旗標的詳細資訊。" -#. (itstool) path: step/screen -#: book.translate.xml:45369 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make installkernel</userinput>" +#. (itstool) path: row/entry +#: book.translate.xml:45447 +msgid "<literal>base/head/</literal>" msgstr "" -#. (itstool) path: step/para -#: book.translate.xml:45373 +#. (itstool) path: row/entry +#: book.translate.xml:45448 msgid "" -"Drop the system into single-user mode in order to minimize problems from " -"updating any binaries that are already running. It also minimizes any " -"problems from running the old world on a new kernel." -msgstr "" -"讓系統進入單使用者模組來減少升級任何已在執行中的 Binary 所產生的問題,同樣也" -"可減少在新核心上執行舊 World 的問題。" - -#. (itstool) path: step/screen -#: book.translate.xml:45378 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>shutdown now</userinput>" +"The latest unreleased development version of FreeBSD. The CURRENT branch can " +"have major bugs or incompatibilities and is recommended only for advanced " +"users." msgstr "" +"最新未發佈的 FreeBSD 開發版本,CURRENT 分支可能會有重大錯誤或不相容的問題,只" +"建議進階的使用者使用。" -#. (itstool) path: step/para -#: book.translate.xml:45380 +#. (itstool) path: note/para +#: book.translate.xml:45457 msgid "" -"Once in single-user mode, run these commands if the system is formatted with " -"UFS:" -msgstr "進入單使用者模式後,若系統磁碟格式為 UFS 請執行以下指令:" +"Determine which version of FreeBSD is being used with " +"<citerefentry><refentrytitle>uname</refentrytitle><manvolnum>1</manvolnum></" +"citerefentry>:" +msgstr "" +"查看 FreeBSD 目前使用的版本可使用 <citerefentry><refentrytitle>uname</" +"refentrytitle><manvolnum>1</manvolnum></citerefentry>:" -#. (itstool) path: step/screen -#: book.translate.xml:45383 +#. (itstool) path: note/screen +#: book.translate.xml:45460 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>mount -u /</userinput>\n" -"<prompt>#</prompt> <userinput>mount -a -t ufs</userinput>\n" -"<prompt>#</prompt> <userinput>swapon -a</userinput>" +"<prompt>#</prompt> <userinput>uname -r</userinput>\n" +"10.3-RELEASE" msgstr "" -#. (itstool) path: step/para -#: book.translate.xml:45387 +#. (itstool) path: note/para +#: book.translate.xml:45463 +#, fuzzy msgid "" -"If the system is instead formatted with ZFS, run these two commands. This " -"example assumes a zpool name of <literal>zroot</literal>:" +"Based on <xref linkend=\"updating-src-obtaining-src-repopath\"/>, the source " +"used to update <literal>10.3-RELEASE</literal> has a repository path of " +"<literal>base/releng/10.3</literal>. That path is used when checking out the " +"source:" msgstr "" -"若系統磁碟格式為 ZFS,則需執行以下兩個指令。此範例假設 zpool 名稱為 " -"<literal>zroot</literal>:" +"根據 <xref linkend=\"updating-src-obtaining-src-repopath\"/>,要更新 " +"<literal>10.3-RELEASE</literal> 需使用的原始碼檔案庫路徑為 <literal>base/" +"releng/10</literal>,在取出 (checkout) 原始碼時便要使用這個路徑:" -#. (itstool) path: step/screen -#: book.translate.xml:45391 +#. (itstool) path: note/screen +#: book.translate.xml:45469 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>zfs set readonly=off zroot</userinput>\n" -"<prompt>#</prompt> <userinput>zfs mount -a</userinput>" +"<prompt>#</prompt> <userinput>mv /usr/src /usr/src.bak</userinput> <co xml:id=\"updating-src-obtaining-src-mv\"/>\n" +"<prompt>#</prompt> <userinput>svn checkout https://svn.freebsd.org/base/<replaceable>releng/10.3</replaceable> /usr/src</userinput> <co xml:id=\"updating-src-obtaining-src-checkout-cmd\"/>" msgstr "" -#. (itstool) path: step/para -#: book.translate.xml:45396 +#. (itstool) path: callout/para +#: book.translate.xml:45474 msgid "" -"Optional: If a keyboard mapping other than the default US English is " -"desired, it can be changed with <citerefentry><refentrytitle>kbdmap</" -"refentrytitle><manvolnum>1</manvolnum></citerefentry>:" -msgstr "" -"選用:若想要使用 US 英文以外的鍵盤對應表,可以使用 " -"<citerefentry><refentrytitle>kbdmap</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> 來變更:" - -#. (itstool) path: step/screen -#: book.translate.xml:45400 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>kbdmap</userinput>" +"Move the old directory out of the way. If there are no local modifications " +"in this directory, it can be deleted." msgstr "" +"將舊的目錄移到其他地方,若沒有在這個目錄做過任何本地修改,可直接刪除這個目" +"錄。" -#. (itstool) path: step/para -#: book.translate.xml:45404 +#. (itstool) path: callout/para +#: book.translate.xml:45480 msgid "" -"Then, for either file system, if the <acronym>CMOS</acronym> clock is set to " -"local time (this is true if the output of <citerefentry><refentrytitle>date</" -"refentrytitle><manvolnum>1</manvolnum></citerefentry> does not show the " -"correct time and zone), run:" -msgstr "" -"接著,不論那一種檔案系統,若 <acronym>CMOS</acronym> 時鐘設定為本地時間 (若 " -"<citerefentry><refentrytitle>date</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> 顯示不正確的時間與時區),請執行:" - -#. (itstool) path: step/screen -#: book.translate.xml:45409 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>adjkerntz -i</userinput>" -msgstr "" - -#. (itstool) path: step/para -#: book.translate.xml:45413 -msgid "" -"Remaking the world will not update certain directories, such as <filename>/" -"etc</filename>, <filename>/var</filename> and <filename>/usr</filename>, " -"with new or changed configuration files. The next step is to perform some " -"initial configuration file updates to <filename>/etc</filename> in " -"preparation for the new world. The following command compares only those " -"files that are essential for the success of <_:buildtarget-1/>. For " -"instance, this step may add new groups, system accounts, or startup scripts " -"which have been added to FreeBSD since the last update. This is necessary so " -"that the <_:buildtarget-2/> step will be able to use any new system " -"accounts, groups, and scripts. Refer to <xref linkend=\"mergemaster\"/> for " -"more detailed instructions about this command:" -msgstr "" -"重新編譯 World 不會直接更新某些目錄中的設定檔,如 <filename>/etc</filename>, " -"<filename>/var</filename> 以及 <filename>/usr</filename>。接下來的步驟是更新" -"一部份的設定檔到 <filename>/etc</filename> 來準備安裝新的 World。以下指令只會" -"比對影響 <_:buildtarget-1/> 是否成功執行的必要檔案。例如,這個步驟會可能會加" -"入新版 FreeBSD 的新群組、系統帳號或啟動 Script。為了讓 <_:buildtarget-2/> 步" -"驟可以使用任何新的系統帳號、群組與 Script,這是個必要的步驟。請參考 <xref " -"linkend=\"mergemaster\"/> 來取得更多有關此指令的詳細操作說明:" - -#. (itstool) path: step/screen -#: book.translate.xml:45430 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>mergemaster -p</userinput>" +"The path from <xref linkend=\"updating-src-obtaining-src-repopath\"/> is " +"added to the repository <acronym>URL</acronym>. The third parameter is the " +"destination directory for the source code on the local system." msgstr "" +"將從 <xref linkend=\"updating-src-obtaining-src-repopath\"/> 查到的路徑加到檔" +"案庫 <acronym>URL</acronym> 之後。第三個參數用來存放本地系統原始碼的目標目" +"錄。" -#. (itstool) path: step/para -#: book.translate.xml:45434 -msgid "" -"Install the new world and system binaries from <filename>/usr/obj</filename>." -msgstr "從 <filename>/usr/obj</filename> 安裝新 World 與系統 Binary。" +#. (itstool) path: sect2/title +#: book.translate.xml:45491 +msgid "Building from Source" +msgstr "從原始碼編譯" -#. (itstool) path: step/screen -#: book.translate.xml:45437 -#, no-wrap +#. (itstool) path: sect2/para +#. (itstool) id: book.translate.xml#makeworld +#: book.translate.xml:45493 msgid "" -"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make installworld</userinput>" -msgstr "" - -#. (itstool) path: step/para -#: book.translate.xml:45442 -msgid "Update any remaining configuration files." -msgstr "更新任何剩下的設定檔。" - -#. (itstool) path: step/screen -#: book.translate.xml:45444 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>mergemaster -iF</userinput>" +"The <emphasis>world</emphasis>, or all of the operating system except the " +"kernel, is compiled. This is done first to provide up-to-date tools to build " +"the kernel. Then the kernel itself is built:" msgstr "" +"編譯世界 (<emphasis>world</emphasis>) 即編譯整個作業系統除了核心 (Kernel),要" +"先做這個動作以便提供最新的工具來編譯核心,接著便可編譯核心:" -#. (itstool) path: step/para -#: book.translate.xml:45448 -msgid "" -"Delete any obsolete files. This is important as they may cause problems if " -"left on the disk." -msgstr "刪除任何過時的檔案。這很重要,因為若檔案遺留在磁碟上可能會造成問題。" - -#. (itstool) path: step/screen #. (itstool) path: sect2/screen -#: book.translate.xml:45451 book.translate.xml:45838 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make delete-old</userinput>" -msgstr "" - -#. (itstool) path: step/para -#: book.translate.xml:45455 -msgid "" -"A full reboot is now needed to load the new kernel and new world with the " -"new configuration files." -msgstr "現在需要完整重新啟動來載入新的核心、新的 World 與新的設定檔。" - #. (itstool) path: step/screen -#: book.translate.xml:45458 +#: book.translate.xml:45498 book.translate.xml:65320 #, no-wrap -msgid "<prompt>#</prompt> <userinput>reboot</userinput>" -msgstr "" - -#. (itstool) path: step/para -#: book.translate.xml:45462 msgid "" -"Make sure that all installed ports have first been rebuilt before old " -"libraries are removed using the instructions in <xref linkend=\"ports-" -"upgrading\"/>. When finished, remove any obsolete libraries to avoid " -"conflicts with newer ones. For a more detailed description of this step, " -"refer to <xref linkend=\"make-delete-old\"/>." +"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>make buildworld</userinput>\n" +"<prompt>#</prompt> <userinput>make buildkernel</userinput>" msgstr "" -"確認所有已安裝的 Port 在舊的程式庫移除前已依照 <xref linkend=\"ports-" -"upgrading\"/> 的說明重新編譯。當重新編譯完成後,移除過時的程式庫來避免與新的" -"程式庫發生衝突。有關此步驟更詳細的說明請參考 <xref linkend=\"make-delete-old" -"\"/>。" -#. (itstool) path: step/screen -#. (itstool) path: sect2/screen -#: book.translate.xml:45469 book.translate.xml:45887 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make delete-old-libs</userinput>" -msgstr "" +#. (itstool) path: sect2/para +#: book.translate.xml:45502 +msgid "The compiled code is written to <filename>/usr/obj</filename>." +msgstr "編譯完的程式會寫入至 <filename>/usr/obj</filename>。" #. (itstool) path: sect2/para -#: book.translate.xml:45475 +#: book.translate.xml:45505 msgid "" -"If the system can have a window of down-time, consider compiling the system " -"in single-user mode instead of compiling the system in multi-user mode, and " -"then dropping into single-user mode for the installation. Reinstalling the " -"system touches a lot of important system files, all the standard system " -"binaries, libraries, and include files. Changing these on a running system, " -"particularly one with active users, is asking for trouble." -msgstr "" -"若系統允許停機一小段時間,請考慮以單使用者模式編譯系統來替代在多使用者模組編" -"譯系統,然後進入單使用者模式來完成安裝。重新安裝系統會觸及到很多重要的系統檔" -"案,所有的標準系統 Binary、程式庫以及引用檔。在執行中的系統更換這些檔案,特別" -"是有使用者在使用時,是自找麻煩。" +"These are the basic steps. Additional options to control the build are " +"described below." +msgstr "以上這些均為基本的步驟,用來控制編譯的其他選項在以下章節會說明。" -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45488 -msgid "<primary><filename>make.conf</filename></primary>" -msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:45509 +msgid "Performing a Clean Build" +msgstr "執行清除編譯" -#. (itstool) path: sect2/para -#: book.translate.xml:45492 -msgid "This build world process uses several configuration files." +#. (itstool) path: para/buildtarget +#: book.translate.xml:45516 +msgid "cleanworld" msgstr "" -#. (itstool) path: sect2/para -#: book.translate.xml:45495 +#. (itstool) path: sect3/para +#: book.translate.xml:45511 msgid "" -"The <filename>Makefile</filename> located in <filename>/usr/src</filename> " -"describes how the programs that comprise FreeBSD should be built and the " -"order in which they should be built." +"Some versions of the FreeBSD build system leave previously-compiled code in " +"the temporary object directory, <filename>/usr/obj</filename>. This can " +"speed up later builds by avoiding recompiling code that has not changed. To " +"force a clean rebuild of everything, use <_:buildtarget-1/> before starting " +"a build:" msgstr "" +"部份 FreeBSD 編譯系統版本會保留先前編譯的程式於暫存的物件目錄 <filename>/usr/" +"obj</filename>,避免重新編譯那些尚未更動過的程式碼可加速後續的編譯動作,若要" +"強制重新編譯所有東西可在開始編譯前使用 <_:buildtarget-1/>:" -#. (itstool) path: sect2/para -#: book.translate.xml:45500 -msgid "" -"The options available to <command>make</command> are described in " -"<citerefentry><refentrytitle>make.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> and some common examples are included in " -"<filename>/usr/share/examples/etc/make.conf</filename>. Any options which " -"are added to <filename>/etc/make.conf</filename> will control the how " -"<command>make</command> runs and builds programs. These options take effect " -"every time <command>make</command> is used, including compiling applications " -"from the Ports Collection, compiling custom C programs, or building the " -"FreeBSD operating system. Changes to some settings can have far-reaching and " -"potentially surprising effects. Read the comments in both locations and keep " -"in mind that the defaults have been chosen for a combination of performance " -"and safety." +#. (itstool) path: sect3/screen +#: book.translate.xml:45519 +#, no-wrap +msgid "<prompt>#</prompt> <userinput>make cleanworld</userinput>" msgstr "" -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45515 -msgid "<primary><filename>src.conf</filename></primary>" -msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:45523 +msgid "Setting the Number of Jobs" +msgstr "設定工作數量" -#. (itstool) path: sect2/para -#: book.translate.xml:45519 +#. (itstool) path: sect3/para +#: book.translate.xml:45525 msgid "" -"How the operating system is built from source code is controlled by " -"<filename>/etc/src.conf</filename>. Unlike <filename>/etc/make.conf</" -"filename>, the contents of <filename>/etc/src.conf</filename> only take " -"effect when the FreeBSD operating system itself is being built. Descriptions " -"of the many options available for this file are shown in " -"<citerefentry><refentrytitle>src.conf</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry>. Be cautious about disabling seemingly unneeded " -"kernel modules and build options. Sometimes there are unexpected or subtle " -"interactions." +"Increasing the number of build jobs on multi-core processors can improve " +"build speed. Determine the number of cores with <command>sysctl hw.ncpu</" +"command>. Processors vary, as do the build systems used with different " +"versions of FreeBSD, so testing is the only sure method to tell how a " +"different number of jobs affects the build speed. For a starting point, " +"consider values between half and double the number of cores. The number of " +"jobs is specified with <option>-j</option>." msgstr "" +"在多核處理器上增加編譯工作的數量可增加編譯速度,可使用 <command>sysctl hw." +"ncpu</command> 來查看有多少核心,不同處理器使用不同版本的 FreeBSD 編譯系統," +"所以唯一能了解不同工作數量對編譯速度影響的方式便是測試。在一開始可考慮選擇一" +"個介於 1/2 到 2 倍核心數之間的數值,工作的數量可使用 <option>-j</option> 來指" +"定。" -#. (itstool) path: sect2/title -#: book.translate.xml:45531 -msgid "Variables and Targets" -msgstr "變數與目標" +#. (itstool) path: example/title +#: book.translate.xml:45536 +msgid "Increasing the Number of Build Jobs" +msgstr "增加編譯工作數" -#. (itstool) path: sect2/para -#: book.translate.xml:45533 -msgid "The general format for using <command>make</command> is as follows:" -msgstr "" +#. (itstool) path: example/para +#: book.translate.xml:45538 +msgid "Building the world and kernel with four jobs:" +msgstr "使用四個工作來編譯世界與核心:" -#. (itstool) path: sect2/screen -#: book.translate.xml:45536 +#. (itstool) path: example/screen +#: book.translate.xml:45540 #, no-wrap -msgid "<prompt>#</prompt> <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput>" +msgid "<prompt>#</prompt> <userinput>make -j4 buildworld buildkernel</userinput>" msgstr "" -#. (itstool) path: sect2/para -#: book.translate.xml:45538 -msgid "" -"In this example, <option>-<replaceable>x</replaceable></option> is an option " -"passed to <command>make</command>. Refer to " -"<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> for examples of the available options." -msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:45545 +msgid "Building Only the Kernel" +msgstr "只編譯核心" -#. (itstool) path: sect2/para -#: book.translate.xml:45543 +#. (itstool) path: sect3/para +#: book.translate.xml:45547 msgid "" -"To pass a variable, specify the variable name with <option>-" -"D<replaceable>VARIABLE</replaceable></option>. The behavior of the " -"<filename>Makefile</filename> is controlled by variables. These can either " -"be set in <filename>/etc/make.conf</filename> or they can be specified when " -"using <command>make</command>. For example, this variable specifies that " -"profiled libraries should not be built:" +"A <_:buildtarget-1/> must be completed if the source code has changed. After " +"that, a <_:buildtarget-2/> to build a kernel can be run at any time. To " +"build just the kernel:" msgstr "" +"若原始碼有更動,便須執行 <_:buildtarget-1/>,完成之後,便可隨時執行 <_:" +"buildtarget-2/> 來編譯核心,若要只編譯核心可:" -#. (itstool) path: sect2/screen +#. (itstool) path: sect3/screen #: book.translate.xml:45552 #, no-wrap -msgid "<prompt>#</prompt> <userinput>make -DNO_PROFILE <replaceable>target</replaceable></userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45554 msgid "" -"It corresponds with this setting in <filename>/etc/make.conf</filename>:" +"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>make buildkernel</userinput>" msgstr "" -#. (itstool) path: sect2/programlisting +#. (itstool) path: sect3/title #: book.translate.xml:45557 -#, no-wrap -msgid "NO_PROFILE= true # Avoid compiling profiled libraries" -msgstr "" +msgid "Building a Custom Kernel" +msgstr "編譯自訂核心" -#. (itstool) path: sect2/para +#. (itstool) path: sect3/para #: book.translate.xml:45559 msgid "" -"The <replaceable>target</replaceable> tells <command>make</command> what to " -"do and the <filename>Makefile</filename> defines the available targets. Some " -"targets are used by the build process to break out the steps necessary to " -"rebuild the system into a number of sub-steps." +"The standard FreeBSD kernel is based on a <emphasis>kernel config file</" +"emphasis> called <filename>GENERIC</filename>. The <filename>GENERIC</" +"filename> kernel includes the most commonly-needed device drivers and " +"options. Sometimes it is useful or necessary to build a custom kernel, " +"adding or removing device drivers or options to fit a specific need." msgstr "" +"標準的 FreeBSD 核心是以一個名為 <filename>GENERIC</filename> 的<emphasis>核心" +"設定檔 (Kernel config file)</emphasis>為基礎,<filename>GENERIC</filename> 核" +"心中內含了所有最常用的裝置驅動程式與選項,有時這個檔案對編譯自訂核心也非常有" +"用,可根據其來加入或移除裝置驅動程式或選項來滿足特定需求。" -#. (itstool) path: sect2/para -#: book.translate.xml:45566 +#. (itstool) path: sect3/para +#: book.translate.xml:45568 msgid "" -"Having separate options is useful for two reasons. First, it allows for a " -"build that does not affect any components of a running system. Because of " -"this, <_:buildtarget-1/> can be safely run on a machine running in multi-" -"user mode. It is still recommended that <_:buildtarget-2/> be run in part in " -"single-user mode, though." +"For example, someone developing a small embedded computer with severely " +"limited <acronym>RAM</acronym> could remove unneeded device drivers or " +"options to make the kernel slightly smaller." msgstr "" +"例如,要開發一個 <acronym>RAM</acronym> 受到嚴重限制的小型嵌入式電腦,便可移" +"除不需要的裝置驅動程式或選項來縮小核心。" -#. (itstool) path: sect2/para -#: book.translate.xml:45574 +#. (itstool) path: sect3/para +#: book.translate.xml:45573 msgid "" -"Secondly, it allows <acronym>NFS</acronym> mounts to be used to upgrade " -"multiple machines on a network, as described in <xref linkend=\"small-lan\"/" -">." +"Kernel config files are located in <filename>/usr/src/sys/<replaceable>arch</" +"replaceable>/conf/</filename>, where <replaceable>arch</replaceable> is the " +"output from <command>uname -m</command>. On most computers, that is " +"<literal>amd64</literal>, giving a config file directory of <filename>/usr/" +"src/sys/<replaceable>amd64</replaceable>/conf/</filename>." msgstr "" +"核心設定檔位於 <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf/</" +"filename>,其中使用的 <replaceable>arch</replaceable> 即為 <command>uname -" +"m</command> 輸出的結果,大部份的電腦為 <literal>amd64</literal>,那其設定檔目" +"錄則為 <filename>/usr/src/sys/<replaceable>amd64</replaceable>/conf/</" +"filename>。" -#. (itstool) path: sect2/para -#: book.translate.xml:45578 +#. (itstool) path: tip/para +#: book.translate.xml:45581 msgid "" -"It is possible to specify <option>-j</option> which will cause " -"<command>make</command> to spawn several simultaneous processes. Since much " -"of the compiling process is <acronym>I/O</acronym>-bound rather than " -"<acronym>CPU</acronym>-bound, this is useful on both single <acronym>CPU</" -"acronym> and multi-<acronym>CPU</acronym> machines." +"<filename>/usr/src</filename> can be deleted or recreated, so it is " +"preferable to keep custom kernel config files in a separate directory, like " +"<filename>/root</filename>. Link the kernel config file into the " +"<filename>conf</filename> directory. If that directory is deleted or " +"overwritten, the kernel config can be re-linked into the new one." msgstr "" +"<filename>/usr/src</filename> 可以被刪除或重建,所以較建議將自訂核心設定檔放" +"在另一個目錄,如 <filename>/root</filename>,並將核心設定檔以連結放至 " +"<filename>conf</filename> 目錄,若該目錄被刪除或覆寫,便可重新建立一個新的核" +"心設定的連結。" -#. (itstool) path: sect2/para -#: book.translate.xml:45586 +#. (itstool) path: sect3/para +#: book.translate.xml:45590 msgid "" -"On a single-<acronym>CPU</acronym> machine, run the following command to " -"have up to 4 processes running at any one time. Empirical evidence posted to " -"the mailing lists shows this generally gives the best performance benefit." +"A custom config file can be created by copying the <filename>GENERIC</" +"filename> config file. In this example, the new custom kernel is for a " +"storage server, so is named <filename>STORAGESERVER</filename>:" msgstr "" +"自訂設定檔可由複製 <filename>GENERIC</filename> 設定檔來建立,在此範例,新的" +"自訂核心要用在儲存伺服器,所以將其命名為 <filename>STORAGESERVER</filename>:" -#. (itstool) path: sect2/screen -#: book.translate.xml:45591 +#. (itstool) path: sect3/screen +#: book.translate.xml:45595 #, no-wrap -msgid "<prompt>#</prompt> <userinput>make -j4 buildworld</userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45593 msgid "" -"On a multi-<acronym>CPU</acronym> machine, try values between <literal>6</" -"literal> and <literal>10</literal> to see how they speed things up." +"<prompt>#</prompt> <userinput>cp /usr/src/sys/amd64/conf/GENERIC /root/STORAGESERVER</userinput>\n" +"<prompt>#</prompt> <userinput>cd /usr/src/sys/amd64/conf</userinput>\n" +"<prompt>#</prompt> <userinput>ln -s /root/STORAGESERVER .</userinput>" msgstr "" -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45597 +#. (itstool) path: sect3/para +#: book.translate.xml:45599 msgid "" -"<primary>rebuilding <quote>world</quote></primary> <secondary>timings</" -"secondary>" +"<filename>/root/STORAGESERVER</filename> is then edited, adding or removing " +"devices or options as shown in <citerefentry><refentrytitle>config</" +"refentrytitle><manvolnum>5</manvolnum></citerefentry>." msgstr "" +"接著編譯 <filename>/root/STORAGESERVER</filename>,要加入或移除裝置或選項可" +"見 <citerefentry><refentrytitle>config</refentrytitle><manvolnum>5</" +"manvolnum></citerefentry>。" -#. (itstool) path: note/para +#. (itstool) path: sect3/para #: book.translate.xml:45603 msgid "" -"If any variables were specified to <command>make buildworld</command>, " -"specify the same variables to <command>make installworld</command>. However, " -"<option>-j</option> must <emphasis>never</emphasis> be used with <_:" -"buildtarget-1/>." -msgstr "" - -#. (itstool) path: note/para -#: book.translate.xml:45609 -msgid "For example, if this command was used:" +"The custom kernel is built by setting <varname>KERNCONF</varname> to the " +"kernel config file on the command line:" msgstr "" +"自訂核心要在指令列設定 <varname>KERNCONF</varname> 為核心設定檔來編譯:" -#. (itstool) path: note/screen -#: book.translate.xml:45611 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make -DNO_PROFILE buildworld</userinput>" -msgstr "" - -#. (itstool) path: note/para -#: book.translate.xml:45613 -msgid "Install the results with:" -msgstr "" - -#. (itstool) path: note/screen -#: book.translate.xml:45615 +#. (itstool) path: sect3/screen +#: book.translate.xml:45607 #, no-wrap -msgid "<prompt>#</prompt> <userinput>make -DNO_PROFILE installworld</userinput>" +msgid "<prompt>#</prompt> <userinput>make buildkernel KERNCONF=STORAGESERVER</userinput>" msgstr "" -#. (itstool) path: note/para -#: book.translate.xml:45617 -msgid "" -"Otherwise, the second command will try to install profiled libraries that " -"were not built during the <command>make buildworld</command> phase." -msgstr "" - -#. (itstool) path: info/title -#: book.translate.xml:45625 -msgid "Merging Configuration Files" -msgstr "合併設定檔" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45638 -msgid "<primary> <command>mergemaster</command> </primary>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45644 -msgid "" -"FreeBSD provides the <citerefentry><refentrytitle>mergemaster</" -"refentrytitle><manvolnum>8</manvolnum></citerefentry> Bourne script to aid " -"in determining the differences between the configuration files in <filename>/" -"etc</filename>, and the configuration files in <filename>/usr/src/etc</" -"filename>. This is the recommended solution for keeping the system " -"configuration files up to date with those located in the source tree." -msgstr "" +#. (itstool) path: sect2/title +#: book.translate.xml:45612 +msgid "Installing the Compiled Code" +msgstr "安裝編譯好的程式" #. (itstool) path: sect2/para -#: book.translate.xml:45651 +#: book.translate.xml:45614 msgid "" -"Before using <command>mergemaster</command>, it is recommended to first copy " -"the existing <filename>/etc</filename> somewhere safe. Include <option>-R</" -"option> which does a recursive copy and <option>-p</option> which preserves " -"times and the ownerships on files:" +"After the <_:buildtarget-1/> and <_:buildtarget-2/> steps have been " +"completed, the new kernel and world are installed:" msgstr "" +"在完成 <_:buildtarget-1/> 與 <_:buildtarget-2/> 兩個步驟之後,便可安裝新的核" +"心與世界:" #. (itstool) path: sect2/screen -#: book.translate.xml:45658 +#: book.translate.xml:45618 #, no-wrap -msgid "<prompt>#</prompt> <userinput>cp -Rp /etc /etc.old</userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45660 -msgid "" -"When run, <command>mergemaster</command> builds a temporary root " -"environment, from <filename>/</filename> down, and populates it with various " -"system configuration files. Those files are then compared to the ones " -"currently installed in the system. Files that differ will be shown in " -"<citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> format, with the <option>+</option> sign representing added or " -"modified lines, and <option>-</option> representing lines that will be " -"either removed completely or replaced with a new file. Refer to " -"<citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> for more information about how file differences are shown." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45671 -msgid "" -"Next, <command>mergemaster</command> will display each file that differs, " -"and present options to: delete the new file, referred to as the temporary " -"file, install the temporary file in its unmodified state, merge the " -"temporary file with the currently installed file, or view the results again." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45678 -msgid "" -"Choosing to delete the temporary file will tell <command>mergemaster</" -"command> to keep the current file unchanged and to delete the new version. " -"This option is not recommended. To get help at any time, type <keycap>?</" -"keycap> at the <command>mergemaster</command> prompt. If the user chooses to " -"skip a file, it will be presented again after all other files have been " -"dealt with." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45687 -msgid "" -"Choosing to install the unmodified temporary file will replace the current " -"file with the new one. For most unmodified files, this is the best option." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45691 msgid "" -"Choosing to merge the file will present a text editor, and the contents of " -"both files. The files can be merged by reviewing both files side by side on " -"the screen, and choosing parts from both to create a finished product. When " -"the files are compared side by side, <keycap>l</keycap> selects the left " -"contents and <keycap>r</keycap> selects contents from the right. The final " -"output will be a file consisting of both parts, which can then be installed. " -"This option is customarily used for files where settings have been modified " -"by the user." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45702 -msgid "Choosing to view the results again will redisplay the file differences." -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45705 -msgid "" -"After <command>mergemaster</command> is done with the system files, it will " -"prompt for other options. It may prompt to rebuild the password file and " -"will finish up with an option to remove left-over temporary files." -msgstr "" - -#. (itstool) path: info/title -#: book.translate.xml:45794 -msgid "Deleting Obsolete Files and Libraries" -msgstr "刪除過時的檔案及程式庫" - -#. (itstool) path: authorgroup/author -#: book.translate.xml:45797 -msgid "" -"<personname> <firstname>Anton</firstname> <surname>Shterenlikht</surname> </" -"personname> <contrib>Based on notes provided by </contrib>" -msgstr "" - -#. (itstool) path: sect2/indexterm -#: book.translate.xml:45807 -msgid "<primary>Deleting obsolete files and directories</primary>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45811 -msgid "" -"As a part of the FreeBSD development lifecycle, files and their contents " -"occasionally become obsolete. This may be because functionality is " -"implemented elsewhere, the version number of the library has changed, or it " -"was removed from the system entirely. These obsoleted files, libraries, and " -"directories should be removed when updating the system. This ensures that " -"the system is not cluttered with old files which take up unnecessary space " -"on the storage and backup media. Additionally, if the old library has a " -"security or stability issue, the system should be updated to the newer " -"library to keep it safe and to prevent crashes caused by the old library. " -"Files, directories, and libraries which are considered obsolete are listed " -"in <filename>/usr/src/ObsoleteFiles.inc</filename>. The following " -"instructions should be used to remove obsolete files during the system " -"upgrade process." +"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>make installkernel</userinput>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput>\n" +"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>make installworld</userinput>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:45828 +#: book.translate.xml:45625 msgid "" -"After the <command>make installworld</command> and the subsequent " -"<command>mergemaster</command> have finished successfully, check for " -"obsolete files and libraries:" +"If a custom kernel was built, <varname>KERNCONF</varname> must also be set " +"to use the new custom kernel:" msgstr "" +"若使用自訂核心,則同樣須設定 <varname>KERNCONF</varname> 來使用新的自訂核心:" #. (itstool) path: sect2/screen -#: book.translate.xml:45832 +#: book.translate.xml:45628 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make check-old</userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45835 -msgid "" -"If any obsolete files are found, they can be deleted using the following " -"command:" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:45840 -msgid "" -"A prompt is displayed before deleting each obsolete file. To skip the prompt " -"and let the system remove these files automatically, use " -"<varname>BATCH_DELETE_OLD_FILES</varname>:" +"<prompt>#</prompt> <userinput>make installkernel KERNCONF=STORAGESERVER</userinput>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput>\n" +"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" +"<prompt>#</prompt> <userinput>make installworld</userinput>\n" +"<prompt>#</prompt> <userinput>shutdown -r now</userinput>" msgstr "" -#. (itstool) path: sect2/screen -#: book.translate.xml:45845 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>make -DBATCH_DELETE_OLD_FILES delete-old</userinput>" -msgstr "" +#. (itstool) path: sect2/title +#: book.translate.xml:45637 +msgid "Completing the Update" +msgstr "完成更新" #. (itstool) path: sect2/para -#: book.translate.xml:45847 +#: book.translate.xml:45639 msgid "" -"The same goal can be achieved by piping these commands through <command>yes</" -"command>:" +"A few final tasks complete the update. Any modified configuration files are " +"merged with the new versions, outdated libraries are located and removed, " +"then the system is restarted." msgstr "" +"還有最後一些的工作要做來完成更新,任何修改過的設定檔要與新版本的設定檔合併、" +"移除找到的過時程式庫,然後重新啟動系統。" -#. (itstool) path: sect2/screen -#: book.translate.xml:45850 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>yes|make delete-old</userinput>" -msgstr "" - -#. (itstool) path: warning/title -#: book.translate.xml:45853 -msgid "Warning" -msgstr "" - -#. (itstool) path: warning/para -#: book.translate.xml:45855 +#. (itstool) path: sect3/title +#: book.translate.xml:45645 msgid "" -"Deleting obsolete files will break applications that still depend on those " -"obsolete files. This is especially true for old libraries. In most cases, " -"the programs, ports, or libraries that used the old library need to be " -"recompiled before <command>make delete-old-libs</command> is executed." +"Merging Configuration Files with <citerefentry><refentrytitle>mergemaster</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry>" msgstr "" +"使用 <citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 合併設定檔案" -#. (itstool) path: sect2/para -#: book.translate.xml:45863 +#. (itstool) path: sect3/para +#: book.translate.xml:45648 msgid "" -"Utilities for checking shared library dependencies include <package>sysutils/" -"libchk</package> and <package>sysutils/bsdadminscripts</package>." +"<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> provides an easy way to merge changes that have " +"been made to system configuration files with new versions of those files." msgstr "" +"<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 可簡單的將修改過的系統設定檔與新版設定檔合併。" -#. (itstool) path: sect2/para -#: book.translate.xml:45867 +#. (itstool) path: sect3/para +#: book.translate.xml:45652 msgid "" -"Obsolete shared libraries can conflict with newer libraries, causing " -"messages like these:" +"With <option>-Ui</option>, <citerefentry><refentrytitle>mergemaster</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> automatically updates " +"files that have not been user-modified and installs new files that are not " +"already present:" msgstr "" +"使用 <option>-Ui</option>,<citerefentry><refentrytitle>mergemaster</" +"refentrytitle><manvolnum>8</manvolnum></citerefentry> 會自動更新那些未被使用" +"者修改過的設定檔並安裝尚不存在的檔案:" -#. (itstool) path: sect2/screen -#: book.translate.xml:45870 +#. (itstool) path: sect3/screen +#: book.translate.xml:45656 #, no-wrap -msgid "" -"/usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5\n" -"/usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5" +msgid "<prompt>#</prompt> <userinput>mergemaster -Ui</userinput>" msgstr "" -#. (itstool) path: sect2/para -#: book.translate.xml:45873 -msgid "To solve these problems, determine which port installed the library:" -msgstr "" - -#. (itstool) path: sect2/screen -#: book.translate.xml:45876 -#, no-wrap +#. (itstool) path: sect3/para +#: book.translate.xml:45658 msgid "" -"<prompt>#</prompt> <userinput>pkg which /usr/local/lib/libtiff.so</userinput>\n" -" /usr/local/lib/libtiff.so was installed by package tiff-3.9.4\n" -"<prompt>#</prompt> <userinput>pkg which /usr/local/lib/libXext.so</userinput>\n" -" /usr/local/lib/libXext.so was installed by package libXext-1.1.1,1" +"If a file must be manually merged, an interactive display allows the user to " +"choose which portions of the files are kept. See " +"<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> for more information." msgstr "" +"若檔案需要手動合併,會有互動式介面可讓使用者選擇要保留那一邊的檔案,請參考 " +"<citerefentry><refentrytitle>mergemaster</refentrytitle><manvolnum>8</" +"manvolnum></citerefentry> 取得更多資訊。" -#. (itstool) path: sect2/para -#: book.translate.xml:45881 -msgid "" -"Then deinstall, rebuild, and reinstall the port. To automate this process, " -"<package>ports-mgmt/portmaster</package> can be used. After all ports are " -"rebuilt and no longer use the old libraries, delete the old libraries using " -"the following command:" -msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:45665 +msgid "Checking for Outdated Files and Libraries" +msgstr "檢查過時的檔案與程式庫" -#. (itstool) path: sect2/para -#: book.translate.xml:45889 +#. (itstool) path: sect3/para +#: book.translate.xml:45667 msgid "" -"If something goes wrong, it is easy to rebuild a particular piece of the " -"system. For example, if <filename>/etc/magic</filename> was accidentally " -"deleted as part of the upgrade or merge of <filename>/etc</filename>, " -"<command>file</command> will stop working. To fix this, run:" -msgstr "" +"Some obsolete files or directories can remain after an update. These files " +"can be located:" +msgstr "部份廢棄的檔案或目錄可以在更新之後保留,可使用以下指令找出這些檔案:" -#. (itstool) path: sect2/screen -#: book.translate.xml:45896 +#. (itstool) path: sect3/screen +#: book.translate.xml:45670 #, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>cd /usr/src/usr.bin/file</userinput>\n" -"<prompt>#</prompt> <userinput>make all install</userinput>" +msgid "<prompt>#</prompt> <userinput>make check-old</userinput>" msgstr "" -#. (itstool) path: sect2/title -#: book.translate.xml:45901 -msgid "Common Questions" -msgstr "常見問題" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:45905 -msgid "Do I need to re-make the world for every change?" -msgstr "每個變更是否都需要重新編譯 World?" - -#. (itstool) path: listitem/para -#: book.translate.xml:45909 -msgid "" -"It depends upon the nature of the change. For example, if <application>svn</" -"application> only shows the following files as being updated:" -msgstr "" +#. (itstool) path: sect3/para +#: book.translate.xml:45672 +msgid "and deleted:" +msgstr "並用以下指令刪除:" -#. (itstool) path: listitem/screen -#: book.translate.xml:45913 +#. (itstool) path: sect3/screen +#: book.translate.xml:45674 #, no-wrap -msgid "" -"<filename>src/games/cribbage/instr.c</filename>\n" -"<filename>src/games/sail/pl_main.c</filename>\n" -"<filename>src/release/sysinstall/config.c</filename>\n" -"<filename>src/release/sysinstall/media.c</filename>\n" -"<filename>src/share/mk/bsd.port.mk</filename>" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45919 -msgid "" -"it probably is not worth rebuilding the entire world. Instead, go into the " -"appropriate sub-directories and run <command>make all install</command>. But " -"if something major changes, such as <filename>src/lib/libc/stdlib</" -"filename>, consider rebuilding world." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45926 -msgid "" -"Some users rebuild world every fortnight and let changes accumulate over " -"that fortnight. Others only re-make those things that have changed and are " -"careful to spot all the dependencies. It all depends on how often a user " -"wants to upgrade and whether they are tracking FreeBSD-STABLE or FreeBSD-" -"CURRENT." -msgstr "" - -#. (itstool) path: term/indexterm -#: book.translate.xml:45937 -msgid "<primary>signal 11</primary>" -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:45936 -msgid "" -"What would cause a compile to fail with lots of signal 11<_:indexterm-1/> " -"(or other signal number) errors?" -msgstr "什麼會造成有很多信號 11<_:indexterm-1/> (或其他信號) 錯誤的編譯失敗?" - -#. (itstool) path: listitem/para -#: book.translate.xml:45943 -msgid "" -"This normally indicates a hardware problem. Building world is an effective " -"way to stress test hardware, especially memory. A sure indicator of a " -"hardware issue is when <application>make</application> is restarted and it " -"dies at a different point in the process." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45950 -msgid "" -"To resolve this error, swap out the components in the machine, starting with " -"RAM, to determine which component is failing." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:45957 -msgid "Can <filename>/usr/obj</filename> be removed when finished?" -msgstr "完成編譯後是可否移除 <filename>/usr/obj</filename>?" - -#. (itstool) path: listitem/para -#: book.translate.xml:45961 -msgid "" -"This directory contains all the object files that were produced during the " -"compilation phase. Normally, one of the first steps in the <command>make " -"buildworld</command> process is to remove this directory and start afresh. " -"Keeping <filename>/usr/obj</filename> around when finished makes little " -"sense, and its removal frees up a approximately 2GB of disk space." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:45973 -msgid "Can interrupted builds be resumed?" -msgstr "是否能繼續中斷的編譯?" - -#. (itstool) path: listitem/para -#: book.translate.xml:45976 -msgid "" -"This depends on how far into the process the problem occurs. In general, " -"<command>make buildworld</command> builds new copies of essential tools and " -"the system libraries. These tools and libraries are then installed, used to " -"rebuild themselves, and are installed again. The rest of the system is then " -"rebuilt with the new system tools." +msgid "<prompt>#</prompt> <userinput>make delete-old</userinput>" msgstr "" -#. (itstool) path: listitem/para -#: book.translate.xml:45985 -msgid "" -"During the last stage, it is fairly safe to run these commands as they will " -"not undo the work of the previous <command>make buildworld</command>:" -msgstr "" +#. (itstool) path: sect3/para +#: book.translate.xml:45676 +msgid "Some obsolete libraries can also remain. These can be detected with:" +msgstr "部份廢棄的程式庫也可以保留下來,可使用以下指令來偵測這些程式庫:" -#. (itstool) path: listitem/screen -#: book.translate.xml:45989 +#. (itstool) path: sect3/screen +#: book.translate.xml:45679 #, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make -DNO_CLEAN all</userinput>" +msgid "<prompt>#</prompt> <userinput>make check-old-libs</userinput>" msgstr "" -#. (itstool) path: listitem/para -#: book.translate.xml:45992 -msgid "If this message appears:" -msgstr "" +#. (itstool) path: sect3/para +#: book.translate.xml:45681 +msgid "and deleted with" +msgstr "並使用以下指令刪除" -#. (itstool) path: listitem/screen -#: book.translate.xml:45994 +#. (itstool) path: sect3/screen +#: book.translate.xml:45683 #, no-wrap -msgid "" -"--------------------------------------------------------------\n" -"Building everything..\n" -"--------------------------------------------------------------" -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:45998 -msgid "" -"in the <command>make buildworld</command> output, it is probably fairly safe " -"to do so." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:46001 -msgid "" -"If that message is not displayed, it is always better to be safe than sorry " -"and to restart the build from scratch." -msgstr "" - -#. (itstool) path: varlistentry/term -#: book.translate.xml:46008 -msgid "Is it possible to speed up making the world?" -msgstr "有可能加速編譯 World 的速度嗎?" - -#. (itstool) path: listitem/para -#: book.translate.xml:46011 -msgid "" -"Several actions can speed up the build world process. For example, the " -"entire process can be run from single-user mode. However, this will prevent " -"users from having access to the system until the process is complete." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:46017 -msgid "" -"Careful file system design or the use of ZFS datasets can make a difference. " -"Consider putting <filename>/usr/src</filename> and <filename>/usr/obj</" -"filename> on separate file systems. If possible, place the file systems on " -"separate disks on separate disk controllers. When mounting <filename>/usr/" -"src</filename>, use <option>noatime</option> which prevents the file system " -"from recording the file access time. If <filename>/usr/src</filename> is not " -"on its own file system, consider remounting <filename>/usr</filename> with " -"<option>noatime</option>." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:46029 -msgid "" -"The file system holding <filename>/usr/obj</filename> can be mounted or " -"remounted with <option>async</option> so that disk writes happen " -"asynchronously. The write completes immediately, and the data is written to " -"the disk a few seconds later. This allows writes to be clustered together, " -"and can provide a dramatic performance boost." -msgstr "" - -#. (itstool) path: warning/para -#: book.translate.xml:46038 -msgid "" -"Keep in mind that this option makes the file system more fragile. With this " -"option, there is an increased chance that, should power fail, the file " -"system will be in an unrecoverable state when the machine restarts." -msgstr "" - -#. (itstool) path: warning/para -#: book.translate.xml:46044 -msgid "" -"If <filename>/usr/obj</filename> is the only directory on this file system, " -"this is not a problem. If you have other, valuable data on the same file " -"system, ensure that there are verified backups before enabling this option." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:46051 -msgid "" -"Turn off profiling by setting <quote>NO_PROFILE=true</quote> in <filename>/" -"etc/make.conf</filename>." +msgid "<prompt>#</prompt> <userinput>make delete-old-libs</userinput>" msgstr "" -#. (itstool) path: listitem/para -#: book.translate.xml:46055 +#. (itstool) path: sect3/para +#: book.translate.xml:45685 msgid "" -"Pass <option>-j<replaceable>n</replaceable></option> to " -"<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></" -"citerefentry> to run multiple processes in parallel. This usually helps on " -"both single- and multi-processor machines." +"Programs which were still using those old libraries will stop working when " +"the library has been deleted. These programs must be rebuilt or replaced " +"after deleting the old libraries." msgstr "" +"那些仍使用舊程式庫的程式將在刪除程式庫之後無法正常運作,而這些程式須要在刪除" +"舊程式庫之後重新編譯或更換。" -#. (itstool) path: varlistentry/term -#: book.translate.xml:46063 -msgid "What if something goes wrong?" -msgstr "若發生錯誤時該怎麼辦?" - -#. (itstool) path: listitem/para -#: book.translate.xml:46066 +#. (itstool) path: tip/para +#: book.translate.xml:45691 msgid "" -"First, make absolutely sure that the environment has no extraneous cruft " -"from earlier builds:" +"When all the old files or directories are known to be safe to delete, " +"pressing <keycap>y</keycap> and <keycap>Enter</keycap> to delete each file " +"can be avoided by setting <varname>BATCH_DELETE_OLD_FILES</varname> in the " +"command. For example:" msgstr "" +"當確認所有舊檔案或目錄可安全的刪除時,要避免刪除每一個檔案時均需按下 " +"<keycap>y</keycap> 與 <keycap>Enter</keycap> 鍵可在指令設定 " +"<varname>BATCH_DELETE_OLD_FILES</varname>,例如:" -#. (itstool) path: listitem/screen -#: book.translate.xml:46069 +#. (itstool) path: tip/screen +#: book.translate.xml:45697 #, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>chflags -R noschg /usr/obj/usr</userinput>\n" -"<prompt>#</prompt> <userinput>rm -rf /usr/obj/usr</userinput>\n" -"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make cleandir</userinput>\n" -"<prompt>#</prompt> <userinput>make cleandir</userinput>" +msgid "<prompt>#</prompt> <userinput>make BATCH_DELETE_OLD_FILES=yes delete-old-libs</userinput>" msgstr "" -#. (itstool) path: listitem/para -#: book.translate.xml:46075 -msgid "Yes, <command>make cleandir</command> really should be run twice." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:46078 -msgid "" -"Then, restart the whole process, starting with <command>make buildworld</" -"command>." -msgstr "" +#. (itstool) path: sect3/title +#: book.translate.xml:45702 +msgid "Restarting After the Update" +msgstr "更新後重新啟動" -#. (itstool) path: listitem/para -#: book.translate.xml:46081 +#. (itstool) path: sect3/para +#: book.translate.xml:45704 msgid "" -"If problems persist, send the error and the output of <command>uname -a</" -"command> to <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" -"freebsd-questions\">FreeBSD general questions mailing list</link>. Be " -"prepared to answer other questions about the setup!" -msgstr "" +"The last step after updating is to restart the computer so all the changes " +"take effect:" +msgstr "更新之後的最後一個步驟便是重新啟動電腦,來讓所有的變更生效:" #. (itstool) path: info/title -#: book.translate.xml:46093 +#: book.translate.xml:45714 msgid "Tracking for Multiple Machines" msgstr "多部機器追蹤" #. (itstool) path: sect1/indexterm -#: book.translate.xml:46106 +#: book.translate.xml:45727 msgid "" "<primary>NFS</primary> <secondary>installing multiple machines</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46111 +#: book.translate.xml:45732 msgid "" "When multiple machines need to track the same source tree, it is a waste of " "disk space, network bandwidth, and <acronym>CPU</acronym> cycles to have " @@ -68412,9 +68472,15 @@ msgid "" "doing so. For more information about using <acronym>NFS</acronym>, refer to " "<xref linkend=\"network-nfs\"/>." msgstr "" +"當有多部主機需要追蹤相同的原始碼樹,要在每一部主機的系統下載原始碼與重新編譯" +"所有的東西會耗費不少磁碟空間、網路頻寬與 <acronym>CPU</acronym> 運算,要解決" +"這個問題的方法是先在一部主機上做完大部份的工作,而其餘的主機透過 " +"<acronym>NFS</acronym> 掛載使用編譯完的成果。本節會介紹如何做這件事。要取得更" +"多有關使用 <acronym>NFS</acronym> 的資訊請參考 <xref linkend=\"network-nfs\"/" +">。" #. (itstool) path: sect1/para -#: book.translate.xml:46120 +#: book.translate.xml:45741 msgid "" "First, identify a set of machines which will run the same set of binaries, " "known as a <firstterm>build set</firstterm>. Each machine can have a custom " @@ -68424,18 +68490,27 @@ msgid "" "spare <acronym>CPU</acronym> to run <command>make buildworld</command> and " "<command>make buildkernel</command>." msgstr "" +"首先,要先確認要執行同一組 Binary 的一群主機,這群主機又稱作 <firstterm>建置" +"集 (Build set)</firstterm>,其中每部主機可以有自己的自訂核心,但會執行相同的 " +"Userland binary。建置集中需挑選一部做為<firstterm>建置主機 (Build machine)</" +"firstterm>,這部主機將會拿來編譯 World 與核心 (Kernel),理想情況下,要挑選一" +"部速度較快、有足夠的 <acronym>CPU</acronym> 能夠執行 <command>make " +"buildworld</command> 與 <command>make buildkernel</command> 的主機。" #. (itstool) path: sect1/para -#: book.translate.xml:46130 +#: book.translate.xml:45751 msgid "" "Select a machine to be the <firstterm>test machine</firstterm>, which will " "test software updates before they are put into production. This " "<emphasis>must</emphasis> be a machine that can afford to be down for an " "extended period of time. It can be the build machine, but need not be." msgstr "" +"再挑選一部主機做為<firstterm>測試主機 (Test machine)</firstterm>,這部主機,要" +"在將系統更新上正式運作的環境前做測試,這<emphasis>必須</emphasis>一部能夠承受" +"服務停止一段時間的主機,它也可是同時是建置主機,但不是一定要。" #. (itstool) path: sect1/para -#: book.translate.xml:46136 +#: book.translate.xml:45757 msgid "" "All the machines in this build set need to mount <filename>/usr/obj</" "filename> and <filename>/usr/src</filename> from the build machine via " @@ -68443,9 +68518,13 @@ msgid "" "filename> should be on one build machine, and <acronym>NFS</acronym> mounted " "on the rest." msgstr "" +"所有在此建置集中的主機需要透過 <acronym>NFS</acronym> 掛載在建置主機上的 " +"<filename>/usr/obj</filename> 與 <filename>/usr/src</filename>。在有多個建置" +"集時,<filename>/usr/src</filename> 也應放在其中一部建置主機,然後由其他主機" +"使用 <acronym>NFS</acronym> 掛載。" #. (itstool) path: sect1/para -#: book.translate.xml:46142 +#: book.translate.xml:45763 msgid "" "Ensure that <filename>/etc/make.conf</filename> and <filename>/etc/src.conf</" "filename> on all the machines in the build set agree with the build machine. " @@ -68458,9 +68537,16 @@ msgid "" "each machine in its <filename>/usr/src/sys/<replaceable>arch</replaceable>/" "conf</filename>." msgstr "" +"確保在建置集中的所有主機的 <filename>/etc/make.conf</filename> 及 <filename>/" +"etc/src.conf</filename> 與建置主機一致,這是由於建置主機必須編譯整個基礎系統 " +"(Base system) 給所有建置集中的主機安裝。此外,每一部建置主機應在 <filename>/" +"etc/make.conf</filename> 使用 <varname>KERNCONF</varname> 設定其核心名稱,且" +"建置主機應列出所有要編譯的核心名稱在 <varname>KERNCONF</varname>,並且把自己" +"要用的核心放在第一個。建置主機也必須有每部主機的核心設定檔在其 <filename>/" +"usr/src/sys/<replaceable>arch</replaceable>/conf</filename>。" #. (itstool) path: sect1/para -#: book.translate.xml:46154 +#: book.translate.xml:45775 msgid "" "On the build machine, build the kernel and world as described in <xref " "linkend=\"makeworld\"/>, but do not install anything on the build machine. " @@ -68471,17 +68557,25 @@ msgid "" "<command>mergemaster</command> as usual. When done, reboot to return to " "normal multi-user operations." msgstr "" +"在建置主機上,編譯核心與 World 如 <xref linkend=\"makeworld\"/> 所述,但不要" +"在建置主機上安裝所有編譯好的東西,而是要將編譯好的核心安裝到測試主機,在測試" +"主機透過 <acronym>NFS</acronym> 掛載 <filename>/usr/src</filename> 及 " +"<filename>/usr/obj</filename>。然後執行 <command>shutdown now</command> 進入" +"單使用者模式來安裝新的核心與 World 並如同往常執行 <command>mergemaster</" +"command>。完成之後,重新開機回到正常的多使用者模式運作。" #. (itstool) path: sect1/para -#: book.translate.xml:46165 +#: book.translate.xml:45786 msgid "" "After verifying that everything on the test machine is working properly, use " "the same procedure to install the new software on each of the other machines " "in the build set." msgstr "" +"在測試主機上檢驗完所有東西皆運作正常之後,使用相同的程序將編譯好的結果安裝到" +"在建置集中的其他主機。" #. (itstool) path: sect1/para -#: book.translate.xml:46169 +#: book.translate.xml:45790 msgid "" "The same methodology can be used for the ports tree. The first step is to " "share <filename>/usr/ports</filename> via <acronym>NFS</acronym> to all the " @@ -68495,24 +68589,32 @@ msgid "" "set <varname>PACKAGES</varname> on the build system to a directory similar " "to <varname>DISTDIR</varname>." msgstr "" +"同樣的方法也可用在 Port 樹,第一個步驟是透過 <acronym>NFS</acronym> 共享 " +"<filename>/usr/ports</filename> 給所有在建置集中的主機。要設定 <filename>/" +"etc/make.conf</filename> 使用共享的 distfiles,可設定 <varname>DISTDIR</" +"varname> 為由 <acronym>NFS</acronym> 掛載對應到的使用者 <systemitem class=" +"\"username\">root</systemitem> 可寫入的通用共享目錄。每一台主機應設定 " +"<varname>WRKDIRPREFIX</varname> 到一個本地的編譯目錄,若 Port 要在本地編譯。" +"或者,若建置系統要編譯並散佈套件到建置集中的主機可在建置系統上設定 " +"<varname>PACKAGES</varname> 到一個類似 <varname>DISTDIR</varname> 的目錄。" #. (itstool) path: info/title -#: book.translate.xml:46202 +#: book.translate.xml:45823 msgid "DTrace" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:46213 +#: book.translate.xml:45834 msgid "<primary>DTrace</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:46214 +#: book.translate.xml:45835 msgid "<primary>DTrace support</primary> <see>DTrace</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46219 +#: book.translate.xml:45840 msgid "" "DTrace, also known as Dynamic Tracing, was developed by <trademark>Sun</" "trademark> as a tool for locating performance bottlenecks in production and " @@ -68522,7 +68624,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46226 +#: book.translate.xml:45847 msgid "" "DTrace is a remarkable profiling tool, with an impressive array of features " "for diagnosing system issues. It may also be used to run pre-written scripts " @@ -68532,7 +68634,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46233 +#: book.translate.xml:45854 msgid "" "The FreeBSD implementation provides full support for kernel DTrace and " "experimental support for userland DTrace. Userland DTrace allows users to " @@ -68546,36 +68648,36 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46245 +#: book.translate.xml:45866 msgid "" "The official guide to DTrace is maintained by the Illumos project at <uri " "xlink:href=\"http://dtrace.org/guide\">DTrace Guide</uri>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46253 +#: book.translate.xml:45874 msgid "What DTrace is and what features it provides." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46257 +#: book.translate.xml:45878 msgid "" "Differences between the <trademark>Solaris</trademark> DTrace implementation " "and the one provided by FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46262 +#: book.translate.xml:45883 msgid "How to enable and use DTrace on FreeBSD." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46282 +#: book.translate.xml:45903 msgid "Implementation Differences" msgstr "實作差異" #. (itstool) path: sect1/para -#: book.translate.xml:46284 +#: book.translate.xml:45905 msgid "" "While the DTrace in FreeBSD is similar to that found in <trademark>Solaris</" "trademark>, differences do exist. The primary difference is that in FreeBSD, " @@ -68584,20 +68686,20 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46290 +#: book.translate.xml:45911 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload dtraceall</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46292 +#: book.translate.xml:45913 msgid "" "Beginning with FreeBSD 10.0-RELEASE, the modules are automatically loaded " "when <command>dtrace</command> is run." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46296 +#: book.translate.xml:45917 msgid "" "FreeBSD uses the <literal>DDB_CTF</literal> kernel option to enable support " "for loading <acronym>CTF</acronym> data from kernel modules and the kernel " @@ -68613,7 +68715,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46310 +#: book.translate.xml:45931 msgid "" "Some different providers exist for FreeBSD than for <trademark>Solaris</" "trademark>. Most notable is the <literal>dtmalloc</literal> provider, which " @@ -68628,7 +68730,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46322 +#: book.translate.xml:45943 msgid "" "Due to security differences, only <systemitem class=\"username\">root</" "systemitem> may use DTrace on FreeBSD. <trademark>Solaris</trademark> has a " @@ -68638,7 +68740,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46328 +#: book.translate.xml:45949 msgid "" "DTrace falls under the Common Development and Distribution License " "(<acronym>CDDL</acronym>) license. To view this license on FreeBSD, see " @@ -68651,12 +68753,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46340 +#: book.translate.xml:45961 msgid "Enabling DTrace Support" msgstr "開啟 DTrace 支援" #. (itstool) path: sect1/para -#: book.translate.xml:46342 +#: book.translate.xml:45963 msgid "" "In FreeBSD 9.2 and 10.0, DTrace support is built into the <filename>GENERIC</" "filename> kernel. Users of earlier versions of FreeBSD or who prefer to " @@ -68666,7 +68768,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:46348 +#: book.translate.xml:45969 #, no-wrap msgid "" "options KDTRACE_HOOKS\n" @@ -68676,18 +68778,18 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46353 +#: book.translate.xml:45974 msgid "Users of the AMD64 architecture should also add this line:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:46356 +#: book.translate.xml:45977 #, no-wrap msgid "options KDTRACE_FRAME" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46358 +#: book.translate.xml:45979 msgid "" "This option provides support for <acronym>FBT</acronym>. While DTrace will " "work without this option, there will be limited support for function " @@ -68695,7 +68797,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46362 +#: book.translate.xml:45983 msgid "" "Once the FreeBSD system has rebooted into the new kernel, or the DTrace " "kernel modules have been loaded using <command>kldload dtraceall</command>, " @@ -68707,7 +68809,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46372 +#: book.translate.xml:45993 msgid "" "Finally, install the current DTrace Toolkit, a collection of ready-made " "scripts for collecting system information. There are scripts to check open " @@ -68718,7 +68820,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:46385 +#: book.translate.xml:46006 msgid "" "The scripts found in <filename>/usr/share/dtrace</filename> have been " "specifically ported to FreeBSD. Not all of the scripts found in the DTrace " @@ -68727,7 +68829,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46392 +#: book.translate.xml:46013 msgid "" "The DTrace Toolkit includes many scripts in the special language of DTrace. " "This language is called the D language and it is very similar to C++. An in " @@ -68738,12 +68840,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:46400 +#: book.translate.xml:46021 msgid "Using DTrace" msgstr "使用 DTrace" #. (itstool) path: sect1/para -#: book.translate.xml:46402 +#: book.translate.xml:46023 msgid "" "DTrace scripts consist of a list of one or more <firstterm>probes</" "firstterm>, or instrumentation points, where each probe is associated with " @@ -68756,19 +68858,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46413 +#: book.translate.xml:46034 msgid "" "To view all probes, the administrator can execute the following command:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46416 +#: book.translate.xml:46037 #, no-wrap msgid "<prompt>#</prompt> <userinput>dtrace -l | more</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46418 +#: book.translate.xml:46039 msgid "" "Each probe has an <literal>ID</literal>, a <literal>PROVIDER</literal> " "(dtrace or fbt), a <literal>MODULE</literal>, and a <literal>FUNCTION NAME</" @@ -68778,7 +68880,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46424 +#: book.translate.xml:46045 msgid "" "The examples in this section provide an overview of how to use two of the " "fully supported scripts from the DTrace Toolkit: the <filename>hotkernel</" @@ -68786,7 +68888,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46430 +#: book.translate.xml:46051 msgid "" "The <filename>hotkernel</filename> script is designed to identify which " "function is using the most kernel time. It will produce output similar to " @@ -68794,7 +68896,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46434 +#: book.translate.xml:46055 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/share/dtrace/toolkit</userinput>\n" @@ -68803,7 +68905,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46438 +#: book.translate.xml:46059 msgid "" "As instructed, use the <keycombo action=\"simul\"><keycap>Ctrl</" "keycap><keycap>C</keycap> </keycombo> key combination to stop the process. " @@ -68812,7 +68914,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46445 +#: book.translate.xml:46066 #, no-wrap msgid "" "kernel`_thread_lock_flags 2 0.0%\n" @@ -68844,14 +68946,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46476 +#: book.translate.xml:46097 msgid "" "This script will also work with kernel modules. To use this feature, run the " "script with <option>-m</option>:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46479 +#: book.translate.xml:46100 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>./hotkernel -m</userinput>\n" @@ -68873,7 +68975,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46500 +#: book.translate.xml:46121 msgid "" "The <filename>procsystime</filename> script captures and prints the system " "call time usage for a given process <acronym>ID</acronym> (<acronym>PID</" @@ -68885,7 +68987,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:46510 +#: book.translate.xml:46131 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>./procsystime -n csh</userinput>\n" @@ -68916,7 +69018,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46536 +#: book.translate.xml:46157 msgid "" "As shown, the <function>read()</function> system call used the most time in " "nanoseconds while the <function>getpid()</function> system call used the " @@ -68924,12 +69026,12 @@ msgid "" msgstr "" #. (itstool) path: part/title -#: book.translate.xml:46546 +#: book.translate.xml:46167 msgid "Network Communication" msgstr "網路通訊" #. (itstool) path: partintro/para -#: book.translate.xml:46549 +#: book.translate.xml:46170 msgid "" "FreeBSD is one of the most widely deployed operating systems for high " "performance network servers. The chapters in this part cover:" @@ -68937,39 +69039,39 @@ msgstr "" "FreeBSD 是一種廣泛的被使用在高效能的網路伺服器中的作業系統,這些章節包含了:" #. (itstool) path: listitem/para -#: book.translate.xml:46555 +#: book.translate.xml:46176 msgid "Serial communication" msgstr "序列通訊" #. (itstool) path: listitem/para -#: book.translate.xml:46559 +#: book.translate.xml:46180 msgid "<acronym>PPP</acronym> and <acronym>PPP</acronym> over Ethernet" msgstr "<acronym>PPP</acronym> 和在乙太網路使用 <acronym>PPP</acronym>" #. (itstool) path: listitem/para #. (itstool) path: info/title -#: book.translate.xml:46564 book.translate.xml:50454 +#: book.translate.xml:46185 book.translate.xml:50075 msgid "Electronic Mail" msgstr "電子郵件" #. (itstool) path: listitem/para -#: book.translate.xml:46568 +#: book.translate.xml:46189 msgid "Running Network Servers" msgstr "執行網路伺服器" #. (itstool) path: listitem/para #. (itstool) path: info/title -#: book.translate.xml:46572 book.translate.xml:58077 +#: book.translate.xml:46193 book.translate.xml:57699 msgid "Firewalls" msgstr "防火牆" #. (itstool) path: listitem/para -#: book.translate.xml:46576 +#: book.translate.xml:46197 msgid "Other Advanced Networking Topics" msgstr "其他的進階網路主題" #. (itstool) path: partintro/para -#: book.translate.xml:46580 +#: book.translate.xml:46201 msgid "" "These chapters are designed to be read when the information is needed. They " "do not need to be read in any particular order, nor is it necessary to read " @@ -68979,17 +69081,17 @@ msgstr "" "要將這些章節全部讀過之後才將 FreeBSD 用在網路環境下。" #. (itstool) path: chapter/title -#: book.translate.xml:46593 +#: book.translate.xml:46214 msgid "Serial Communications" msgstr "序列通訊" #. (itstool) path: sect1/indexterm -#: book.translate.xml:46598 +#: book.translate.xml:46219 msgid "<primary>serial communications</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46600 +#: book.translate.xml:46221 msgid "" "<trademark class=\"registered\">UNIX</trademark> has always had support for " "serial communications as the very first <trademark class=\"registered" @@ -69004,102 +69106,102 @@ msgstr "" "改變很多。本章將說明幾種可在 FreeBSD 使用的序列通訊方式。" #. (itstool) path: listitem/para -#: book.translate.xml:46611 +#: book.translate.xml:46232 msgid "How to connect terminals to a FreeBSD system." msgstr "如何連線終端機到 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46614 +#: book.translate.xml:46235 msgid "How to use a modem to dial out to remote hosts." msgstr "如何使用數據機撥號給遠端主機。" #. (itstool) path: listitem/para -#: book.translate.xml:46617 +#: book.translate.xml:46238 msgid "How to allow remote users to login to a FreeBSD system with a modem." msgstr "如何允許遠端使用者透過數據機來登入 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46621 +#: book.translate.xml:46242 msgid "How to boot a FreeBSD system from a serial console." msgstr "如何從序列 Console 啟動 FreeBSD 系統。" #. (itstool) path: listitem/para -#: book.translate.xml:46629 +#: book.translate.xml:46250 msgid "" "Know how to <link linkend=\"kernelconfig\"> configure and install a custom " "kernel</link>." msgstr "了解如何 <link linkend=\"kernelconfig\">設定並安裝自訂核心</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:46633 +#: book.translate.xml:46254 msgid "" "Understand <link linkend=\"basics\"> FreeBSD permissions and processes</" "link>." msgstr "了解 <link linkend=\"basics\"> FreeBSD 的權限與程序</link>。" #. (itstool) path: listitem/para -#: book.translate.xml:46637 +#: book.translate.xml:46258 msgid "" "Have access to the technical manual for the serial hardware to be used with " "FreeBSD." msgstr "能夠取得要在 FreeBSD 使用的序列硬體的技術手冊。" #. (itstool) path: sect1/title -#: book.translate.xml:46644 +#: book.translate.xml:46265 msgid "Serial Terminology and Hardware" msgstr "序列術語與硬體" #. (itstool) path: sect1/para -#: book.translate.xml:46646 +#: book.translate.xml:46267 msgid "The following terms are often used in serial communications:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46650 +#: book.translate.xml:46271 msgid "<acronym>bps</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46653 +#: book.translate.xml:46274 msgid "<primary>bits-per-second</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46652 +#: book.translate.xml:46273 msgid "" "Bits per Second<_:indexterm-1/> (<acronym>bps</acronym>) is the rate at " "which data is transmitted." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46660 +#: book.translate.xml:46281 msgid "<acronym>DTE</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46663 +#: book.translate.xml:46284 msgid "<primary>DTE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46662 +#: book.translate.xml:46283 msgid "" "Data Terminal Equipment<_:indexterm-1/> (<acronym>DTE</acronym>) is one of " "two endpoints in a serial communication. An example would be a computer." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46671 +#: book.translate.xml:46292 msgid "<acronym>DCE</acronym>" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:46674 +#: book.translate.xml:46295 msgid "<primary>DCE</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46673 +#: book.translate.xml:46294 msgid "" "Data Communications Equipment<_:indexterm-1/> (<acronym>DTE</acronym>) is " "the other endpoint in a serial communication. Typically, it is a modem or " @@ -69107,19 +69209,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:46682 +#: book.translate.xml:46303 msgid "<acronym>RS-232</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:46684 +#: book.translate.xml:46305 msgid "" "The original standard which defined hardware serial communications. It has " "since been renamed to <acronym>TIA-232</acronym>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46691 +#: book.translate.xml:46312 msgid "" "When referring to communication data rates, this section does not use the " "term <firstterm>baud</firstterm>. Baud refers to the number of electrical " @@ -69128,7 +69230,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:46697 +#: book.translate.xml:46318 msgid "" "To connect a serial terminal to a FreeBSD system, a serial port on the " "computer and the proper cable to connect to the serial device are needed. " @@ -69137,12 +69239,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:46703 +#: book.translate.xml:46324 msgid "Serial Cables and Ports" msgstr "序列線與埠" #. (itstool) path: sect2/para -#: book.translate.xml:46705 +#: book.translate.xml:46326 msgid "" "There are several different kinds of serial cables. The two most common " "types are null-modem cables and standard <acronym>RS-232</acronym> cables. " @@ -69151,7 +69253,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46710 +#: book.translate.xml:46331 msgid "" "These two types of cables differ in how the wires are connected to the " "connector. Each wire represents a signal, with the defined signals " @@ -69164,7 +69266,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46720 +#: book.translate.xml:46341 msgid "" "A null-modem cable switches the <quote>Transmitted Data</quote> pin of the " "connector on one end with the <quote>Received Data</quote> pin on the other " @@ -69173,7 +69275,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:46726 +#: book.translate.xml:46347 msgid "" "A null-modem cable can be constructed using the pin connections summarized " "in <xref linkend=\"nullmodem-db25\"/>, <xref linkend=\"nullmodem-db9\"/>, " @@ -69186,154 +69288,154 @@ msgstr "" #. (itstool) path: sect2/indexterm #. (itstool) path: step/indexterm -#: book.translate.xml:46735 book.translate.xml:48412 +#: book.translate.xml:46356 book.translate.xml:48033 msgid "<primary>null-modem cable</primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46740 +#: book.translate.xml:46361 msgid "<acronym>RS-232C</acronym> Signal Names" msgstr "<acronym>RS-232C</acronym> 信號名稱" #. (itstool) path: row/entry -#: book.translate.xml:46745 +#: book.translate.xml:46366 msgid "Acronyms" msgstr "縮寫" #. (itstool) path: row/entry -#: book.translate.xml:46746 +#: book.translate.xml:46367 msgid "Names" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46752 +#: book.translate.xml:46373 msgid "<acronym>RD</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46753 book.translate.xml:65535 +#: book.translate.xml:46374 book.translate.xml:65535 msgid "Received Data" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46757 +#: book.translate.xml:46378 msgid "<acronym>TD</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46758 book.translate.xml:65535 +#: book.translate.xml:46379 book.translate.xml:65535 msgid "Transmitted Data" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46762 +#: book.translate.xml:46383 msgid "<acronym>DTR</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46763 book.translate.xml:65535 +#: book.translate.xml:46384 book.translate.xml:65535 msgid "Data Terminal Ready" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46767 +#: book.translate.xml:46388 msgid "<acronym>DSR</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46768 book.translate.xml:65535 +#: book.translate.xml:46389 book.translate.xml:65535 msgid "Data Set Ready" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46772 +#: book.translate.xml:46393 msgid "<acronym>DCD</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46773 +#: book.translate.xml:46394 msgid "Data Carrier Detect" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46777 +#: book.translate.xml:46398 msgid "<acronym>SG</acronym>" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm -#: book.translate.xml:46778 book.translate.xml:65535 +#: book.translate.xml:46399 book.translate.xml:65535 msgid "Signal Ground" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46782 +#: book.translate.xml:46403 msgid "<acronym>RTS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46783 +#: book.translate.xml:46404 msgid "Request to Send" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46787 +#: book.translate.xml:46408 msgid "<acronym>CTS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46788 +#: book.translate.xml:46409 msgid "Clear to Send" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46795 +#: book.translate.xml:46416 msgid "DB-25 to DB-25 Null-Modem Cable" msgstr "DB-25 對 DB-25 Null-Modem 線" #. (itstool) path: row/entry -#: book.translate.xml:46800 book.translate.xml:46804 book.translate.xml:46890 -#: book.translate.xml:46894 book.translate.xml:46980 book.translate.xml:46984 +#: book.translate.xml:46421 book.translate.xml:46425 book.translate.xml:46511 +#: book.translate.xml:46515 book.translate.xml:46601 book.translate.xml:46605 msgid "Signal" msgstr "信號" #. (itstool) path: row/entry -#: book.translate.xml:46801 book.translate.xml:46803 book.translate.xml:46891 -#: book.translate.xml:46893 book.translate.xml:46981 book.translate.xml:46983 +#: book.translate.xml:46422 book.translate.xml:46424 book.translate.xml:46512 +#: book.translate.xml:46514 book.translate.xml:46602 book.translate.xml:46604 msgid "Pin #" msgstr "針腳 #" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46810 book.translate.xml:46814 book.translate.xml:46932 -#: book.translate.xml:46936 book.translate.xml:47022 book.translate.xml:47026 +#: book.translate.xml:46431 book.translate.xml:46435 book.translate.xml:46553 +#: book.translate.xml:46557 book.translate.xml:46643 book.translate.xml:46647 #: book.translate.xml:65535 msgid "SG" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46812 book.translate.xml:46820 book.translate.xml:46828 -#: book.translate.xml:46836 book.translate.xml:46844 book.translate.xml:46852 -#: book.translate.xml:46860 book.translate.xml:46868 book.translate.xml:46876 -#: book.translate.xml:46902 book.translate.xml:46910 book.translate.xml:46918 -#: book.translate.xml:46926 book.translate.xml:46934 book.translate.xml:46942 -#: book.translate.xml:46950 book.translate.xml:46958 book.translate.xml:46966 -#: book.translate.xml:46992 book.translate.xml:47000 book.translate.xml:47008 -#: book.translate.xml:47016 book.translate.xml:47024 book.translate.xml:47032 -#: book.translate.xml:47040 book.translate.xml:47048 book.translate.xml:47056 +#: book.translate.xml:46433 book.translate.xml:46441 book.translate.xml:46449 +#: book.translate.xml:46457 book.translate.xml:46465 book.translate.xml:46473 +#: book.translate.xml:46481 book.translate.xml:46489 book.translate.xml:46497 +#: book.translate.xml:46523 book.translate.xml:46531 book.translate.xml:46539 +#: book.translate.xml:46547 book.translate.xml:46555 book.translate.xml:46563 +#: book.translate.xml:46571 book.translate.xml:46579 book.translate.xml:46587 +#: book.translate.xml:46613 book.translate.xml:46621 book.translate.xml:46629 +#: book.translate.xml:46637 book.translate.xml:46645 book.translate.xml:46653 +#: book.translate.xml:46661 book.translate.xml:46669 book.translate.xml:46677 msgid "connects to" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46818 book.translate.xml:46830 book.translate.xml:46904 -#: book.translate.xml:46908 book.translate.xml:46994 book.translate.xml:46998 +#: book.translate.xml:46439 book.translate.xml:46451 book.translate.xml:46525 +#: book.translate.xml:46529 book.translate.xml:46615 book.translate.xml:46619 #: book.translate.xml:65535 msgid "TD" msgstr "" @@ -69341,8 +69443,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46822 book.translate.xml:46826 book.translate.xml:46900 -#: book.translate.xml:46912 book.translate.xml:46990 book.translate.xml:47002 +#: book.translate.xml:46443 book.translate.xml:46447 book.translate.xml:46521 +#: book.translate.xml:46533 book.translate.xml:46611 book.translate.xml:46623 #: book.translate.xml:65535 msgid "RD" msgstr "" @@ -69350,8 +69452,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46834 book.translate.xml:46846 book.translate.xml:46956 -#: book.translate.xml:46968 book.translate.xml:47046 book.translate.xml:47058 +#: book.translate.xml:46455 book.translate.xml:46467 book.translate.xml:46577 +#: book.translate.xml:46589 book.translate.xml:46667 book.translate.xml:46679 #: book.translate.xml:65535 msgid "RTS" msgstr "" @@ -69359,8 +69461,8 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46838 book.translate.xml:46842 book.translate.xml:46960 -#: book.translate.xml:46964 book.translate.xml:47050 book.translate.xml:47054 +#: book.translate.xml:46459 book.translate.xml:46463 book.translate.xml:46581 +#: book.translate.xml:46585 book.translate.xml:46671 book.translate.xml:46675 #: book.translate.xml:65535 msgid "CTS" msgstr "" @@ -69368,53 +69470,53 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46850 book.translate.xml:46858 book.translate.xml:46870 -#: book.translate.xml:46878 book.translate.xml:46916 book.translate.xml:46924 -#: book.translate.xml:46944 book.translate.xml:46952 book.translate.xml:47006 -#: book.translate.xml:47014 book.translate.xml:47034 book.translate.xml:47042 +#: book.translate.xml:46471 book.translate.xml:46479 book.translate.xml:46491 +#: book.translate.xml:46499 book.translate.xml:46537 book.translate.xml:46545 +#: book.translate.xml:46565 book.translate.xml:46573 book.translate.xml:46627 +#: book.translate.xml:46635 book.translate.xml:46655 book.translate.xml:46663 #: book.translate.xml:65535 msgid "DTR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46851 book.translate.xml:46859 book.translate.xml:46869 -#: book.translate.xml:46877 book.translate.xml:47033 book.translate.xml:47041 +#: book.translate.xml:46472 book.translate.xml:46480 book.translate.xml:46490 +#: book.translate.xml:46498 book.translate.xml:46654 book.translate.xml:46662 msgid "20" msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossentry/glossterm #. (itstool) path: glossentry/acronym -#: book.translate.xml:46854 book.translate.xml:46866 book.translate.xml:46920 -#: book.translate.xml:46940 book.translate.xml:47010 book.translate.xml:47030 +#: book.translate.xml:46475 book.translate.xml:46487 book.translate.xml:46541 +#: book.translate.xml:46561 book.translate.xml:46631 book.translate.xml:46651 #: book.translate.xml:65535 msgid "DSR" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46861 book.translate.xml:46875 book.translate.xml:46959 -#: book.translate.xml:46965 book.translate.xml:47017 book.translate.xml:47055 +#: book.translate.xml:46482 book.translate.xml:46496 book.translate.xml:46580 +#: book.translate.xml:46586 book.translate.xml:46638 book.translate.xml:46676 msgid "8" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:46862 book.translate.xml:46874 book.translate.xml:46928 -#: book.translate.xml:46948 book.translate.xml:47018 book.translate.xml:47038 +#: book.translate.xml:46483 book.translate.xml:46495 book.translate.xml:46549 +#: book.translate.xml:46569 book.translate.xml:46639 book.translate.xml:46659 msgid "DCD" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:46885 +#: book.translate.xml:46506 msgid "DB-9 to DB-9 Null-Modem Cable" msgstr "DB-9 對 DB-9 Null-Modem 線" #. (itstool) path: table/title -#: book.translate.xml:46975 +#: book.translate.xml:46596 msgid "DB-9 to DB-25 Null-Modem Cable" msgstr "DB-9 對 DB-25 Null-Modem 線" #. (itstool) path: note/para -#: book.translate.xml:47065 +#: book.translate.xml:46686 msgid "" "When one pin at one end connects to a pair of pins at the other end, it is " "usually implemented with one short wire between the pair of pins in their " @@ -69422,7 +69524,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47071 +#: book.translate.xml:46692 msgid "" "Serial ports are the devices through which data is transferred between the " "FreeBSD host computer and the terminal. Several kinds of serial ports exist. " @@ -69431,7 +69533,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47077 +#: book.translate.xml:46698 msgid "" "Most terminals have <acronym>DB-25</acronym> ports. Personal computers may " "have <acronym>DB-25</acronym> or <acronym>DB-9</acronym> ports. A multiport " @@ -69441,14 +69543,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47085 +#: book.translate.xml:46706 msgid "" "In FreeBSD, each serial port is accessed through an entry in <filename>/dev</" "filename>. There are two different kinds of entries:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47091 +#: book.translate.xml:46712 msgid "" "Call-in ports are named <filename>/dev/ttyu<replaceable>N</replaceable></" "filename> where <replaceable>N</replaceable> is the port number, starting " @@ -69462,7 +69564,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47106 +#: book.translate.xml:46727 msgid "" "Call-out ports are named <filename>/dev/cuau<replaceable>N</replaceable></" "filename> on FreeBSD versions 8.X and higher and <filename>/dev/" @@ -69473,7 +69575,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47118 +#: book.translate.xml:46739 msgid "" "FreeBSD also provides initialization devices (<filename>/dev/" "ttyu<replaceable>N</replaceable>.init</filename> and <filename>/dev/" @@ -69496,12 +69598,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47142 +#: book.translate.xml:46763 msgid "Serial Port Configuration" msgstr "序列埠設定" #. (itstool) path: sect2/para -#: book.translate.xml:47144 +#: book.translate.xml:46765 msgid "" "By default, FreeBSD supports four serial ports which are commonly known as " "<filename>COM1</filename>, <filename>COM2</filename>, <filename>COM3</" @@ -69513,20 +69615,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47153 +#: book.translate.xml:46774 msgid "" "To see if the system recognizes the serial ports, look for system boot " "messages that start with <literal>uart</literal>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47157 +#: book.translate.xml:46778 #, no-wrap msgid "<prompt>#</prompt> <userinput>grep uart /var/run/dmesg.boot</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47159 +#: book.translate.xml:46780 msgid "" "If the system does not recognize all of the needed serial ports, additional " "entries can be added to <filename>/boot/device.hints</filename>. This file " @@ -69540,17 +69642,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47172 +#: book.translate.xml:46793 msgid "<primary><filename>ttyu</filename></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47173 +#: book.translate.xml:46794 msgid "<primary><filename>cuau</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47175 +#: book.translate.xml:46796 msgid "" "To determine the default set of terminal <acronym>I/O</acronym> settings " "used by the port, specify its device name. This example determines the " @@ -69558,13 +69660,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47180 +#: book.translate.xml:46801 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -a -f /dev/<replaceable>ttyu1</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47182 +#: book.translate.xml:46803 msgid "" "System-wide initialization of serial devices is controlled by <filename>/etc/" "rc.d/serial</filename>. This file affects the default settings of serial " @@ -69578,20 +69680,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47194 +#: book.translate.xml:46815 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -f /dev/ttyu5.init clocal cs8 ixon ixoff</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47196 book.translate.xml:47781 +#: book.translate.xml:46817 book.translate.xml:47402 msgid "" "<primary>rc files</primary> <secondary><filename>rc.serial</filename></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47201 +#: book.translate.xml:46822 msgid "" "To prevent certain settings from being changed by an application, make " "adjustments to the locking device. For example, to lock the speed of " @@ -69599,32 +69701,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47206 +#: book.translate.xml:46827 #, no-wrap msgid "<prompt>#</prompt> <userinput>stty -f /dev/ttyu5.lock 57600</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47208 +#: book.translate.xml:46829 msgid "" "Now, any application that opens <filename>ttyu5</filename> and tries to " "change the speed of the port will be stuck with 57600 bps." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:47216 +#: book.translate.xml:46837 msgid "Terminals" msgstr "終端機" #. (itstool) path: authorgroup/author -#: book.translate.xml:47219 +#: book.translate.xml:46840 msgid "" "<personname> <firstname>Sean</firstname> <surname>Kelly</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47231 +#: book.translate.xml:46852 msgid "" "Terminals provide a convenient and low-cost way to access a FreeBSD system " "when not at the computer's console or on a connected network. This section " @@ -69632,7 +69734,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47236 +#: book.translate.xml:46857 msgid "" "The original <trademark class=\"registered\">UNIX</trademark> systems did " "not have consoles. Instead, users logged in and ran programs through " @@ -69640,7 +69742,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47240 +#: book.translate.xml:46861 msgid "" "The ability to establish a login session on a serial port still exists in " "nearly every <trademark class=\"registered\">UNIX</trademark>-like operating " @@ -69650,7 +69752,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47247 +#: book.translate.xml:46868 msgid "" "Many terminals can be attached to a FreeBSD system. An older spare computer " "can be used as a terminal wired into a more powerful computer running " @@ -69659,17 +69761,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47253 +#: book.translate.xml:46874 msgid "FreeBSD supports three types of terminals:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:47257 +#: book.translate.xml:46878 msgid "Dumb terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47259 +#: book.translate.xml:46880 msgid "" "Dumb terminals are specialized hardware that connect to computers over " "serial lines. They are called <quote>dumb</quote> because they have only " @@ -69679,7 +69781,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47267 +#: book.translate.xml:46888 msgid "" "There are hundreds of kinds of dumb terminals made by many manufacturers, " "and just about any kind will work with FreeBSD. Some high-end terminals can " @@ -69688,19 +69790,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47273 +#: book.translate.xml:46894 msgid "" "Dumb terminals are popular in work environments where workers do not need " "access to graphical applications." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:47280 +#: book.translate.xml:46901 msgid "Computers Acting as Terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47282 +#: book.translate.xml:46903 msgid "" "Since a dumb terminal has just enough ability to display, send, and receive " "text, any spare computer can be a dumb terminal. All that is needed is the " @@ -69709,7 +69811,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47288 +#: book.translate.xml:46909 msgid "" "This configuration can be useful. For example, if one user is busy working " "at the FreeBSD system's console, another user can do some text-only work at " @@ -69718,7 +69820,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47294 +#: book.translate.xml:46915 msgid "" "There are at least two utilities in the base-system of FreeBSD that can be " "used to work through a serial connection: <citerefentry><refentrytitle>cu</" @@ -69728,20 +69830,20 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47298 +#: book.translate.xml:46919 msgid "" "For example, to connect from a client system that runs FreeBSD to the serial " "connection of another system:" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:47301 +#: book.translate.xml:46922 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l <replaceable>serial-port-device</replaceable></userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47303 +#: book.translate.xml:46924 msgid "" "Replace <replaceable>serial-port-device</replaceable> with the device name " "of the connected serial port. These device files are called <filename>/dev/" @@ -69754,19 +69856,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47316 +#: book.translate.xml:46937 msgid "" "Additional programs are available through the Ports Collection, such as " "<package>comms/minicom</package>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:47323 +#: book.translate.xml:46944 msgid "X Terminals" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47325 +#: book.translate.xml:46946 msgid "" "X terminals are the most sophisticated kind of terminal available. Instead " "of connecting to a serial port, they usually connect to a network like " @@ -69775,18 +69877,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47332 +#: book.translate.xml:46953 msgid "" "This chapter does not cover the setup, configuration, or use of X terminals." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47339 +#: book.translate.xml:46960 msgid "Terminal Configuration" msgstr "終端機設定" #. (itstool) path: sect2/para -#: book.translate.xml:47341 +#: book.translate.xml:46962 msgid "" "This section describes how to configure a FreeBSD system to enable a login " "session on a serial terminal. It assumes that the system recognizes the " @@ -69795,7 +69897,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47347 +#: book.translate.xml:46968 msgid "" "In FreeBSD, <command>init</command> reads <filename>/etc/ttys</filename> and " "starts a <command>getty</command> process on the available terminals. The " @@ -69811,7 +69913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47363 +#: book.translate.xml:46984 msgid "" "The default <filename>/etc/ttys</filename> configures support for the first " "four serial ports, <filename>ttyu0</filename> through <filename>ttyu3</" @@ -69819,7 +69921,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47368 +#: book.translate.xml:46989 #, no-wrap msgid "" "ttyu0 \"/usr/libexec/getty std.9600\" dialup off secure\n" @@ -69829,7 +69931,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47373 +#: book.translate.xml:46994 msgid "" "When attaching a terminal to one of those ports, modify the default entry to " "set the required speed and terminal type, to turn the device <literal>on</" @@ -69839,7 +69941,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47380 +#: book.translate.xml:47001 msgid "" "<xref linkend=\"ex-etc-ttys\"/> configures two terminals in <filename>/etc/" "ttys</filename>. The first entry configures a Wyse-50 connected to " @@ -69850,12 +69952,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:47389 +#: book.translate.xml:47010 msgid "Configuring Terminal Entries" msgstr "設定終端機項目" #. (itstool) path: example/programlisting -#: book.translate.xml:47391 +#: book.translate.xml:47012 #, no-wrap msgid "" "ttyu1<co xml:id=\"co-ttys-line1col1\"/> \"/usr/libexec/getty std.38400\"<co xml:id=\"co-ttys-line1col2\"/> wy50<co xml:id=\"co-ttys-line1col3\"/> on<co xml:id=\"co-ttys-line1col4\"/> insecure<co xml:id=\"co-ttys-line1col5\"/>\n" @@ -69863,12 +69965,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47396 +#: book.translate.xml:47017 msgid "The first field specifies the device name of the serial terminal." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47401 +#: book.translate.xml:47022 msgid "" "The second field tells <command>getty</command> to initialize and open the " "line, set the line speed, prompt for a user name, and then execute the " @@ -69884,7 +69986,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47417 +#: book.translate.xml:47038 msgid "" "When setting the getty type, make sure to match the communications settings " "used by the terminal. For this example, the Wyse-50 uses no parity and " @@ -69892,7 +69994,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47425 +#: book.translate.xml:47046 msgid "" "The third field is the type of terminal. For dial-up ports, " "<literal>unknown</literal> or <literal>dialup</literal> is typically used " @@ -69904,14 +70006,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47439 +#: book.translate.xml:47060 msgid "" "The fourth field specifies if the port should be enabled. To enable logins " "on this port, this field must be set to <literal>on</literal>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:47445 +#: book.translate.xml:47066 msgid "" "The final field is used to specify whether the port is secure. Marking a " "port as <literal>secure</literal> means that it is trusted enough to allow " @@ -69925,7 +70027,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47459 +#: book.translate.xml:47080 msgid "" "After making any changes to <filename>/etc/ttys</filename>, send a SIGHUP " "(hangup) signal to the <command>init</command> process to force it to re-" @@ -69933,20 +70035,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47464 book.translate.xml:47779 +#: book.translate.xml:47085 book.translate.xml:47400 #, no-wrap msgid "<prompt>#</prompt> <userinput>kill -HUP 1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47466 +#: book.translate.xml:47087 msgid "" "Since <command>init</command> is always the first process run on a system, " "it always has a process <acronym>ID</acronym> of <literal>1</literal>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47470 +#: book.translate.xml:47091 msgid "" "If everything is set up correctly, all cables are in place, and the " "terminals are powered up, a <command>getty</command> process should now be " @@ -69955,12 +70057,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47478 +#: book.translate.xml:47099 msgid "Troubleshooting the Connection" msgstr "連線疑難排解" #. (itstool) path: sect2/para -#: book.translate.xml:47480 +#: book.translate.xml:47101 msgid "" "Even with the most meticulous attention to detail, something could still go " "wrong while setting up a terminal. Here is a list of common symptoms and " @@ -69968,7 +70070,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47485 +#: book.translate.xml:47106 msgid "" "If no login prompt appears, make sure the terminal is plugged in and powered " "up. If it is a personal computer acting as a terminal, make sure it is " @@ -69976,14 +70078,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47490 +#: book.translate.xml:47111 msgid "" "Make sure the cable is connected firmly to both the terminal and the FreeBSD " "computer. Make sure it is the right kind of cable." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47494 +#: book.translate.xml:47115 msgid "" "Make sure the terminal and FreeBSD agree on the <acronym>bps</acronym> rate " "and parity settings. For a video display terminal, make sure the contrast " @@ -69992,7 +70094,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47500 +#: book.translate.xml:47121 msgid "" "Use <command>ps</command> to make sure that a <command>getty</command> " "process is running and serving the terminal. For example, the following " @@ -70002,7 +70104,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47508 +#: book.translate.xml:47129 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ps -axww|grep ttyu</userinput>\n" @@ -70010,7 +70112,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47511 +#: book.translate.xml:47132 msgid "" "If no <command>getty</command> process is running, make sure the port is " "enabled in <filename>/etc/ttys</filename>. Remember to run <command>kill -" @@ -70018,7 +70120,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47516 +#: book.translate.xml:47137 msgid "" "If the <command>getty</command> process is running but the terminal still " "does not display a login prompt, or if it displays a prompt but will not " @@ -70033,7 +70135,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47530 +#: book.translate.xml:47151 msgid "" "If garbage appears instead of a login prompt, make sure the terminal and " "FreeBSD agree on the <acronym>bps</acronym> rate and parity settings. Check " @@ -70043,7 +70145,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47538 +#: book.translate.xml:47159 msgid "" "If characters appear doubled and the password appears when typed, switch the " "terminal, or the terminal emulation software, from <quote>half duplex</" @@ -70051,31 +70153,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:47547 +#: book.translate.xml:47168 msgid "Dial-in Service" msgstr "撥入服務" #. (itstool) path: authorgroup/author -#: book.translate.xml:47550 +#: book.translate.xml:47171 msgid "" "<personname> <firstname>Guy</firstname> <surname>Helmer</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:47560 +#: book.translate.xml:47181 msgid "" "<personname> <firstname>Sean</firstname> <surname>Kelly</surname> </" "personname> <contrib>Additions by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:47570 +#: book.translate.xml:47191 msgid "<primary>dial-in service</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47572 +#: book.translate.xml:47193 msgid "" "Configuring a FreeBSD system for dial-in service is similar to configuring " "terminals, except that modems are used instead of terminal devices. FreeBSD " @@ -70083,7 +70185,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47577 +#: book.translate.xml:47198 msgid "" "External modems are more convenient because they often can be configured via " "parameters stored in non-volatile <acronym>RAM</acronym> and they usually " @@ -70093,7 +70195,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47584 +#: book.translate.xml:47205 msgid "" "Internal modems usually lack non-volatile <acronym>RAM</acronym>, so their " "configuration may be limited to setting <acronym>DIP</acronym> switches. If " @@ -70102,19 +70204,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:47590 +#: book.translate.xml:47211 msgid "<primary>modem</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47592 +#: book.translate.xml:47213 msgid "" "When using an external modem, a proper cable is needed. A standard " "<acronym>RS-232C</acronym> serial cable should suffice." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47596 +#: book.translate.xml:47217 msgid "" "FreeBSD needs the <acronym>RTS</acronym> and <acronym>CTS</acronym> signals " "for flow control at speeds above 2400 bps, the <acronym>CD</acronym> signal " @@ -70127,7 +70229,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47606 +#: book.translate.xml:47227 msgid "" "Like other <trademark class=\"registered\">UNIX</trademark>-like operating " "systems, FreeBSD uses the hardware signals to find out when a call has been " @@ -70137,7 +70239,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47612 +#: book.translate.xml:47233 msgid "" "FreeBSD supports the <acronym>NS8250</acronym>, <acronym>NS16450</acronym>, " "<acronym>NS16550</acronym>, and <acronym>NS16550A</acronym>-based " @@ -70153,7 +70255,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:47627 +#: book.translate.xml:47248 msgid "" "The rest of this section demonstrates how to configure a modem to receive " "incoming connections, how to communicate with the modem, and offers some " @@ -70161,17 +70263,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:47632 +#: book.translate.xml:47253 msgid "Modem Configuration" msgstr "數據機設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47634 +#: book.translate.xml:47255 msgid "<primary>getty</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47635 +#: book.translate.xml:47256 msgid "" "As with terminals, <command>init</command> spawns a <command>getty</command> " "process for each configured serial port used for dial-in connections. When a " @@ -70189,12 +70291,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47652 +#: book.translate.xml:47273 msgid "<primary><command>/usr/bin/login</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47656 +#: book.translate.xml:47277 msgid "" "There are two schools of thought regarding dial-up modems. One configuration " "method is to set the modems and systems so that no matter at what speed a " @@ -70207,7 +70309,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47668 +#: book.translate.xml:47289 msgid "" "The second method is to configure the <acronym>RS-232</acronym> interface to " "vary its speed based on the remote user's connection speed. Because " @@ -70225,7 +70327,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47686 +#: book.translate.xml:47307 msgid "" "When locking a modem's data communications rate at a particular speed, no " "changes to <filename>/etc/gettytab</filename> should be needed. However, for " @@ -70242,7 +70344,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47703 +#: book.translate.xml:47324 #, no-wrap msgid "" "#\n" @@ -70261,14 +70363,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47717 +#: book.translate.xml:47338 msgid "" "For a 28.8 Kbps modem, or to take advantage of compression on a 14.4 Kbps " "modem, use a higher communications rate, as seen in this example:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47721 +#: book.translate.xml:47342 #, no-wrap msgid "" "#\n" @@ -70288,7 +70390,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47736 +#: book.translate.xml:47357 msgid "" "For a slow <acronym>CPU</acronym> or a heavily loaded system without 16550A-" "based serial ports, this configuration may produce <errorname>sio</" @@ -70296,12 +70398,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:47741 +#: book.translate.xml:47362 msgid "<primary><filename>/etc/ttys</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47745 +#: book.translate.xml:47366 msgid "" "The configuration of <filename>/etc/ttys</filename> is similar to <xref " "linkend=\"ex-etc-ttys\"/>, but a different argument is passed to " @@ -70311,13 +70413,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47752 +#: book.translate.xml:47373 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty <replaceable>xxx</replaceable>\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47754 +#: book.translate.xml:47375 msgid "" "The <literal>dialup</literal> terminal type can be changed. For example, " "setting <literal>vt102</literal> as the default terminal type allows users " @@ -70325,7 +70427,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47760 +#: book.translate.xml:47381 msgid "" "For a locked-speed configuration, specify the speed with a valid type listed " "in <filename>/etc/gettytab</filename>. This example is for a modem whose " @@ -70333,13 +70435,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47765 +#: book.translate.xml:47386 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty std.<replaceable>19200</replaceable>\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47767 +#: book.translate.xml:47388 msgid "" "In a matching-speed configuration, the entry needs to reference the " "appropriate beginning <quote>auto-baud</quote> entry in <filename>/etc/" @@ -70348,20 +70450,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:47773 +#: book.translate.xml:47394 #, no-wrap msgid "ttyu0 \"/usr/libexec/getty V19200\" dialup on" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47775 +#: book.translate.xml:47396 msgid "" "After editing <filename>/etc/ttys</filename>, wait until the modem is " "properly configured and connected before signaling <command>init</command>:" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47786 +#: book.translate.xml:47407 msgid "" "High-speed modems, like <acronym>V.32</acronym>, <acronym>V.32bis</acronym>, " "and <acronym>V.34</acronym> modems, use hardware (<literal>RTS/CTS</" @@ -70372,7 +70474,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47794 +#: book.translate.xml:47415 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>stty -f /dev/ttyu1.init crtscts</userinput>\n" @@ -70380,14 +70482,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47949 +#: book.translate.xml:47570 msgid "" "This section provides a few tips for troubleshooting a dial-up modem that " "will not connect to a FreeBSD system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47952 +#: book.translate.xml:47573 msgid "" "Hook up the modem to the FreeBSD system and boot the system. If the modem " "has status indication lights, watch to see whether the modem's <acronym>DTR</" @@ -70398,7 +70500,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47961 +#: book.translate.xml:47582 msgid "" "If the <acronym>DTR</acronym> indicator does not light, login to the FreeBSD " "system through the console and type <command>ps ax</command> to see if " @@ -70406,13 +70508,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:47966 +#: book.translate.xml:47587 #, no-wrap msgid " 114 ?? I 0:00.10 /usr/libexec/getty V19200 <replaceable>ttyu0</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47968 +#: book.translate.xml:47589 msgid "" "If the second column contains a <literal>d0</literal> instead of a " "<literal>??</literal> and the modem has not accepted a call yet, this means " @@ -70424,7 +70526,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47977 +#: book.translate.xml:47598 msgid "" "If no <command>getty</command> processes are waiting to open the port, " "double-check that the entry for the port is correct in <filename>/etc/ttys</" @@ -70434,7 +70536,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47984 +#: book.translate.xml:47605 msgid "" "Next, try dialing into the system. Be sure to use 8 bits, no parity, and 1 " "stop bit on the remote system. If a prompt does not appear right away, or " @@ -70445,14 +70547,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:47993 +#: book.translate.xml:47614 msgid "" "If there is still no <prompt>login:</prompt> prompt, check <filename>/etc/" "gettytab</filename> again and double-check that:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:47999 +#: book.translate.xml:47620 msgid "" "The initial capability name specified in the entry in <filename>/etc/ttys</" "filename> matches the name of a capability in <filename>/etc/gettytab</" @@ -70460,21 +70562,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48005 +#: book.translate.xml:47626 msgid "" "Each <literal>nx=</literal> entry matches another <filename>gettytab</" "filename> capability name." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48010 +#: book.translate.xml:47631 msgid "" "Each <literal>tc=</literal> entry matches another <filename>gettytab</" "filename> capability name." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48015 +#: book.translate.xml:47636 msgid "" "If the modem on the FreeBSD system will not answer, make sure that the modem " "is configured to answer the phone when <acronym>DTR</acronym> is asserted. " @@ -70483,7 +70585,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48022 +#: book.translate.xml:47643 msgid "" "If it still does not work, try sending an email to the <link xlink:href=" "\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-questions\">FreeBSD " @@ -70491,17 +70593,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:48029 +#: book.translate.xml:47650 msgid "Dial-out Service" msgstr "撥出服務" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48031 +#: book.translate.xml:47652 msgid "<primary>dial-out service</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48033 +#: book.translate.xml:47654 msgid "" "The following are tips for getting the host to connect over the modem to " "another computer. This is appropriate for establishing a terminal session " @@ -70509,7 +70611,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48037 +#: book.translate.xml:47658 msgid "" "This kind of connection can be helpful to get a file on the Internet if " "there are problems using PPP. If PPP is not working, use the terminal " @@ -70518,19 +70620,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48043 +#: book.translate.xml:47664 msgid "Using a Stock Hayes Modem" msgstr "使用 Stock Hayes 數據機" #. (itstool) path: sect2/para -#: book.translate.xml:48045 +#: book.translate.xml:47666 msgid "" "A generic Hayes dialer is built into <command>tip</command>. Use " "<literal>at=hayes</literal> in <filename>/etc/remote</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48049 +#: book.translate.xml:47670 msgid "" "The Hayes driver is not smart enough to recognize some of the advanced " "features of newer modems messages like <literal>BUSY</literal>, <literal>NO " @@ -70540,7 +70642,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48056 +#: book.translate.xml:47677 msgid "" "The dial timeout for <command>tip</command> is 60 seconds. The modem should " "use something less, or else <command>tip</command> will think there is a " @@ -70548,17 +70650,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48063 +#: book.translate.xml:47684 msgid "Using <literal>AT</literal> Commands" msgstr "使用 <literal>AT</literal> 指令" #. (itstool) path: sect2/indexterm -#: book.translate.xml:48065 +#: book.translate.xml:47686 msgid "<primary><filename>/etc/remote</filename></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48068 +#: book.translate.xml:47689 msgid "" "Create a <quote>direct</quote> entry in <filename>/etc/remote</filename>. " "For example, if the modem is hooked up to the first serial port, <filename>/" @@ -70566,13 +70668,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48074 +#: book.translate.xml:47695 #, no-wrap msgid "cuau0:dv=/dev/cuau0:br#19200:pa=none" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48076 +#: book.translate.xml:47697 msgid "" "Use the highest <acronym>bps</acronym> rate the modem supports in the " "<literal>br</literal> capability. Then, type <command>tip cuau0</command> to " @@ -70580,20 +70682,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48080 +#: book.translate.xml:47701 msgid "" "Or, use <command>cu</command> as <systemitem class=\"username\">root</" "systemitem> with the following command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48083 +#: book.translate.xml:47704 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l<replaceable>line</replaceable> -s<replaceable>speed</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48085 +#: book.translate.xml:47706 msgid "" "<replaceable>line</replaceable> is the serial port, such as <filename>/dev/" "cuau0</filename>, and <replaceable>speed</replaceable> is the speed, such as " @@ -70602,12 +70704,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48093 +#: book.translate.xml:47714 msgid "The <literal>@</literal> Sign Does Not Work" msgstr "<literal>@</literal> 符號無法運作" #. (itstool) path: sect2/para -#: book.translate.xml:48095 +#: book.translate.xml:47716 msgid "" "The <literal>@</literal> sign in the phone number capability tells " "<command>tip</command> to look in <filename>/etc/phones</filename> for a " @@ -70617,25 +70719,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48102 +#: book.translate.xml:47723 #, no-wrap msgid "pn=\\@" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48106 +#: book.translate.xml:47727 msgid "Dialing from the Command Line" msgstr "從指令列撥號" #. (itstool) path: sect2/para -#: book.translate.xml:48108 +#: book.translate.xml:47729 msgid "" "Put a <quote>generic</quote> entry in <filename>/etc/remote</filename>. For " "example:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48111 +#: book.translate.xml:47732 #, no-wrap msgid "" "tip115200|Dial any phone number at 115200 bps:\\\n" @@ -70645,25 +70747,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48116 +#: book.translate.xml:47737 msgid "This should now work:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48118 +#: book.translate.xml:47739 #, no-wrap msgid "<prompt>#</prompt> <userinput>tip -115200 5551234</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48120 +#: book.translate.xml:47741 msgid "" "Users who prefer <command>cu</command> over <command>tip</command>, can use " "a generic <literal>cu</literal> entry:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48124 +#: book.translate.xml:47745 #, no-wrap msgid "" "cu115200|Use cu to dial any number at 115200bps:\\\n" @@ -70671,23 +70773,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48127 +#: book.translate.xml:47748 msgid "and type:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:48129 +#: book.translate.xml:47750 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu 5551234 -s 115200</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48133 +#: book.translate.xml:47754 msgid "Setting the <acronym>bps</acronym> Rate" msgstr "設定 <acronym>bps</acronym> 率" #. (itstool) path: sect2/para -#: book.translate.xml:48135 +#: book.translate.xml:47756 msgid "" "Put in an entry for <literal>tip1200</literal> or <literal>cu1200</literal>, " "but go ahead and use whatever <acronym>bps</acronym> rate is appropriate " @@ -70697,12 +70799,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48145 +#: book.translate.xml:47766 msgid "Accessing a Number of Hosts Through a Terminal Server" msgstr "透過終端伺服器存取多個主機" #. (itstool) path: sect2/para -#: book.translate.xml:48148 +#: book.translate.xml:47769 msgid "" "Rather than waiting until connected and typing <command>CONNECT " "<replaceable>host</replaceable></command> each time, use <command>tip</" @@ -70714,7 +70816,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48158 +#: book.translate.xml:47779 #, no-wrap msgid "" "pain|pain.deep13.com|Forrester's machine:\\\n" @@ -70726,26 +70828,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48168 +#: book.translate.xml:47789 msgid "Using More Than One Line with <command>tip</command>" msgstr "在 <command>tip</command> 使用超過一行" #. (itstool) path: sect2/para -#: book.translate.xml:48171 +#: book.translate.xml:47792 msgid "" "This is often a problem where a university has several modem lines and " "several thousand students trying to use them." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48175 +#: book.translate.xml:47796 msgid "" "Make an entry in <filename>/etc/remote</filename> and use <literal>@</" "literal> for the <literal>pn</literal> capability:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48179 +#: book.translate.xml:47800 #, no-wrap msgid "" "big-university:\\\n" @@ -70755,12 +70857,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48184 +#: book.translate.xml:47805 msgid "Then, list the phone numbers in <filename>/etc/phones</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48187 +#: book.translate.xml:47808 #, no-wrap msgid "" "big-university 5551111\n" @@ -70770,7 +70872,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48192 +#: book.translate.xml:47813 msgid "" "<command>tip</command> will try each number in the listed order, then give " "up. To keep retrying, run <command>tip</command> in a <literal>while</" @@ -70778,12 +70880,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48199 +#: book.translate.xml:47820 msgid "Using the Force Character" msgstr "使用強制字元" #. (itstool) path: sect2/para -#: book.translate.xml:48201 +#: book.translate.xml:47822 msgid "" "<keycombo action=\"simul\"> <keycap>Ctrl</keycap> <keycap>P</keycap> </" "keycombo> is the default <quote>force</quote> character, used to tell " @@ -70793,7 +70895,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48210 +#: book.translate.xml:47831 msgid "" "Type <command>~sforce=<replaceable>single-char</replaceable></command> " "followed by a newline. <replaceable>single-char</replaceable> is any single " @@ -70807,25 +70909,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48231 +#: book.translate.xml:47852 msgid "" "To change the force character, specify the following in <filename>~/.tiprc</" "filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48234 +#: book.translate.xml:47855 #, no-wrap msgid "force=<replaceable>single-char</replaceable>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48238 +#: book.translate.xml:47859 msgid "Upper Case Characters" msgstr "大寫字元" #. (itstool) path: sect2/para -#: book.translate.xml:48240 +#: book.translate.xml:47861 msgid "" "This happens when <keycombo action=\"simul\"> <keycap>Ctrl</keycap> " "<keycap>A</keycap> </keycombo> is pressed, which is <command>tip</command>'s " @@ -70836,7 +70938,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48251 +#: book.translate.xml:47872 msgid "" "Here is a sample <filename>~/.tiprc</filename> for <application>Emacs</" "application> users who need to type <keycombo action=\"simul\"> " @@ -70845,7 +70947,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48261 +#: book.translate.xml:47882 #, no-wrap msgid "" "force=^^\n" @@ -70853,19 +70955,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48264 +#: book.translate.xml:47885 msgid "" "The <literal>^^</literal> is <keycombo action=\"simul\"> <keycap>Shift</" "keycap><keycap>Ctrl</keycap><keycap>6</keycap> </keycombo>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48272 +#: book.translate.xml:47893 msgid "File Transfers with <command>tip</command>" msgstr "使用 <command>tip</command> 傳輸檔案" #. (itstool) path: sect2/para -#: book.translate.xml:48274 +#: book.translate.xml:47895 msgid "" "When talking to another <trademark class=\"registered\">UNIX</trademark>-" "like operating system, files can be sent and received using <command>~p</" @@ -70875,40 +70977,40 @@ msgid "" msgstr "" #. (itstool) path: sect2/cmdsynopsis -#: book.translate.xml:48280 +#: book.translate.xml:47901 msgid "" "<command>~p</command> <arg choice=\"plain\">local-file</arg> <arg choice=" "\"opt\">remote-file</arg>" msgstr "" #. (itstool) path: sect2/cmdsynopsis -#: book.translate.xml:48286 +#: book.translate.xml:47907 msgid "" "<command>~t</command> <arg choice=\"plain\">remote-file</arg> <arg choice=" "\"opt\">local-file</arg>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48292 +#: book.translate.xml:47913 msgid "" "There is no error checking, so another protocol, like zmodem, should " "probably be used." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48297 +#: book.translate.xml:47918 msgid "Using <application>zmodem</application> with <command>tip</command>?" msgstr "在 <application>zmodem</application> 使用 <command>tip</command>?" #. (itstool) path: sect2/para -#: book.translate.xml:48300 +#: book.translate.xml:47921 msgid "" "To receive files, start the sending program on the remote end. Then, type " "<command>~C rz</command> to begin receiving them locally." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48304 +#: book.translate.xml:47925 msgid "" "To send files, start the receiving program on the remote end. Then, type " "<command>~C sz <replaceable>files</replaceable></command> to send them to " @@ -70916,31 +71018,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:48313 +#: book.translate.xml:47934 msgid "Setting Up the Serial Console" msgstr "設定序列 Console" #. (itstool) path: authorgroup/author -#: book.translate.xml:48316 +#: book.translate.xml:47937 msgid "" "<personname> <firstname>Kazutaka</firstname> <surname>YOKOTA</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:48326 +#: book.translate.xml:47947 msgid "" "<personname> <firstname>Bill</firstname> <surname>Paul</surname> </" "personname> <contrib>Based on a document by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48336 +#: book.translate.xml:47957 msgid "<primary>serial console</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48338 +#: book.translate.xml:47959 msgid "" "FreeBSD has the ability to boot a system with a dumb terminal on a serial " "port as a console. This configuration is useful for system administrators " @@ -70949,7 +71051,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48345 +#: book.translate.xml:47966 msgid "" "As described in <xref linkend=\"boot\"/>, FreeBSD employs a three stage " "bootstrap. The first two stages are in the boot block code which is stored " @@ -70958,19 +71060,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48351 +#: book.translate.xml:47972 msgid "" "In order to set up booting from a serial console, the boot block code, the " "boot loader code, and the kernel need to be configured." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48356 +#: book.translate.xml:47977 msgid "Quick Serial Console Configuration" msgstr "快速序列 Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:48358 +#: book.translate.xml:47979 msgid "" "This section provides a fast overview of setting up the serial console. This " "procedure can be used when the dumb terminal is connected to <filename>COM1</" @@ -70978,32 +71080,32 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:48363 +#: book.translate.xml:47984 msgid "Configuring a Serial Console on <filename>COM1</filename>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48367 +#: book.translate.xml:47988 msgid "" "Connect the serial cable to <filename>COM1</filename> and the controlling " "terminal." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48373 +#: book.translate.xml:47994 msgid "" "To configure boot messages to display on the serial console, issue the " "following command as the superuser:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:48377 +#: book.translate.xml:47998 #, no-wrap msgid "<prompt>#</prompt> echo 'console=\"comconsole\"' >> /boot/loader.conf" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48381 +#: book.translate.xml:48002 msgid "" "Edit <filename>/etc/ttys</filename> and change <literal>off</literal> to " "<literal>on</literal> and <literal>dialup</literal> to <literal>vt100</" @@ -71013,41 +71115,41 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48390 +#: book.translate.xml:48011 msgid "Reboot the system to see if the changes took effect." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48396 +#: book.translate.xml:48017 msgid "" "If a different configuration is required, see the next section for a more in-" "depth configuration explanation." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48401 +#: book.translate.xml:48022 msgid "In-Depth Serial Console Configuration" msgstr "深入序列 Console 設定" #. (itstool) path: sect2/para -#: book.translate.xml:48403 +#: book.translate.xml:48024 msgid "" "This section provides a more detailed explanation of the steps needed to " "setup a serial console in FreeBSD." msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:48407 +#: book.translate.xml:48028 msgid "Configuring a Serial Console" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48410 +#: book.translate.xml:48031 msgid "Prepare a serial cable." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48414 +#: book.translate.xml:48035 msgid "" "Use either a null-modem cable or a standard serial cable and a null-modem " "adapter. See <xref linkend=\"term-cables-null\"/> for a discussion on serial " @@ -71055,12 +71157,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48420 +#: book.translate.xml:48041 msgid "Unplug the keyboard." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48422 +#: book.translate.xml:48043 msgid "" "Many systems probe for the keyboard during the Power-On Self-Test " "(<acronym>POST</acronym>) and will generate an error if the keyboard is not " @@ -71068,14 +71170,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48428 +#: book.translate.xml:48049 msgid "" "If the computer complains about the error, but boots anyway, no further " "configuration is needed." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48431 +#: book.translate.xml:48052 msgid "" "If the computer refuses to boot without a keyboard attached, configure the " "<acronym>BIOS</acronym> so that it ignores this error. Consult the " @@ -71083,7 +71185,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:48437 +#: book.translate.xml:48058 msgid "" "Try setting the keyboard to <quote>Not installed</quote> in the " "<acronym>BIOS</acronym>. This setting tells the <acronym>BIOS</acronym> not " @@ -71095,7 +71197,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48448 +#: book.translate.xml:48069 msgid "" "If the system has a <trademark class=\"registered\">PS/2</trademark> mouse, " "unplug it as well. <trademark class=\"registered\">PS/2</trademark> mice " @@ -71104,7 +71206,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48454 +#: book.translate.xml:48075 msgid "" "While most systems will boot without a keyboard, quite a few will not boot " "without a graphics adapter. Some systems can be configured to boot with no " @@ -71117,7 +71219,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48469 +#: book.translate.xml:48090 msgid "" "Plug a dumb terminal, an old computer with a modem program, or the serial " "port on another <trademark class=\"registered\">UNIX</trademark> box into " @@ -71125,7 +71227,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48475 +#: book.translate.xml:48096 msgid "" "Add the appropriate <literal>hint.sio.*</literal> entries to <filename>/boot/" "device.hints</filename> for the serial port. Some multi-port cards also " @@ -71136,14 +71238,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48484 +#: book.translate.xml:48105 msgid "" "Create <filename>boot.config</filename> in the root directory of the " "<literal>a</literal> partition on the boot drive." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48488 +#: book.translate.xml:48109 msgid "" "This file instructs the boot block code how to boot the system. In order to " "activate the serial console, one or more of the following options are " @@ -71152,12 +71254,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:48496 book.translate.xml:48605 +#: book.translate.xml:48117 book.translate.xml:48226 msgid "<option>-h</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48499 +#: book.translate.xml:48120 msgid "" "Toggles between the internal and serial consoles. Use this to switch console " "devices. For instance, to boot from the internal (video) console, use " @@ -71169,12 +71271,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: row/entry -#: book.translate.xml:48512 book.translate.xml:48610 +#: book.translate.xml:48133 book.translate.xml:48231 msgid "<option>-D</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48515 +#: book.translate.xml:48136 msgid "" "Toggles between the single and dual console configurations. In the single " "configuration, the console will be either the internal console (video " @@ -71187,19 +71289,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:48533 +#: book.translate.xml:48154 msgid "<option>-P</option>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48536 +#: book.translate.xml:48157 msgid "" "Makes the boot block probe the keyboard. If no keyboard is found, the " "<option>-D</option> and <option>-h</option> options are automatically set." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48542 +#: book.translate.xml:48163 msgid "" "Due to space constraints in the current version of the boot blocks, <option>-" "P</option> is capable of detecting extended keyboards only. Keyboards with " @@ -71209,7 +71311,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48555 +#: book.translate.xml:48176 msgid "" "Use either <option>-P</option> to select the console automatically or " "<option>-h</option> to activate the serial console. Refer to " @@ -71219,7 +71321,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48560 +#: book.translate.xml:48181 msgid "" "The options, except for <option>-P</option>, are passed to the boot loader. " "The boot loader will determine whether the internal video or the serial port " @@ -71231,19 +71333,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48573 +#: book.translate.xml:48194 msgid "Boot the machine." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48575 +#: book.translate.xml:48196 msgid "" "When FreeBSD starts, the boot blocks echo the contents of <filename>/boot." "config</filename> to the console. For example:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:48579 +#: book.translate.xml:48200 #, no-wrap msgid "" "/boot.config: -P\n" @@ -71251,7 +71353,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48582 +#: book.translate.xml:48203 msgid "" "The second line appears only if <option>-P</option> is in <filename>/boot." "config</filename> and indicates the presence or absence of the keyboard. " @@ -71260,52 +71362,52 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48593 +#: book.translate.xml:48214 msgid "Options" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48594 +#: book.translate.xml:48215 msgid "Message goes to" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48600 +#: book.translate.xml:48221 msgid "none" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48601 book.translate.xml:48621 +#: book.translate.xml:48222 book.translate.xml:48242 msgid "internal console" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48606 book.translate.xml:48626 +#: book.translate.xml:48227 book.translate.xml:48247 msgid "serial console" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48611 book.translate.xml:48616 +#: book.translate.xml:48232 book.translate.xml:48237 msgid "serial and internal consoles" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48615 +#: book.translate.xml:48236 msgid "<option>-Dh</option>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48620 +#: book.translate.xml:48241 msgid "<option>-P</option>, keyboard present" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:48625 +#: book.translate.xml:48246 msgid "<option>-P</option>, keyboard absent" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48632 +#: book.translate.xml:48253 msgid "" "After the message, there will be a small pause before the boot blocks " "continue loading the boot loader and before any further messages are printed " @@ -71315,7 +71417,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48639 +#: book.translate.xml:48260 msgid "" "Press any key, other than <keycap>Enter</keycap>, at the console to " "interrupt the boot process. The boot blocks will then prompt for further " @@ -71323,7 +71425,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48647 +#: book.translate.xml:48268 msgid "" "Verify that the above message appears on either the serial or internal " "console, or both, according to the options in <filename>/boot.config</" @@ -71332,7 +71434,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:48654 +#: book.translate.xml:48275 msgid "" "If there is no prompt on the serial terminal, something is wrong with the " "settings. Enter <option>-h</option> then <keycap>Enter</keycap> or " @@ -71342,7 +71444,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48664 +#: book.translate.xml:48285 msgid "" "During the third stage of the boot process, one can still switch between the " "internal console and the serial console by setting appropriate environment " @@ -71351,7 +71453,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48671 +#: book.translate.xml:48292 msgid "" "This line in <filename>/boot/loader.conf</filename> or <filename>/boot/" "loader.conf.local</filename> configures the boot loader and the kernel to " @@ -71360,13 +71462,13 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:48677 +#: book.translate.xml:48298 #, no-wrap msgid "console=\"comconsole\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48679 +#: book.translate.xml:48300 msgid "" "That line should be the first line of <filename>/boot/loader.conf</filename> " "so that boot messages are displayed on the serial console as early as " @@ -71374,7 +71476,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48684 +#: book.translate.xml:48305 msgid "" "If that line does not exist, or if it is set to <literal>console=\"vidconsole" "\"</literal>, the boot loader and the kernel will use whichever console is " @@ -71384,7 +71486,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48690 +#: book.translate.xml:48311 msgid "" "At the moment, the boot loader has no option equivalent to <option>-P</" "option> in the boot block, and there is no provision to automatically select " @@ -71393,7 +71495,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:48698 +#: book.translate.xml:48319 msgid "" "While it is not required, it is possible to provide a <command>login</" "command> prompt over the serial line. To configure this, edit the entry for " @@ -71403,12 +71505,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48709 +#: book.translate.xml:48330 msgid "Setting a Faster Serial Port Speed" msgstr "設定使用更快的序列埠速度" #. (itstool) path: sect2/para -#: book.translate.xml:48711 +#: book.translate.xml:48332 msgid "" "By default, the serial port settings are 9600 baud, 8 bits, no parity, and 1 " "stop bit. To change the default console speed, use one of the following " @@ -71416,7 +71518,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48717 +#: book.translate.xml:48338 msgid "" "Edit <filename>/etc/make.conf</filename> and set " "<varname>BOOT_COMCONSOLE_SPEED</varname> to the new console speed. Then, " @@ -71424,7 +71526,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:48722 +#: book.translate.xml:48343 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /sys/boot</userinput>\n" @@ -71434,7 +71536,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48727 +#: book.translate.xml:48348 msgid "" "If the serial console is configured in some other way than by booting with " "<option>-h</option>, or if the serial console used by the kernel is " @@ -71444,13 +71546,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:48734 +#: book.translate.xml:48355 #, no-wrap msgid "options CONSPEED=<replaceable>19200</replaceable>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48738 +#: book.translate.xml:48359 msgid "" "Add the <option>-S<replaceable>19200</replaceable></option> boot option to " "<filename>/boot.config</filename>, replacing <replaceable>19200</" @@ -71458,14 +71560,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48746 +#: book.translate.xml:48367 msgid "" "Add the following options to <filename>/boot/loader.conf</filename>. Replace " "<replaceable>115200</replaceable> with the speed to use." msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:48751 +#: book.translate.xml:48372 #, no-wrap msgid "" "boot_multicons=\"YES\"\n" @@ -71475,12 +71577,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48760 +#: book.translate.xml:48381 msgid "Entering the DDB Debugger from the Serial Line" msgstr "從序列線路 (Serial Line) 進入 DDB 除錯程式" #. (itstool) path: sect2/para -#: book.translate.xml:48762 +#: book.translate.xml:48383 msgid "" "To configure the ability to drop into the kernel debugger from the serial " "console, add the following options to a custom kernel configuration file and " @@ -71494,7 +71596,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48771 +#: book.translate.xml:48392 #, no-wrap msgid "" "options BREAK_TO_DEBUGGER\n" @@ -71502,18 +71604,18 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:48796 +#: book.translate.xml:48417 msgid "<acronym>PPP</acronym>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) id: book.translate.xml#ppp-ppp -#: book.translate.xml:48801 book.translate.xml:48828 +#: book.translate.xml:48422 book.translate.xml:48449 msgid "<primary><acronym>PPP</acronym></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48805 +#: book.translate.xml:48426 msgid "" "FreeBSD supports the Point-to-Point (<acronym>PPP</acronym>) protocol which " "can be used to establish a network or Internet connection using a dial-up " @@ -71525,13 +71627,13 @@ msgstr "" "為基礎的通訊服務。" #. (itstool) path: listitem/para -#: book.translate.xml:48814 +#: book.translate.xml:48435 msgid "" "How to configure, use, and troubleshoot a <acronym>PPP</acronym> connection." msgstr "如何設定、使用 <acronym>PPP</acronym> 連線及排除問題。" #. (itstool) path: listitem/para -#: book.translate.xml:48818 +#: book.translate.xml:48439 msgid "" "How to set up <acronym>PPP</acronym> over Ethernet (<acronym>PPPoE</" "acronym>)." @@ -71540,7 +71642,7 @@ msgstr "" "acronym>)。" #. (itstool) path: listitem/para -#: book.translate.xml:48822 +#: book.translate.xml:48443 msgid "" "How to set up <acronym>PPP</acronym> over <acronym>ATM</acronym> " "(<acronym>PPPoA</acronym>)." @@ -71549,31 +71651,31 @@ msgstr "" "(<acronym>PPPoA</acronym>)。" #. (itstool) path: sect1/indexterm -#: book.translate.xml:48831 book.translate.xml:50092 +#: book.translate.xml:48452 book.translate.xml:49713 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>over Ethernet</" "secondary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48840 book.translate.xml:61852 +#: book.translate.xml:48461 book.translate.xml:61474 msgid "Be familiar with basic network terminology." msgstr "熟悉基本網路術語。" #. (itstool) path: listitem/para -#: book.translate.xml:48843 +#: book.translate.xml:48464 msgid "" "Understand the basics and purpose of a dial-up connection and <acronym>PPP</" "acronym>." msgstr "了解撥號連線及 <acronym>PPP</acronym> 的基礎及目的。" #. (itstool) path: sect1/title -#: book.translate.xml:48884 +#: book.translate.xml:48505 msgid "Configuring <acronym>PPP</acronym>" msgstr "設定 <acronym>PPP</acronym>" #. (itstool) path: sect1/para -#: book.translate.xml:48886 +#: book.translate.xml:48507 msgid "" "FreeBSD provides built-in support for managing dial-up <acronym>PPP</" "acronym> connections using <citerefentry><refentrytitle>ppp</" @@ -71586,35 +71688,35 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48895 +#: book.translate.xml:48516 msgid "" "In order to use a <acronym>PPP</acronym> connection, the following items are " "needed:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48900 +#: book.translate.xml:48521 msgid "" "A dial-up account with an Internet Service Provider (<acronym>ISP</acronym>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48905 +#: book.translate.xml:48526 msgid "A dial-up modem." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48909 +#: book.translate.xml:48530 msgid "The dial-up number for the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48914 +#: book.translate.xml:48535 msgid "The login name and password assigned by the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48919 +#: book.translate.xml:48540 msgid "" "The <acronym>IP</acronym> address of one or more <acronym>DNS</acronym> " "servers. Normally, the <acronym>ISP</acronym> provides these addresses. If " @@ -71623,21 +71725,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48927 +#: book.translate.xml:48548 msgid "" "If any of the required information is missing, contact the <acronym>ISP</" "acronym>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48930 +#: book.translate.xml:48551 msgid "" "The following information may be supplied by the <acronym>ISP</acronym>, but " "is not necessary:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48935 +#: book.translate.xml:48556 msgid "" "The <acronym>IP</acronym> address of the default gateway. If this " "information is unknown, the <acronym>ISP</acronym> will automatically " @@ -71647,7 +71749,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48944 +#: book.translate.xml:48565 msgid "" "The subnet mask. If the <acronym>ISP</acronym> has not provided one, " "<systemitem class=\"netmask\">255.255.255.255</systemitem> will be used in " @@ -71657,12 +71759,12 @@ msgstr "" #. (itstool) path: listitem/indexterm #. (itstool) id: book.translate.xml#ppp-static-ip -#: book.translate.xml:48950 +#: book.translate.xml:48571 msgid "<primary>static <acronym>IP</acronym> address</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:48954 +#: book.translate.xml:48575 msgid "" "If the <acronym>ISP</acronym> has assigned a static <acronym>IP</acronym> " "address and hostname, it should be input into the configuration file. " @@ -71671,7 +71773,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:48962 +#: book.translate.xml:48583 msgid "" "The rest of this section demonstrates how to configure FreeBSD for common " "<acronym>PPP</acronym> connection scenarios. The required configuration file " @@ -71680,7 +71782,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48970 +#: book.translate.xml:48591 msgid "" "Throughout this section, many of the file examples display line numbers. " "These line numbers have been added to make it easier to follow the " @@ -71688,7 +71790,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:48975 +#: book.translate.xml:48596 msgid "" "When editing a configuration file, proper indentation is important. Lines " "that end in a <literal>:</literal> start in the first column (beginning of " @@ -71697,19 +71799,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:48982 book.translate.xml:51343 +#: book.translate.xml:48603 book.translate.xml:50964 msgid "Basic Configuration" msgstr "基礎設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:48984 +#: book.translate.xml:48605 msgid "" "<primary>PPP</primary> <secondary>with static <acronym>IP</acronym> " "addresses</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:48990 +#: book.translate.xml:48611 msgid "" "In order to configure a <acronym>PPP</acronym> connection, first edit " "<filename>/etc/ppp/ppp.conf</filename> with the dial-in information for the " @@ -71717,7 +71819,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:48995 +#: book.translate.xml:48616 #, no-wrap msgid "" "1 default:\n" @@ -71740,12 +71842,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49015 +#: book.translate.xml:48636 msgid "Line 1:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49018 +#: book.translate.xml:48639 msgid "" "Identifies the <literal>default</literal> entry. Commands in this entry " "(lines 2 through 9) are executed automatically when <command>ppp</command> " @@ -71753,30 +71855,30 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49026 +#: book.translate.xml:48647 msgid "Line 2:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49029 +#: book.translate.xml:48650 msgid "" "Enables verbose logging parameters for testing the connection. Once the " "configuration is working satisfactorily, this line should be reduced to:" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49034 +#: book.translate.xml:48655 #, no-wrap msgid "set log phase tun" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49040 +#: book.translate.xml:48661 msgid "Line 3:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49043 +#: book.translate.xml:48664 msgid "" "Displays the version of <citerefentry><refentrytitle>ppp</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to the <acronym>PPP</" @@ -71784,12 +71886,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49050 +#: book.translate.xml:48671 msgid "Line 4:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49053 +#: book.translate.xml:48674 msgid "" "Identifies the device to which the modem is connected, where <filename>COM1</" "filename> is <filename>/dev/cuau0</filename> and <filename>COM2</filename> " @@ -71797,24 +71899,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49062 +#: book.translate.xml:48683 msgid "Line 5:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49065 +#: book.translate.xml:48686 msgid "" "Sets the connection speed. If <literal>115200</literal> does not work on an " "older modem, try <literal>38400</literal> instead." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49072 +#: book.translate.xml:48693 msgid "Lines 6 & 7:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49075 +#: book.translate.xml:48696 msgid "" "The dial string written as an expect-send syntax. Refer to " "<citerefentry><refentrytitle>chat</refentrytitle><manvolnum>8</manvolnum></" @@ -71822,7 +71924,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49079 +#: book.translate.xml:48700 msgid "" "Note that this command continues onto the next line for readability. Any " "command in <filename>ppp.conf</filename> may do this if the last character " @@ -71830,22 +71932,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49088 +#: book.translate.xml:48709 msgid "Line 8:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49091 +#: book.translate.xml:48712 msgid "Sets the idle timeout for the link in seconds." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49097 +#: book.translate.xml:48718 msgid "Line 9:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49100 +#: book.translate.xml:48721 msgid "" "Instructs the peer to confirm the <acronym>DNS</acronym> settings. If the " "local network is running its own <acronym>DNS</acronym> server, this line " @@ -71854,12 +71956,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49110 +#: book.translate.xml:48731 msgid "Line 10:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49113 +#: book.translate.xml:48734 msgid "" "A blank line for readability. Blank lines are ignored by " "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -71867,12 +71969,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49119 +#: book.translate.xml:48740 msgid "Line 11:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49122 +#: book.translate.xml:48743 msgid "" "Identifies an entry called <literal>provider</literal>. This could be " "changed to the name of the <acronym>ISP</acronym> so that <option>load " @@ -71880,12 +71982,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49132 +#: book.translate.xml:48753 msgid "Line 12:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49135 +#: book.translate.xml:48756 msgid "" "Use the phone number for the <acronym>ISP</acronym>. Multiple phone numbers " "may be specified using the colon (<literal>:</literal>) or pipe character " @@ -71897,22 +71999,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49150 +#: book.translate.xml:48771 msgid "Lines 13 & 14:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49153 +#: book.translate.xml:48774 msgid "Use the user name and password for the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49159 book.translate.xml:49564 +#: book.translate.xml:48780 book.translate.xml:49185 msgid "Line 15:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49162 +#: book.translate.xml:48783 msgid "" "Sets the default idle timeout in seconds for the connection. In this " "example, the connection will be closed automatically after 300 seconds of " @@ -71920,12 +72022,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49171 +#: book.translate.xml:48792 msgid "Line 16:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49173 +#: book.translate.xml:48794 msgid "" "Sets the interface addresses. The values used depend upon whether a static " "<acronym>IP</acronym> address has been obtained from the <acronym>ISP</" @@ -71934,7 +72036,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49180 +#: book.translate.xml:48801 msgid "" "If the <acronym>ISP</acronym> has allocated a static <acronym>IP</acronym> " "address and default gateway, replace <replaceable>x.x.x.x</replaceable> with " @@ -71946,7 +72048,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49191 +#: book.translate.xml:48812 msgid "" "If the <acronym>IP</acronym> address changes whenever a connection is made, " "change this line to the following value. This tells " @@ -71957,18 +72059,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49198 +#: book.translate.xml:48819 #, no-wrap msgid "set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.255 0.0.0.0" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49204 +#: book.translate.xml:48825 msgid "Line 17:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49207 +#: book.translate.xml:48828 msgid "" "Keep this line as-is as it adds a default route to the gateway. The " "<literal>HISADDR</literal> will automatically be replaced with the gateway " @@ -71977,7 +72079,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49216 +#: book.translate.xml:48837 msgid "" "Depending upon whether <citerefentry><refentrytitle>ppp</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is started manually or " @@ -71992,7 +72094,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49230 +#: book.translate.xml:48851 #, no-wrap msgid "" "provider:\n" @@ -72000,7 +72102,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49233 +#: book.translate.xml:48854 msgid "" "This file is also needed when the default gateway address is <quote>guessed</" "quote> in a static <acronym>IP</acronym> address configuration. In this " @@ -72011,7 +72113,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49241 +#: book.translate.xml:48862 msgid "" "By default, <command>ppp</command> must be run as <systemitem class=" "\"username\">root</systemitem>. To change this default, add the account of " @@ -72020,7 +72122,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49247 +#: book.translate.xml:48868 msgid "" "Then, give the user access to one or more entries in <filename>/etc/ppp/ppp." "conf</filename> with <command>allow</command>. For example, to give " @@ -72030,39 +72132,39 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49256 +#: book.translate.xml:48877 #, no-wrap msgid "allow users <replaceable>fred mary</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49258 +#: book.translate.xml:48879 msgid "" "To give the specified users access to all entries, put that line in the " "<literal>default</literal> section instead." msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49468 +#: book.translate.xml:49089 msgid "<primary>NetBIOS</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49472 +#: book.translate.xml:49093 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>Microsoft extensions</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49477 +#: book.translate.xml:49098 msgid "" "It is possible to configure PPP to supply DNS and NetBIOS nameserver " "addresses on demand." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49480 +#: book.translate.xml:49101 msgid "" "To enable these extensions with <acronym>PPP</acronym> version 1.x, the " "following lines might be added to the relevant section of <filename>/etc/ppp/" @@ -72070,7 +72172,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49485 +#: book.translate.xml:49106 #, no-wrap msgid "" "enable msext\n" @@ -72079,12 +72181,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49489 +#: book.translate.xml:49110 msgid "And for <acronym>PPP</acronym> version 2 and above:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49492 +#: book.translate.xml:49113 #, no-wrap msgid "" "accept dns\n" @@ -72093,14 +72195,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49496 +#: book.translate.xml:49117 msgid "" "This will tell the clients the primary and secondary name server addresses, " "and a NetBIOS nameserver host." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49500 +#: book.translate.xml:49121 msgid "" "In version 2 and above, if the <literal>set dns</literal> line is omitted, " "<acronym>PPP</acronym> will use the values found in <filename>/etc/resolv." @@ -72108,22 +72210,22 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:49506 +#: book.translate.xml:49127 msgid "PAP and CHAP Authentication" msgstr "PAP 與 CHAP 認證" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49508 +#: book.translate.xml:49129 msgid "<primary>PAP</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49509 +#: book.translate.xml:49130 msgid "<primary>CHAP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49510 +#: book.translate.xml:49131 msgid "" "Some <acronym>ISP</acronym>s set their system up so that the authentication " "part of the connection is done using either of the PAP or CHAP " @@ -72133,7 +72235,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49518 +#: book.translate.xml:49139 msgid "" "PAP is less secure than CHAP, but security is not normally an issue here as " "passwords, although being sent as plain text with PAP, are being transmitted " @@ -72142,12 +72244,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49524 +#: book.translate.xml:49145 msgid "The following alterations must be made:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49527 +#: book.translate.xml:49148 #, no-wrap msgid "" "13 set authname <replaceable>MyUserName</replaceable>\n" @@ -72156,29 +72258,29 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49533 +#: book.translate.xml:49154 msgid "Line 13:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49536 +#: book.translate.xml:49157 msgid "" "This line specifies the PAP/CHAP user name. Insert the correct value for " "<replaceable>MyUserName</replaceable>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:49543 +#: book.translate.xml:49164 msgid "Line 14:" msgstr "" #. (itstool) path: para/indexterm -#: book.translate.xml:49546 +#: book.translate.xml:49167 msgid "<primary>password</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49545 +#: book.translate.xml:49166 msgid "" "This line specifies the PAP/CHAP password<_:indexterm-1/>. Insert the " "correct value for <replaceable>MyPassword</replaceable>. You may want to add " @@ -72186,26 +72288,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49551 +#: book.translate.xml:49172 #, no-wrap msgid "16 accept PAP" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:49555 +#: book.translate.xml:49176 #, no-wrap msgid "16 accept CHAP" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49557 +#: book.translate.xml:49178 msgid "" "to make it obvious that this is the intention, but PAP and CHAP are both " "accepted by default." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:49567 +#: book.translate.xml:49188 msgid "" "The <acronym>ISP</acronym> will not normally require a login to the server " "when using PAP or CHAP. Therefore, disable the <quote>set login</quote> " @@ -72213,17 +72315,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:49577 +#: book.translate.xml:49198 msgid "Using <acronym>PPP</acronym> Network Address Translation Capability" msgstr "使用 <acronym>PPP</acronym> 網路位址轉譯功能" #. (itstool) path: sect3/indexterm -#: book.translate.xml:49580 +#: book.translate.xml:49201 msgid "<primary><acronym>PPP</acronym></primary><secondary>NAT</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49584 +#: book.translate.xml:49205 msgid "" "PPP has ability to use internal NAT without kernel diverting capabilities. " "This functionality may be enabled by the following line in <filename>/etc/" @@ -72231,13 +72333,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49589 +#: book.translate.xml:49210 #, no-wrap msgid "nat enable yes" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49591 +#: book.translate.xml:49212 msgid "" "Alternatively, NAT may be enabled by command-line option <literal>-nat</" "literal>. There is also <filename>/etc/rc.conf</filename> knob named " @@ -72245,7 +72347,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49597 +#: book.translate.xml:49218 msgid "" "When using this feature, it may be useful to include the following " "<filename>/etc/ppp/ppp.conf</filename> options to enable incoming " @@ -72253,7 +72355,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49601 +#: book.translate.xml:49222 #, no-wrap msgid "" "nat port tcp 10.0.0.2:ftp ftp\n" @@ -72261,56 +72363,56 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:49604 +#: book.translate.xml:49225 msgid "or do not trust the outside at all" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:49606 +#: book.translate.xml:49227 #, no-wrap msgid "nat deny_incoming yes" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49611 +#: book.translate.xml:49232 msgid "Final System Configuration" msgstr "最終系統設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49613 +#: book.translate.xml:49234 msgid "" "<primary><acronym>PPP</acronym></primary><secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49617 +#: book.translate.xml:49238 msgid "" "While <command>ppp</command> is now configured, some edits still need to be " "made to <filename>/etc/rc.conf</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49621 +#: book.translate.xml:49242 msgid "" "Working from the top down in this file, make sure the <literal>hostname=</" "literal> line is set:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49624 +#: book.translate.xml:49245 #, no-wrap msgid "hostname=\"foo.example.com\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49626 +#: book.translate.xml:49247 msgid "" "If the <acronym>ISP</acronym> has supplied a static <acronym>IP</acronym> " "address and name, use this name as the host name." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49630 +#: book.translate.xml:49251 msgid "" "Look for the <literal>network_interfaces</literal> variable. To configure " "the system to dial the <acronym>ISP</acronym> on demand, make sure the " @@ -72318,7 +72420,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49636 +#: book.translate.xml:49257 #, no-wrap msgid "" "network_interfaces=\"lo0 tun0\"\n" @@ -72326,7 +72428,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49640 +#: book.translate.xml:49261 msgid "" "The <literal>ifconfig_tun0</literal> variable should be empty, and a file " "called <filename>/etc/start_if.tun0</filename> should be created. This file " @@ -72334,13 +72436,13 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:49645 +#: book.translate.xml:49266 #, no-wrap msgid "ppp -auto mysystem" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:49647 +#: book.translate.xml:49268 msgid "" "This script is executed at network configuration time, starting the ppp " "daemon in automatic mode. If this machine acts as a gateway, consider " @@ -72349,25 +72451,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49654 +#: book.translate.xml:49275 msgid "" "Make sure that the router program is set to <literal>NO</literal> with the " "following line in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49658 +#: book.translate.xml:49279 #, no-wrap msgid "router_enable=\"NO\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49660 +#: book.translate.xml:49281 msgid "<primary><application>routed</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49664 +#: book.translate.xml:49285 msgid "" "It is important that the <command>routed</command> daemon is not started, as " "<command>routed</command> tends to delete the default routing table entries " @@ -72375,7 +72477,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49669 +#: book.translate.xml:49290 msgid "" "It is probably a good idea to ensure that the <literal>sendmail_flags</" "literal> line does not include the <option>-q</option> option, otherwise " @@ -72384,18 +72486,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49676 +#: book.translate.xml:49297 #, no-wrap msgid "sendmail_flags=\"-bd\"" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49678 +#: book.translate.xml:49299 msgid "<primary><application>sendmail</application></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49681 +#: book.translate.xml:49302 msgid "" "The downside is that <command>sendmail</command> is forced to re-examine the " "mail queue whenever the ppp link. To automate this, include <command>!bg</" @@ -72403,7 +72505,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49686 +#: book.translate.xml:49307 #, no-wrap msgid "" "1 provider:\n" @@ -72413,36 +72515,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49691 book.translate.xml:51368 +#: book.translate.xml:49312 book.translate.xml:50989 msgid "<primary>SMTP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49695 +#: book.translate.xml:49316 msgid "" "An alternative is to set up a <quote>dfilter</quote> to block SMTP traffic. " "Refer to the sample files for further details." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49701 +#: book.translate.xml:49322 msgid "Using <command>ppp</command>" msgstr "使用 <command>ppp</command>" #. (itstool) path: sect2/para -#: book.translate.xml:49703 +#: book.translate.xml:49324 msgid "" "All that is left is to reboot the machine. After rebooting, either type:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49706 book.translate.xml:49899 +#: book.translate.xml:49327 book.translate.xml:49520 #, no-wrap msgid "<prompt>#</prompt> <userinput>ppp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49708 +#: book.translate.xml:49329 msgid "" "and then <command>dial provider</command> to start the <acronym>PPP</" "acronym> session, or, to configure <command>ppp</command> to establish " @@ -72451,13 +72553,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49715 +#: book.translate.xml:49336 #, no-wrap msgid "<prompt>#</prompt> <userinput>ppp -auto provider</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49717 +#: book.translate.xml:49338 msgid "" "It is possible to talk to the <command>ppp</command> program while it is " "running in the background, but only if a suitable diagnostic port has been " @@ -72465,13 +72567,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49722 +#: book.translate.xml:49343 #, no-wrap msgid "set server /var/run/ppp-tun<replaceable>%d</replaceable> DiagnosticPassword 0177" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49724 +#: book.translate.xml:49345 msgid "" "This will tell PPP to listen to the specified <trademark class=\"registered" "\">UNIX</trademark> domain socket, asking clients for the specified password " @@ -72480,7 +72582,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49731 +#: book.translate.xml:49352 msgid "" "Once a socket has been set up, the <citerefentry><refentrytitle>pppctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> program may be used in " @@ -72488,27 +72590,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49737 +#: book.translate.xml:49358 msgid "Configuring Dial-in Services" msgstr "設定撥入服務" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49739 +#: book.translate.xml:49360 msgid "<primary><command>mgetty</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49743 +#: book.translate.xml:49364 msgid "<primary>AutoPPP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:49747 +#: book.translate.xml:49368 msgid "<primary>LCP</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49750 +#: book.translate.xml:49371 msgid "" "<xref linkend=\"dialup\"/> provides a good description on enabling dial-up " "services using <citerefentry><refentrytitle>getty</" @@ -72516,7 +72618,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49753 +#: book.translate.xml:49374 msgid "" "An alternative to <command>getty</command> is <package>comms/mgetty+sendfax</" "package> port), a smarter version of <command>getty</command> designed with " @@ -72524,7 +72626,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49758 +#: book.translate.xml:49379 msgid "" "The advantages of using <command>mgetty</command> is that it actively " "<emphasis>talks</emphasis> to modems, meaning if port is turned off in " @@ -72532,7 +72634,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49764 +#: book.translate.xml:49385 msgid "" "Later versions of <command>mgetty</command> (from 0.99beta onwards) also " "support the automatic detection of <acronym>PPP</acronym> streams, allowing " @@ -72540,7 +72642,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49769 +#: book.translate.xml:49390 msgid "" "Refer to <link xlink:href=\"http://mgetty.greenie.net/doc/mgetty_toc.html" "\">http://mgetty.greenie.net/doc/mgetty_toc.html</link> for more information " @@ -72548,7 +72650,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49772 +#: book.translate.xml:49393 msgid "" "By default the <package>comms/mgetty+sendfax</package> port comes with the " "<literal>AUTO_PPP</literal> option enabled allowing <command>mgetty</" @@ -72559,41 +72661,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49781 +#: book.translate.xml:49402 msgid "" "This section assumes the user has successfully compiled, and installed the " "<package>comms/mgetty+sendfax</package> port on his system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49786 +#: book.translate.xml:49407 msgid "" "Ensure that <filename>/usr/local/etc/mgetty+sendfax/login.config</filename> " "has the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49790 +#: book.translate.xml:49411 #, no-wrap msgid "/AutoPPP/ - - /etc/ppp/ppp-pap-dialup" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49792 +#: book.translate.xml:49413 msgid "" "This tells <command>mgetty</command> to run <filename>ppp-pap-dialup</" "filename> for detected <acronym>PPP</acronym> connections." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49796 +#: book.translate.xml:49417 msgid "" "Create an executable file called <filename>/etc/ppp/ppp-pap-dialup</" "filename> containing the following:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49800 +#: book.translate.xml:49421 #, no-wrap msgid "" "#!/bin/sh\n" @@ -72601,7 +72703,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49803 +#: book.translate.xml:49424 msgid "" "For each dial-up line enabled in <filename>/etc/ttys</filename>, create a " "corresponding entry in <filename>/etc/ppp/ppp.conf</filename>. This will " @@ -72609,7 +72711,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49809 +#: book.translate.xml:49430 #, no-wrap msgid "" "pap:\n" @@ -72619,7 +72721,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49814 +#: book.translate.xml:49435 msgid "" "Each user logging in with this method will need to have a username/password " "in <filename>/etc/ppp/ppp.secret</filename>, or alternatively add the " @@ -72628,13 +72730,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49821 +#: book.translate.xml:49442 #, no-wrap msgid "enable passwdauth" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49823 +#: book.translate.xml:49444 msgid "" "To assign some users a static <acronym>IP</acronym> number, specify the " "number as the third argument in <filename>/etc/ppp/ppp.secret</filename>. " @@ -72643,19 +72745,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:49843 +#: book.translate.xml:49464 msgid "Troubleshooting <acronym>PPP</acronym> Connections" msgstr "<acronym>PPP</acronym> 連線疑難排解" #. (itstool) path: sect1/indexterm -#: book.translate.xml:49845 +#: book.translate.xml:49466 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>troubleshooting</" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:49850 +#: book.translate.xml:49471 msgid "" "This section covers a few issues which may arise when using <acronym>PPP</" "acronym> over a modem connection. Some <acronym>ISP</acronym>s present the " @@ -72666,25 +72768,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49861 +#: book.translate.xml:49482 msgid "Check the Device Nodes" msgstr "檢查裝置節點" #. (itstool) path: sect2/para -#: book.translate.xml:49863 +#: book.translate.xml:49484 msgid "" "When using a custom kernel, make sure to include the following line in the " "kernel configuration file:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49866 +#: book.translate.xml:49487 #, no-wrap msgid "device uart" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49868 +#: book.translate.xml:49489 msgid "" "The <filename>uart</filename> device is already included in the " "<literal>GENERIC</literal> kernel, so no additional steps are necessary in " @@ -72693,13 +72795,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49874 +#: book.translate.xml:49495 #, no-wrap msgid "<prompt>#</prompt> <userinput>dmesg | grep uart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49876 +#: book.translate.xml:49497 msgid "" "This should display some pertinent output about the <filename>uart</" "filename> devices. These are the COM ports we need. If the modem acts like a " @@ -72710,12 +72812,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:49887 +#: book.translate.xml:49508 msgid "Connecting Manually" msgstr "手動連線" #. (itstool) path: sect2/para -#: book.translate.xml:49889 +#: book.translate.xml:49510 msgid "" "Connecting to the Internet by manually controlling <command>ppp</command> is " "quick, easy, and a great way to debug a connection or just get information " @@ -72727,36 +72829,36 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49901 +#: book.translate.xml:49522 #, no-wrap msgid "ppp ON example> <userinput>set device /dev/cuau1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49903 +#: book.translate.xml:49524 msgid "" "This second command sets the modem device to <filename>cuau1</filename>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49906 +#: book.translate.xml:49527 #, no-wrap msgid "ppp ON example> <userinput>set speed 115200</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49908 +#: book.translate.xml:49529 msgid "This sets the connection speed to 115,200 <acronym>kbps</acronym>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49911 +#: book.translate.xml:49532 #, no-wrap msgid "ppp ON example> <userinput>enable dns</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49913 +#: book.translate.xml:49534 msgid "" "This tells <command>ppp</command> to configure the resolver and add the " "nameserver lines to <filename>/etc/resolv.conf</filename>. If <command>ppp</" @@ -72764,20 +72866,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49919 +#: book.translate.xml:49540 #, no-wrap msgid "ppp ON example> <userinput>term</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49921 +#: book.translate.xml:49542 msgid "" "This switches to <quote>terminal</quote> mode in order to manually control " "the modem." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:49924 +#: book.translate.xml:49545 #, no-wrap msgid "" "deflink: Entering terminal mode on <filename class=\"devicefile\">/dev/cuau1</filename>\n" @@ -72785,7 +72887,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49927 +#: book.translate.xml:49548 #, no-wrap msgid "" "<userinput>at</userinput>\n" @@ -72794,7 +72896,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49931 +#: book.translate.xml:49552 msgid "" "Use <command>at</command> to initialize the modem, then use <command>atdt</" "command> and the number for the <acronym>ISP</acronym> to begin the dial in " @@ -72802,13 +72904,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49935 +#: book.translate.xml:49556 #, no-wrap msgid "CONNECT" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49937 +#: book.translate.xml:49558 msgid "" "Confirmation of the connection, if we are going to have any connection " "problems, unrelated to hardware, here is where we will attempt to resolve " @@ -72816,26 +72918,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49941 +#: book.translate.xml:49562 #, no-wrap msgid "ISP Login:<userinput>myusername</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49943 +#: book.translate.xml:49564 msgid "" "At this prompt, return the prompt with the username that was provided by the " "<acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49946 +#: book.translate.xml:49567 #, no-wrap msgid "ISP Pass:<userinput>mypassword</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49948 +#: book.translate.xml:49569 msgid "" "At this prompt, reply with the password that was provided by the " "<acronym>ISP</acronym>. Just like logging into FreeBSD, the password will " @@ -72843,13 +72945,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49952 +#: book.translate.xml:49573 #, no-wrap msgid "Shell or PPP:<userinput>ppp</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49954 +#: book.translate.xml:49575 msgid "" "Depending on the <acronym>ISP</acronym>, this prompt might not appear. If it " "does, it is asking whether to use a shell on the provider or to start " @@ -72858,13 +72960,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49961 +#: book.translate.xml:49582 #, no-wrap msgid "Ppp ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49963 +#: book.translate.xml:49584 msgid "" "Notice that in this example the first <option>p</option> has been " "capitalized. This shows that we have successfully connected to the " @@ -72872,39 +72974,39 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49967 +#: book.translate.xml:49588 #, no-wrap msgid "PPp ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49969 +#: book.translate.xml:49590 msgid "" "We have successfully authenticated with our <acronym>ISP</acronym> and are " "waiting for the assigned <acronym>IP</acronym> address." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49973 +#: book.translate.xml:49594 #, no-wrap msgid "PPP ON example>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49975 +#: book.translate.xml:49596 msgid "" "We have made an agreement on an <acronym>IP</acronym> address and " "successfully completed our connection." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:49978 +#: book.translate.xml:49599 #, no-wrap msgid "PPP ON example><userinput>add default HISADDR</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49980 +#: book.translate.xml:49601 msgid "" "Here we add our default route, we need to do this before we can talk to the " "outside world as currently the only established connection is with the peer. " @@ -72915,7 +73017,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:49989 +#: book.translate.xml:49610 msgid "" "If everything went good we should now have an active connection to the " "Internet, which could be thrown into the background using <keycombo action=" @@ -72927,12 +73029,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50001 +#: book.translate.xml:49622 msgid "Debugging" msgstr "除錯" #. (itstool) path: sect2/para -#: book.translate.xml:50003 +#: book.translate.xml:49624 msgid "" "If a connection cannot be established, turn hardware flow <acronym>CTS/RTS</" "acronym> to off using <option>set ctsrts off</option>. This is mainly the " @@ -72948,7 +73050,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50016 +#: book.translate.xml:49637 msgid "" "An older modem may need <option>set parity even</option>. Parity is set at " "none be default, but is used for error checking with a large increase in " @@ -72956,7 +73058,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50021 +#: book.translate.xml:49642 msgid "" "<application>PPP</application> may not return to the command mode, which is " "usually a negotiation error where the <acronym>ISP</acronym> is waiting for " @@ -72965,7 +73067,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50027 +#: book.translate.xml:49648 msgid "" "If a login prompt never appears, <acronym>PAP</acronym> or <acronym>CHAP</" "acronym> authentication is most likely required. To use <acronym>PAP</" @@ -72974,33 +73076,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50034 +#: book.translate.xml:49655 #, no-wrap msgid "ppp ON example> <userinput>set authname <replaceable>myusername</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50036 +#: book.translate.xml:49657 msgid "" "Where <replaceable>myusername</replaceable> should be replaced with the " "username that was assigned by the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50040 +#: book.translate.xml:49661 #, no-wrap msgid "ppp ON example> <userinput>set authkey <replaceable>mypassword</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50042 +#: book.translate.xml:49663 msgid "" "Where <replaceable>mypassword</replaceable> should be replaced with the " "password that was assigned by the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50046 +#: book.translate.xml:49667 msgid "" "If a connection is established, but cannot seem to find any domain name, try " "to <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</" @@ -73013,7 +73115,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50057 +#: book.translate.xml:49678 #, no-wrap msgid "" "domain <replaceable>example.com</replaceable>\n" @@ -73022,7 +73124,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50061 +#: book.translate.xml:49682 msgid "" "Where <replaceable>x.x.x.x</replaceable> and <replaceable>y.y.y.y</" "replaceable> should be replaced with the <acronym>IP</acronym> address of " @@ -73030,7 +73132,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50066 +#: book.translate.xml:49687 msgid "" "To configure <citerefentry><refentrytitle>syslog</" "refentrytitle><manvolnum>3</manvolnum></citerefentry> to provide logging for " @@ -73039,7 +73141,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50070 +#: book.translate.xml:49691 #, no-wrap msgid "" "!ppp\n" @@ -73047,24 +73149,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:50090 +#: book.translate.xml:49711 msgid "Using <acronym>PPP</acronym> over Ethernet (PPPoE)" msgstr "在乙太網路使用 <acronym>PPP</acronym> (PPPoE)" #. (itstool) path: sect1/para -#: book.translate.xml:50097 +#: book.translate.xml:49718 msgid "" "This section describes how to set up <acronym>PPP</acronym> over Ethernet " "(<acronym>PPPoE</acronym>)." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50100 +#: book.translate.xml:49721 msgid "Here is an example of a working <filename>ppp.conf</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:50103 +#: book.translate.xml:49724 #, no-wrap msgid "" "default:\n" @@ -73081,24 +73183,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50115 +#: book.translate.xml:49736 msgid "As <systemitem class=\"username\">root</systemitem>, run:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:50118 +#: book.translate.xml:49739 #, no-wrap msgid "<prompt>#</prompt> <userinput>ppp -ddial name_of_service_provider</userinput>" msgstr "" #. (itstool) path: sect1/para #. (itstool) path: sect5/para -#: book.translate.xml:50120 book.translate.xml:63442 +#: book.translate.xml:49741 book.translate.xml:63069 msgid "Add the following to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:50123 +#: book.translate.xml:49744 #, no-wrap msgid "" "ppp_enable=\"YES\"\n" @@ -73108,12 +73210,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50129 +#: book.translate.xml:49750 msgid "Using a PPPoE Service Tag" msgstr "使用 PPPoE 服務標籤" #. (itstool) path: sect2/para -#: book.translate.xml:50131 +#: book.translate.xml:49752 msgid "" "Sometimes it will be necessary to use a service tag to establish the " "connection. Service tags are used to distinguish between different PPPoE " @@ -73121,14 +73223,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50136 +#: book.translate.xml:49757 msgid "" "Any required service tag information should be in the documentation provided " "by the <acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50139 +#: book.translate.xml:49760 msgid "" "As a last resort, one could try installing the <package>net/rr-pppoe</" "package> package or port. Bear in mind however, this may de-program your " @@ -73139,7 +73241,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50148 +#: book.translate.xml:49769 msgid "" "The profile name (service tag) will be used in the PPPoE configuration entry " "in <filename>ppp.conf</filename> as the provider part for <command>set " @@ -73149,25 +73251,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50154 +#: book.translate.xml:49775 #, no-wrap msgid "set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50156 +#: book.translate.xml:49777 msgid "" "Do not forget to change <replaceable>xl1</replaceable> to the proper device " "for the Ethernet card." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50159 +#: book.translate.xml:49780 msgid "Do not forget to change <replaceable>ISP</replaceable> to the profile." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50162 +#: book.translate.xml:49783 msgid "" "For additional information, refer to <link xlink:href=\"http://renaud." "waldura.com/doc/freebsd/pppoe/\">Cheaper Broadband with FreeBSD on DSL</" @@ -73175,7 +73277,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50168 +#: book.translate.xml:49789 msgid "" "PPPoE with a <trademark class=\"registered\">3Com</trademark> <trademark " "class=\"registered\">HomeConnect</trademark> ADSL Modem Dual Link" @@ -73184,14 +73286,14 @@ msgstr "" "\"registered\">HomeConnect</trademark> ADSL Modem Dual Link 使用 PPPoE" #. (itstool) path: sect2/para -#: book.translate.xml:50172 +#: book.translate.xml:49793 msgid "" "This modem does not follow the PPPoE specification defined in <link xlink:" "href=\"http://www.faqs.org/rfcs/rfc2516.html\">RFC 2516</link>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50176 +#: book.translate.xml:49797 msgid "" "In order to make FreeBSD capable of communicating with this device, a sysctl " "must be set. This can be done automatically at boot time by updating " @@ -73199,24 +73301,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50181 +#: book.translate.xml:49802 #, no-wrap msgid "net.graph.nonstandard_pppoe=1" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50183 +#: book.translate.xml:49804 msgid "or can be done immediately with the command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50185 +#: book.translate.xml:49806 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.graph.nonstandard_pppoe=1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50187 +#: book.translate.xml:49808 msgid "" "Unfortunately, because this is a system-wide setting, it is not possible to " "talk to a normal PPPoE client or server and a <trademark class=\"registered" @@ -73225,37 +73327,37 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:50195 +#: book.translate.xml:49816 msgid "" "Using <application>PPP</application> over <acronym>ATM</acronym> (PPPoA)" msgstr "在 ATM 使用 <application>PPP</application> (PPPoA)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50198 +#: book.translate.xml:49819 msgid "" "<primary><acronym>PPP</acronym></primary> <secondary>over <acronym>ATM</" "acronym></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50203 +#: book.translate.xml:49824 msgid "<primary>PPPoA</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50207 +#: book.translate.xml:49828 msgid "" "The following describes how to set up PPP over <acronym>ATM</acronym> " "(PPPoA). PPPoA is a popular choice among European DSL providers." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50264 +#: book.translate.xml:49885 msgid "Using mpd" msgstr "使用 mpd" #. (itstool) path: sect2/para -#: book.translate.xml:50266 +#: book.translate.xml:49887 msgid "" "The <application>mpd</application> application can be used to connect to a " "variety of services, in particular PPTP services. It can be installed using " @@ -73264,7 +73366,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50273 +#: book.translate.xml:49894 msgid "" "Once installed, configure <application>mpd</application> to suit the " "provider's settings. The port places a set of sample configuration files " @@ -73277,14 +73379,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:50285 +#: book.translate.xml:49906 msgid "" "This example <filename>mpd.conf</filename> only works with <application>mpd</" "application> 4.x." msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50289 +#: book.translate.xml:49910 #, no-wrap msgid "" "default:\n" @@ -73313,17 +73415,17 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50315 +#: book.translate.xml:49936 msgid "The username used to authenticate with your <acronym>ISP</acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50319 +#: book.translate.xml:49940 msgid "The password used to authenticate with your <acronym>ISP</acronym>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50324 +#: book.translate.xml:49945 msgid "" "Information about the link, or links, to establish is found in <filename>mpd." "links</filename>. An example <filename>mpd.links</filename> to accompany the " @@ -73331,7 +73433,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50329 +#: book.translate.xml:49950 #, no-wrap msgid "" "adsl:\n" @@ -73343,14 +73445,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50338 +#: book.translate.xml:49959 msgid "" "The <acronym>IP</acronym> address of FreeBSD computer running " "<application>mpd</application>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50342 +#: book.translate.xml:49963 msgid "" "The <acronym>IP</acronym> address of the ADSL modem. The Alcatel " "<trademark>SpeedTouch</trademark> Home defaults to <systemitem class=" @@ -73358,25 +73460,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50347 +#: book.translate.xml:49968 msgid "" "It is possible to initialize the connection easily by issuing the following " "command as <systemitem class=\"username\">root</systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50351 +#: book.translate.xml:49972 #, no-wrap msgid "<prompt>#</prompt> <userinput>mpd -b <replaceable>adsl</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50353 +#: book.translate.xml:49974 msgid "To view the status of the connection:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50355 +#: book.translate.xml:49976 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig <replaceable>ng0</replaceable></userinput>\n" @@ -73385,26 +73487,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50359 +#: book.translate.xml:49980 msgid "" "Using <application>mpd</application> is the recommended way to connect to an " "ADSL service with FreeBSD." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:50364 +#: book.translate.xml:49985 msgid "Using pptpclient" msgstr "使用 pptpclient" #. (itstool) path: sect2/para -#: book.translate.xml:50366 +#: book.translate.xml:49987 msgid "" "It is also possible to use FreeBSD to connect to other PPPoA services using " "<package>net/pptpclient</package>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50369 +#: book.translate.xml:49990 msgid "" "To use <package>net/pptpclient</package> to connect to a DSL service, " "install the port or package, then edit <filename>/etc/ppp/ppp.conf</" @@ -73415,7 +73517,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:50376 +#: book.translate.xml:49997 #, no-wrap msgid "" "adsl:\n" @@ -73429,24 +73531,24 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50387 +#: book.translate.xml:50008 msgid "The username for the DSL provider." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:50391 +#: book.translate.xml:50012 msgid "The password for your account." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:50396 +#: book.translate.xml:50017 msgid "" "Since the account's password is added to <filename>ppp.conf</filename>in " "plain text form, make sure nobody can read the contents of this file:" msgstr "" #. (itstool) path: warning/screen -#: book.translate.xml:50400 +#: book.translate.xml:50021 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chown root:wheel /etc/ppp/ppp.conf</userinput>\n" @@ -73454,7 +73556,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50405 +#: book.translate.xml:50026 msgid "" "This will open a tunnel for a <acronym>PPP</acronym> session to the DSL " "router. Ethernet DSL modems have a preconfigured LAN <acronym>IP</acronym> " @@ -73465,20 +73567,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50414 +#: book.translate.xml:50035 #, no-wrap msgid "<prompt>#</prompt> <userinput>pptp <replaceable>address</replaceable> <replaceable>adsl</replaceable></userinput>" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:50417 +#: book.translate.xml:50038 msgid "" "If an ampersand (<quote>&</quote>) is added to the end of this command, " "<application>pptp</application> will return the prompt." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50423 +#: book.translate.xml:50044 msgid "" "A <filename>tun</filename> virtual tunnel device will be created for " "interaction between the <application>pptp</application> and " @@ -73488,7 +73590,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:50431 +#: book.translate.xml:50052 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ifconfig <replaceable>tun0</replaceable></userinput>\n" @@ -73498,7 +73600,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:50436 +#: book.translate.xml:50057 msgid "" "If the connection fails, check the configuration of the router, which is " "usually accessible using a web browser. Also, examine the output of " @@ -73507,21 +73609,21 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:50457 +#: book.translate.xml:50078 msgid "" "<personname><firstname>Bill</firstname><surname>Lloyd</surname></" "personname><contrib>Original work by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:50461 +#: book.translate.xml:50082 msgid "" "<personname><firstname>Jim</firstname><surname>Mock</surname></" "personname><contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50471 +#: book.translate.xml:50092 msgid "" "<quote>Electronic Mail</quote>, better known as email, is one of the most " "widely used forms of communication today. This chapter provides a basic " @@ -73534,31 +73636,31 @@ msgstr "" "細節請參閱 <xref linkend=\"bibliography\"/> 內的參考書籍。" #. (itstool) path: listitem/para -#: book.translate.xml:50482 +#: book.translate.xml:50103 msgid "" "Which software components are involved in sending and receiving electronic " "mail." msgstr "哪些軟體元件與收發電子郵件有關。" #. (itstool) path: listitem/para -#: book.translate.xml:50487 +#: book.translate.xml:50108 msgid "" "Where basic <application>Sendmail</application> configuration files are " "located in FreeBSD." msgstr "FreeBSD 內的 <application>Sendmail</application> 設定檔在哪。" #. (itstool) path: listitem/para -#: book.translate.xml:50492 +#: book.translate.xml:50113 msgid "The difference between remote and local mailboxes." msgstr "遠端信箱 (Mailbox) 與本機信箱的差異。" #. (itstool) path: listitem/para -#: book.translate.xml:50497 +#: book.translate.xml:50118 msgid "How to block spammers from illegally using a mail server as a relay." msgstr "如何阻擋垃圾郵件寄件者 (Spammer) 非法使用郵件伺服器作為中繼站。" #. (itstool) path: listitem/para -#: book.translate.xml:50502 +#: book.translate.xml:50123 msgid "" "How to install and configure an alternate Mail Transfer Agent, replacing " "<application>Sendmail</application>." @@ -73567,27 +73669,27 @@ msgstr "" "<application>Sendmail</application>。" #. (itstool) path: listitem/para -#: book.translate.xml:50508 +#: book.translate.xml:50129 msgid "How to troubleshoot common mail server problems." msgstr "如何排除常見的郵件伺服器問題。" #. (itstool) path: listitem/para -#: book.translate.xml:50512 +#: book.translate.xml:50133 msgid "How to set up the system to send mail only." msgstr "如何設定系統只能寄送郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50516 +#: book.translate.xml:50137 msgid "How to use mail with a dialup connection." msgstr "如何在撥號連線上使用郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50520 +#: book.translate.xml:50141 msgid "How to configure SMTP authentication for added security." msgstr "如何設定 SMTP 認証來增加安全性。" #. (itstool) path: listitem/para -#: book.translate.xml:50525 +#: book.translate.xml:50146 msgid "" "How to install and use a Mail User Agent, such as <application>mutt</" "application>, to send and receive email." @@ -73596,7 +73698,7 @@ msgstr "" "application> 來寄發與接收電子郵件。" #. (itstool) path: listitem/para -#: book.translate.xml:50531 +#: book.translate.xml:50152 msgid "" "How to download mail from a remote <acronym>POP</acronym> or <acronym>IMAP</" "acronym> server." @@ -73605,19 +73707,19 @@ msgstr "" "件。" #. (itstool) path: listitem/para -#: book.translate.xml:50537 +#: book.translate.xml:50158 msgid "How to automatically apply filters and rules to incoming email." msgstr "如何自動套用過濾器及規則在收到的電子郵件上。" #. (itstool) path: listitem/para -#: book.translate.xml:50546 +#: book.translate.xml:50167 msgid "" "Properly set up a network connection (<xref linkend=\"advanced-networking\"/" ">)." msgstr "正確的設定網路連線 (<xref linkend=\"advanced-networking\"/>)。" #. (itstool) path: listitem/para -#: book.translate.xml:50550 +#: book.translate.xml:50171 msgid "" "Properly set up the <acronym>DNS</acronym> information for a mail host " "(<xref linkend=\"network-servers\"/>)." @@ -73626,68 +73728,68 @@ msgstr "" "servers\"/>)。" #. (itstool) path: sect1/title -#: book.translate.xml:50562 +#: book.translate.xml:50183 msgid "Mail Components" msgstr "郵件組成" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50564 +#: book.translate.xml:50185 msgid "<primary>POP</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50565 +#: book.translate.xml:50186 msgid "<primary>IMAP</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50567 +#: book.translate.xml:50188 msgid "" "<primary>mail server daemons</primary> <secondary><application>Sendmail</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50571 +#: book.translate.xml:50192 msgid "" "<primary>mail server daemons</primary> <secondary><application>Postfix</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50575 +#: book.translate.xml:50196 msgid "" "<primary>mail server daemons</primary> <secondary><application>qmail</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50579 +#: book.translate.xml:50200 msgid "" "<primary>mail server daemons</primary> <secondary><application>Exim</" "application></secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50583 +#: book.translate.xml:50204 msgid "<primary>email</primary> <secondary>receiving</secondary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: para/indexterm #. (itstool) path: sect4/indexterm -#: book.translate.xml:50587 book.translate.xml:51259 book.translate.xml:51378 -#: book.translate.xml:56211 +#: book.translate.xml:50208 book.translate.xml:50880 book.translate.xml:50999 +#: book.translate.xml:55832 msgid "<primary>MX record</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50588 +#: book.translate.xml:50209 msgid "<primary>mail host</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50590 +#: book.translate.xml:50211 msgid "" "There are five major parts involved in an email exchange: the Mail User " "Agent (<acronym>MUA</acronym>), the Mail Transfer Agent (<acronym>MTA</" @@ -73696,12 +73798,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50598 +#: book.translate.xml:50219 msgid "Mail User Agent (<acronym>MUA</acronym>)" msgstr "郵件使用者代理程式 (Mail User Agent, <acronym>MUA</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50600 +#: book.translate.xml:50221 msgid "" "The Mail User Agent (<acronym>MUA</acronym>) is an application which is used " "to compose, send, and receive emails. This application can be a command line " @@ -73718,12 +73820,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50620 +#: book.translate.xml:50241 msgid "Mail Transfer Agent (<acronym>MTA</acronym>)" msgstr "郵件傳輸代理程式 (Mail Transfer Agent, <acronym>MTA</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50622 +#: book.translate.xml:50243 msgid "" "The Mail Transfer Agent (<acronym>MTA</acronym>) is responsible for " "receiving incoming mail and delivering outgoing mail. FreeBSD ships with " @@ -73738,12 +73840,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50642 +#: book.translate.xml:50263 msgid "Mail Host and Mailboxes" msgstr "郵件主機 (Mail Host) 與郵件信箱 (Mailbox)" #. (itstool) path: listitem/para -#: book.translate.xml:50644 +#: book.translate.xml:50265 msgid "" "The mail host is a server that is responsible for delivering and receiving " "mail for a host or a network. The mail host collects all mail sent to the " @@ -73757,7 +73859,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50657 +#: book.translate.xml:50278 msgid "" "To access mailboxes remotely, a <acronym>POP</acronym> or <acronym>IMAP</" "acronym> server is required as these protocols allow users to connect to " @@ -73771,7 +73873,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50670 +#: book.translate.xml:50291 msgid "" "Several <acronym>POP</acronym> and <acronym>IMAP</acronym> servers are " "available in the Ports Collection. These include <package>mail/qpopper</" @@ -73780,7 +73882,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:50679 +#: book.translate.xml:50300 msgid "" "It should be noted that both <acronym>POP</acronym> and <acronym>IMAP</" "acronym> transmit information, including username and password credentials, " @@ -73793,12 +73895,12 @@ msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: sect1/title -#: book.translate.xml:50691 book.translate.xml:55295 +#: book.translate.xml:50312 book.translate.xml:54916 msgid "Domain Name System (<acronym>DNS</acronym>)" msgstr "網域名稱系統 (Domain Name System, <acronym>DNS</acronym>)" #. (itstool) path: listitem/para -#: book.translate.xml:50693 +#: book.translate.xml:50314 msgid "" "The Domain Name System (<acronym>DNS</acronym>) and its daemon " "<command>named</command> play a large role in the delivery of email. In " @@ -73809,7 +73911,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50702 +#: book.translate.xml:50323 msgid "" "In addition to mapping hostnames to <acronym>IP</acronym> addresses, " "<acronym>DNS</acronym> is responsible for storing information specific to " @@ -73819,7 +73921,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50710 +#: book.translate.xml:50331 msgid "" "To view the <acronym>MX</acronym> records for a domain, specify the type of " "record. Refer to <citerefentry><refentrytitle>host</" @@ -73828,7 +73930,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:50714 +#: book.translate.xml:50335 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>host -t mx FreeBSD.org</userinput>\n" @@ -73836,31 +73938,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50717 +#: book.translate.xml:50338 msgid "" "Refer to <xref linkend=\"network-dns\"/> for more information about " "<acronym>DNS</acronym> and its configuration." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:50727 +#: book.translate.xml:50348 msgid "<application>Sendmail</application> Configuration Files" msgstr "<application>Sendmail</application> 設定檔" #. (itstool) path: authorgroup/author -#: book.translate.xml:50731 +#: book.translate.xml:50352 msgid "" "<personname> <firstname>Christopher</firstname> <surname>Shumway</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50741 +#: book.translate.xml:50362 msgid "<primary><application>Sendmail</application></primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50745 +#: book.translate.xml:50366 msgid "" "<application>Sendmail</application> is the default <acronym>MTA</acronym> " "installed with FreeBSD. It accepts mail from <acronym>MUA</acronym>s and " @@ -73870,7 +73972,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:50753 +#: book.translate.xml:50374 msgid "" "The configuration files for <application>Sendmail</application> are located " "in <filename>/etc/mail</filename>. This section describes these files in " @@ -73878,47 +73980,47 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50758 +#: book.translate.xml:50379 msgid "<primary><filename>/etc/mail/access</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50761 +#: book.translate.xml:50382 msgid "<primary><filename>/etc/mail/aliases</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50764 +#: book.translate.xml:50385 msgid "<primary><filename>/etc/mail/local-host-names</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50767 +#: book.translate.xml:50388 msgid "<primary><filename>/etc/mail/mailer.conf</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50770 +#: book.translate.xml:50391 msgid "<primary><filename>/etc/mail/mailertable</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50773 +#: book.translate.xml:50394 msgid "<primary><filename>/etc/mail/sendmail.cf</filename></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:50776 +#: book.translate.xml:50397 msgid "<primary><filename>/etc/mail/virtusertable</filename></primary>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50782 +#: book.translate.xml:50403 msgid "<filename>/etc/mail/access</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50784 +#: book.translate.xml:50405 msgid "" "This access database file defines which hosts or <acronym>IP</acronym> " "addresses have access to the local mail server and what kind of access they " @@ -73936,7 +74038,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50802 +#: book.translate.xml:50423 msgid "" "Examples of using these options for both <acronym>IPv4</acronym> and " "<acronym>IPv6</acronym> addresses can be found in the FreeBSD sample " @@ -73944,7 +74046,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50807 +#: book.translate.xml:50428 #, no-wrap msgid "" "# $FreeBSD$\n" @@ -73966,7 +74068,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50824 +#: book.translate.xml:50445 msgid "" "To configure the access database, use the format shown in the sample to make " "entries in <filename>/etc/mail/access</filename>, but do not put a comment " @@ -73977,14 +74079,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50833 +#: book.translate.xml:50454 msgid "" "Whenever this file is updated, update its database and restart " "<application>Sendmail</application>:" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:50836 +#: book.translate.xml:50457 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>makemap hash /etc/mail/access < /etc/mail/access</userinput>\n" @@ -73992,12 +74094,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50842 +#: book.translate.xml:50463 msgid "<filename>/etc/mail/aliases</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50844 +#: book.translate.xml:50465 msgid "" "This database file contains a list of virtual mailboxes that are expanded to " "users, files, programs, or other aliases. Here are a few entries to " @@ -74005,7 +74107,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50849 +#: book.translate.xml:50470 #, no-wrap msgid "" "root: localuser\n" @@ -74015,7 +74117,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50854 +#: book.translate.xml:50475 msgid "" "The mailbox name on the left side of the colon is expanded to the target(s) " "on the right. The first entry expands the <systemitem class=\"username" @@ -74037,19 +74139,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50872 +#: book.translate.xml:50493 msgid "" "Whenever this file is updated, run <command>newaliases</command> to update " "and initialize the aliases database." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50906 +#: book.translate.xml:50527 msgid "<filename>/etc/mail/sendmail.cf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50908 +#: book.translate.xml:50529 msgid "" "This is the master configuration file for <application>Sendmail</" "application>. It controls the overall behavior of <application>Sendmail</" @@ -74060,7 +74162,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50917 +#: book.translate.xml:50538 msgid "" "The master <application>Sendmail</application> configuration file can be " "built from <citerefentry><refentrytitle>m4</refentrytitle><manvolnum>1</" @@ -74070,19 +74172,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50924 +#: book.translate.xml:50545 msgid "" "Whenever changes to this file are made, <application>Sendmail</application> " "needs to be restarted for the changes to take effect." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50931 +#: book.translate.xml:50552 msgid "<filename>/etc/mail/virtusertable</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50933 +#: book.translate.xml:50554 msgid "" "This database file maps mail addresses for virtual domains and users to real " "mailboxes. These mailboxes can be local, remote, aliases defined in " @@ -74091,7 +74193,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50940 +#: book.translate.xml:50561 msgid "" "FreeBSD provides a sample configuration file in <filename>/etc/mail/" "virtusertable.sample</filename> to further demonstrate its format. The " @@ -74100,7 +74202,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50946 +#: book.translate.xml:50567 #, no-wrap msgid "" "root@example.com root\n" @@ -74109,7 +74211,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50950 +#: book.translate.xml:50571 msgid "" "This file is processed in a first match order. When an email address matches " "the address on the left, it is mapped to the local mailbox listed on the " @@ -74125,7 +74227,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:50965 +#: book.translate.xml:50586 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable</userinput>\n" @@ -74133,12 +74235,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:50971 +#: book.translate.xml:50592 msgid "<filename>/etc/mail/relay-domains</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50973 +#: book.translate.xml:50594 msgid "" "In a default FreeBSD installation, <application>Sendmail</application> is " "configured to only send mail from the host it is running on. For example, if " @@ -74150,7 +74252,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50984 +#: book.translate.xml:50605 msgid "" "The most straightforward solution is to add the <acronym>ISP</acronym>'s " "<acronym>FQDN</acronym> to <filename>/etc/mail/relay-domains</filename>. If " @@ -74158,7 +74260,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:50990 +#: book.translate.xml:50611 #, no-wrap msgid "" "your.isp.example.com\n" @@ -74168,14 +74270,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50995 +#: book.translate.xml:50616 msgid "" "After creating or editing this file, restart <application>Sendmail</" "application> with <command>service sendmail restart</command>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:50999 +#: book.translate.xml:50620 msgid "" "Now any mail sent through the system by any host in this list, provided the " "user has an account on the system, will succeed. This allows users to send " @@ -74184,31 +74286,31 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51011 +#: book.translate.xml:50632 msgid "Changing the Mail Transfer Agent" msgstr "更改郵件傳輸代理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:51014 +#: book.translate.xml:50635 msgid "" "<personname> <firstname>Andrew</firstname> <surname>Boothman</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:51024 +#: book.translate.xml:50645 msgid "" "<personname> <firstname>Gregory</firstname> <surname>Neil Shapiro</surname> " "</personname> <contrib>Information taken from emails written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:51034 +#: book.translate.xml:50655 msgid "<primary>email</primary> <secondary>change mta</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51039 +#: book.translate.xml:50660 msgid "" "FreeBSD comes with <application>Sendmail</application> already installed as " "the <acronym>MTA</acronym> which is in charge of outgoing and incoming mail. " @@ -74218,7 +74320,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51047 +#: book.translate.xml:50668 msgid "" "Once a new <acronym>MTA</acronym> is installed, configure and test the new " "software before replacing <application>Sendmail</application>. Refer to the " @@ -74227,7 +74329,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51053 +#: book.translate.xml:50674 msgid "" "Once the new <acronym>MTA</acronym> is working, use the instructions in this " "section to disable <application>Sendmail</application> and configure FreeBSD " @@ -74235,12 +74337,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51059 +#: book.translate.xml:50680 msgid "Disable <application>Sendmail</application>" msgstr "關閉 <application>Sendmail</application>" #. (itstool) path: warning/para -#: book.translate.xml:51062 +#: book.translate.xml:50683 msgid "" "If <application>Sendmail</application>'s outgoing mail service is disabled, " "it is important that it is replaced with an alternative mail delivery " @@ -74254,14 +74356,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51074 +#: book.translate.xml:50695 msgid "" "In order to completely disable <application>Sendmail</application>, add or " "edit the following lines in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51078 +#: book.translate.xml:50699 #, no-wrap msgid "" "sendmail_enable=\"NO\"\n" @@ -74271,20 +74373,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51083 +#: book.translate.xml:50704 msgid "" "To only disable <application>Sendmail</application>'s incoming mail service, " "use only this entry in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51087 +#: book.translate.xml:50708 #, no-wrap msgid "sendmail_enable=\"NO\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51089 +#: book.translate.xml:50710 msgid "" "More information on <application>Sendmail</application>'s startup options is " "available in <citerefentry><refentrytitle>rc.sendmail</" @@ -74292,12 +74394,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51094 +#: book.translate.xml:50715 msgid "Replace the Default <acronym>MTA</acronym>" msgstr "替換預設的 <acronym>MTA</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:51096 +#: book.translate.xml:50717 msgid "" "When a new <acronym>MTA</acronym> is installed using the Ports Collection, " "its startup script is also installed and startup instructions are mentioned " @@ -74308,7 +74410,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51104 +#: book.translate.xml:50725 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service sendmail stop</userinput>\n" @@ -74316,7 +74418,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51107 +#: book.translate.xml:50728 msgid "" "To start the replacement <acronym>MTA</acronym> at system boot, add its " "configuration line to <filename>/etc/rc.conf</filename>. This entry enables " @@ -74324,13 +74426,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51112 +#: book.translate.xml:50733 #, no-wrap msgid "postfix_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51114 +#: book.translate.xml:50735 msgid "" "Some extra configuration is needed as <application>Sendmail</application> is " "so ubiquitous that some software assumes it is already installed and " @@ -74340,7 +74442,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51121 +#: book.translate.xml:50742 #, no-wrap msgid "" "daily_clean_hoststat_enable=\"NO\"\n" @@ -74350,7 +74452,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51126 +#: book.translate.xml:50747 msgid "" "Some alternative <acronym>MTA</acronym>s provide their own compatible " "implementations of the <application>Sendmail</application> command-line " @@ -74366,12 +74468,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51139 +#: book.translate.xml:50760 msgid "The default <filename>/etc/mail/mailer.conf</filename> looks like this:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51142 +#: book.translate.xml:50763 #, no-wrap msgid "" "# $FreeBSD$\n" @@ -74387,7 +74489,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51153 +#: book.translate.xml:50774 msgid "" "When any of the commands listed on the left are run, the system actually " "executes the associated command shown on the right. This system makes it " @@ -74396,7 +74498,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51158 +#: book.translate.xml:50779 msgid "" "Some <acronym>MTA</acronym>s, when installed using the Ports Collection, " "will prompt to update this file for the new binaries. For example, " @@ -74404,7 +74506,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51163 +#: book.translate.xml:50784 #, no-wrap msgid "" "#\n" @@ -74417,7 +74519,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51171 +#: book.translate.xml:50792 msgid "" "If the installation of the <acronym>MTA</acronym> does not automatically " "update <filename>/etc/mail/mailer.conf</filename>, edit this file in a text " @@ -74426,7 +74528,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51178 +#: book.translate.xml:50799 #, no-wrap msgid "" "sendmail /usr/local/sbin/ssmtp\n" @@ -74438,7 +74540,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51185 +#: book.translate.xml:50806 msgid "" "Once everything is configured, it is recommended to reboot the system. " "Rebooting provides the opportunity to ensure that the system is correctly " @@ -74446,17 +74548,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:51195 +#: book.translate.xml:50816 msgid "<primary>email</primary> <secondary>troubleshooting</secondary>" msgstr "" #. (itstool) path: question/para -#: book.translate.xml:51203 +#: book.translate.xml:50824 msgid "Why do I have to use the FQDN for hosts on my site?" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51208 +#: book.translate.xml:50829 msgid "" "The host may actually be in a different domain. For example, in order for a " "host in <systemitem class=\"fqdomainname\">foo.bar.edu</systemitem> to reach " @@ -74469,12 +74571,12 @@ msgstr "" #. (itstool) path: para/indexterm #. (itstool) path: sect1/indexterm -#: book.translate.xml:51217 book.translate.xml:55309 +#: book.translate.xml:50838 book.translate.xml:54930 msgid "<primary>BIND</primary>" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51216 +#: book.translate.xml:50837 msgid "" "This is because the version of <application>BIND</application><_:indexterm-1/" "> which ships with FreeBSD no longer provides default abbreviations for non-" @@ -74485,7 +74587,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51225 +#: book.translate.xml:50846 msgid "" "In older versions of <application>BIND</application>, the search continued " "across <systemitem class=\"fqdomainname\">mumble.bar.edu</systemitem>, and " @@ -74494,29 +74596,29 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51231 +#: book.translate.xml:50852 msgid "As a good workaround, place the line:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51233 +#: book.translate.xml:50854 #, no-wrap msgid "search foo.bar.edu bar.edu" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51235 +#: book.translate.xml:50856 msgid "instead of the previous:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51237 +#: book.translate.xml:50858 #, no-wrap msgid "domain foo.bar.edu" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51239 +#: book.translate.xml:50860 msgid "" "into <filename>/etc/resolv.conf</filename>. However, make sure that the " "search order does not go beyond the <quote>boundary between local and public " @@ -74524,19 +74626,19 @@ msgid "" msgstr "" #. (itstool) path: question/para -#: book.translate.xml:51248 +#: book.translate.xml:50869 msgid "How can I run a mail server on a dial-up PPP host?" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51253 +#: book.translate.xml:50874 msgid "" "Connect to a FreeBSD mail gateway on the LAN. The PPP connection is non-" "dedicated." msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51256 +#: book.translate.xml:50877 msgid "" "One way to do this is to get a full-time Internet server to provide " "secondary <acronym>MX</acronym> <_:indexterm-1/> services for the domain. In " @@ -74547,7 +74649,7 @@ msgid "" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51267 +#: book.translate.xml:50888 #, no-wrap msgid "" "example.com. MX 10 example.com.\n" @@ -74555,7 +74657,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51270 +#: book.translate.xml:50891 msgid "" "Only one host should be specified as the final recipient. For " "<application>Sendmail</application>, add <literal>Cw example.com</literal> " @@ -74564,7 +74666,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51275 +#: book.translate.xml:50896 msgid "" "When the sending <acronym>MTA</acronym> attempts to deliver mail, it will " "try to connect to the system, <systemitem class=\"fqdomainname\">example." @@ -74578,12 +74680,12 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51287 +#: book.translate.xml:50908 msgid "Use something like this as a login script:" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51289 +#: book.translate.xml:50910 #, no-wrap msgid "" "#!/bin/sh\n" @@ -74593,7 +74695,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51294 +#: book.translate.xml:50915 msgid "" "When creating a separate login script for users, instead use " "<command>sendmail -qRexample.com</command> in the script above. This will " @@ -74602,7 +74704,7 @@ msgid "" msgstr "" #. (itstool) path: answer/para -#: book.translate.xml:51301 +#: book.translate.xml:50922 msgid "" "A further refinement of the situation can be seen from this example from the " "<link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-isp" @@ -74610,7 +74712,7 @@ msgid "" msgstr "" #. (itstool) path: answer/programlisting -#: book.translate.xml:51304 +#: book.translate.xml:50925 #, no-wrap msgid "" "> we provide the secondary MX for a customer. The customer connects to\n" @@ -74643,19 +74745,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51339 +#: book.translate.xml:50960 msgid "" "This section covers more involved topics such as mail configuration and " "setting up mail for an entire domain." msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:51345 +#: book.translate.xml:50966 msgid "<primary>email</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51350 +#: book.translate.xml:50971 msgid "" "Out of the box, one can send email to external hosts as long as <filename>/" "etc/resolv.conf</filename> is configured or the network has access to a " @@ -74664,18 +74766,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51358 +#: book.translate.xml:50979 msgid "Run a <acronym>DNS</acronym> server for the domain." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51363 +#: book.translate.xml:50984 msgid "" "Get mail delivered directly to the <acronym>FQDN</acronym> for the machine." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51369 +#: book.translate.xml:50990 msgid "" "In order to have mail delivered directly to a host, it must have a permanent " "static IP address, not a dynamic IP address. If the system is behind a " @@ -74684,32 +74786,32 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51377 +#: book.translate.xml:50998 msgid "" "Make sure that the lowest-numbered <acronym>MX</acronym><_:indexterm-1/> " "record in <acronym>DNS</acronym> points to the host's static IP address." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51385 +#: book.translate.xml:51006 msgid "" "Make sure there is no <acronym>MX</acronym> entry in the <acronym>DNS</" "acronym> for the host." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51390 +#: book.translate.xml:51011 msgid "" "Either of the above will allow mail to be received directly at the host." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51393 +#: book.translate.xml:51014 msgid "Try this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51395 +#: book.translate.xml:51016 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hostname</userinput>\n" @@ -74719,7 +74821,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51400 +#: book.translate.xml:51021 msgid "" "In this example, mail sent directly to <email role=\"nolink" "\">yourlogin@example.FreeBSD.org</email> should work without problems, " @@ -74728,12 +74830,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51406 +#: book.translate.xml:51027 msgid "For this example:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51408 +#: book.translate.xml:51029 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>host example.FreeBSD.org</userinput>\n" @@ -74742,7 +74844,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51412 +#: book.translate.xml:51033 msgid "" "All mail sent to <systemitem class=\"fqdomainname\">example.FreeBSD.org</" "systemitem> will be collected on <systemitem>hub</systemitem> under the same " @@ -74750,7 +74852,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51416 +#: book.translate.xml:51037 msgid "" "The above information is handled by the <acronym>DNS</acronym> server. The " "<acronym>DNS</acronym> record that carries mail routing information is the " @@ -74759,14 +74861,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51423 +#: book.translate.xml:51044 msgid "" "The <acronym>MX</acronym> entry for <systemitem class=\"fqdomainname" "\">freefall.FreeBSD.org</systemitem> at one time looked like this:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51426 +#: book.translate.xml:51047 #, no-wrap msgid "" "freefall\t\tMX\t30\tmail.crl.net\n" @@ -74776,7 +74878,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51431 +#: book.translate.xml:51052 msgid "" "<systemitem>freefall</systemitem> had many <acronym>MX</acronym> entries. " "The lowest <acronym>MX</acronym> number is the host that receives mail " @@ -74786,7 +74888,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51439 +#: book.translate.xml:51060 msgid "" "Alternate <acronym>MX</acronym> sites should have separate Internet " "connections in order to be most useful. Your <acronym>ISP</acronym> can " @@ -74794,12 +74896,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51445 +#: book.translate.xml:51066 msgid "Mail for a Domain" msgstr "網域中的郵件" #. (itstool) path: sect2/para -#: book.translate.xml:51447 +#: book.translate.xml:51068 msgid "" "When configuring a <acronym>MTA</acronym> for a network, any mail sent to " "hosts in its domain should be diverted to the <acronym>MTA</acronym> so that " @@ -74807,7 +74909,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51453 +#: book.translate.xml:51074 msgid "" "To make life easiest, a user account with the same <emphasis>username</" "emphasis> should exist on both the <acronym>MTA</acronym> and the system " @@ -74817,7 +74919,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51459 +#: book.translate.xml:51080 msgid "" "The <acronym>MTA</acronym> must be the designated mail exchanger for each " "workstation on the network. This is done in the<acronym>DNS</acronym> " @@ -74825,7 +74927,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51464 +#: book.translate.xml:51085 #, no-wrap msgid "" "example.FreeBSD.org\tA\t204.216.27.XX\t\t; Workstation\n" @@ -74833,7 +74935,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51467 +#: book.translate.xml:51088 msgid "" "This will redirect mail for the workstation to the <acronym>MTA</acronym> no " "matter where the A record points. The mail is sent to the <acronym>MX</" @@ -74841,7 +74943,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51471 +#: book.translate.xml:51092 msgid "" "This must be configured on a <acronym>DNS</acronym> server. If the network " "does not run its own <acronym>DNS</acronym> server, talk to the " @@ -74849,7 +74951,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51477 +#: book.translate.xml:51098 msgid "" "The following is an example of virtual email hosting. Consider a customer " "with the domain <systemitem class=\"fqdomainname\">customer1.org</" @@ -74860,13 +74962,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:51483 +#: book.translate.xml:51104 #, no-wrap msgid "customer1.org\t\tMX\t10\tmail.myhost.com" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51485 +#: book.translate.xml:51106 msgid "" "An <literal>A</literal>> record is <emphasis>not</emphasis> needed for " "<systemitem class=\"fqdomainname\">customer1.org</systemitem> in order to " @@ -74876,7 +74978,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51492 +#: book.translate.xml:51113 msgid "" "Tell the <acronym>MTA</acronym> which domains and/or hostnames it should " "accept mail for. Either of the following will work for " @@ -74884,40 +74986,40 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51498 +#: book.translate.xml:51119 msgid "" "Add the hosts to <filename>/etc/mail/local-host-names</filename> when using " "the <literal>FEATURE(use_cw_file)</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51504 +#: book.translate.xml:51125 msgid "" "Add a <literal>Cwyour.host.com</literal> line to <filename>/etc/sendmail.cf</" "filename>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51513 +#: book.translate.xml:51134 msgid "Setting Up to Send Only" msgstr "寄件設定" #. (itstool) path: authorgroup/author -#: book.translate.xml:51516 +#: book.translate.xml:51137 msgid "" "<personname> <firstname>Bill</firstname> <surname>Moran</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51526 +#: book.translate.xml:51147 msgid "" "There are many instances where one may only want to send mail through a " "relay. Some examples are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51531 +#: book.translate.xml:51152 msgid "" "The computer is a desktop machine that needs to use programs such as " "<citerefentry><refentrytitle>send-pr</refentrytitle><manvolnum>1</" @@ -74925,14 +75027,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51537 +#: book.translate.xml:51158 msgid "" "The computer is a server that does not handle mail locally, but needs to " "pass off all mail to a relay for processing." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51543 +#: book.translate.xml:51164 msgid "" "While any <acronym>MTA</acronym> is capable of filling this particular " "niche, it can be difficult to properly configure a full-featured " @@ -74942,21 +75044,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51550 +#: book.translate.xml:51171 msgid "" "Additionally, a typical Internet access service agreement may forbid one " "from running a <quote>mail server</quote>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51553 +#: book.translate.xml:51174 msgid "" "The easiest way to fulfill those needs is to install the <package>mail/" "ssmtp</package> port:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:51556 +#: book.translate.xml:51177 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/ports/mail/ssmtp</userinput>\n" @@ -74964,14 +75066,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51559 +#: book.translate.xml:51180 msgid "" "Once installed, <package>mail/ssmtp</package> can be configured with " "<filename>/usr/local/etc/ssmtp/ssmtp.conf</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51563 +#: book.translate.xml:51184 #, no-wrap msgid "" "root=yourrealemail@example.com\n" @@ -74981,7 +75083,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51568 +#: book.translate.xml:51189 msgid "" "Use the real email address for <systemitem class=\"username\">root</" "systemitem>. Enter the <acronym>ISP</acronym>'s outgoing mail relay in place " @@ -74991,7 +75093,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51574 +#: book.translate.xml:51195 msgid "" "Make sure to disable <application>Sendmail</application>, including the " "outgoing mail service. See <xref linkend=\"mail-disable-sendmail\"/> for " @@ -74999,7 +75101,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51577 +#: book.translate.xml:51198 msgid "" "<package>mail/ssmtp</package> has some other options available. Refer to the " "examples in <filename>/usr/local/etc/ssmtp</filename> or the manual page of " @@ -75007,7 +75109,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51582 +#: book.translate.xml:51203 msgid "" "Setting up <application>ssmtp</application> in this manner allows any " "software on the computer that needs to send mail to function properly, while " @@ -75016,12 +75118,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:51590 +#: book.translate.xml:51211 msgid "Using Mail with a Dialup Connection" msgstr "在撥號連線使用郵件" #. (itstool) path: sect1/para -#: book.translate.xml:51592 +#: book.translate.xml:51213 msgid "" "When using a static IP address, one should not need to adjust the default " "configuration. Set the hostname to the assigned Internet name and " @@ -75029,7 +75131,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51597 +#: book.translate.xml:51218 msgid "" "When using a dynamically assigned IP address and a dialup PPP connection to " "the Internet, one usually has a mailbox on the <acronym>ISP</acronym>'s mail " @@ -75042,7 +75144,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51606 +#: book.translate.xml:51227 msgid "" "In order to retrieve mail from the <acronym>ISP</acronym>'s mailbox, install " "a retrieval agent from the Ports Collection. <package>mail/fetchmail</" @@ -75054,7 +75156,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51616 +#: book.translate.xml:51237 #, no-wrap msgid "" "MYADDR:\n" @@ -75062,7 +75164,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51619 +#: book.translate.xml:51240 msgid "" "When using <application>Sendmail</application> to deliver mail to non-local " "accounts, configure <application>Sendmail</application> to process the mail " @@ -75072,13 +75174,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51626 +#: book.translate.xml:51247 #, no-wrap msgid " !bg su user -c \"sendmail -q\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51628 +#: book.translate.xml:51249 msgid "" "In this example, there is an account for <systemitem class=\"username" "\">user</systemitem> on <systemitem class=\"fqdomainname\">bsd.home</" @@ -75088,13 +75190,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51635 +#: book.translate.xml:51256 #, no-wrap msgid "poll example.net protocol pop3 fetchall pass MySecret" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51637 +#: book.translate.xml:51258 msgid "" "This file should not be readable by anyone except <systemitem class=" "\"username\">user</systemitem> as it contains the password " @@ -75102,7 +75204,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51641 +#: book.translate.xml:51262 msgid "" "In order to send mail with the correct <literal>from:</literal> header, " "configure <application>Sendmail</application> to use <email>user@example." @@ -75112,12 +75214,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51648 +#: book.translate.xml:51269 msgid "The following <filename>.mc</filename> should suffice:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:51651 +#: book.translate.xml:51272 #, no-wrap msgid "" "VERSIONID(`bsd.home.mc version 1.0')\n" @@ -75139,7 +75241,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51668 +#: book.translate.xml:51289 msgid "" "Refer to the previous section for details of how to convert this file into " "the <filename>sendmail.cf</filename> format. Do not forget to restart " @@ -75148,19 +75250,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51676 +#: book.translate.xml:51297 msgid "SMTP Authentication" msgstr "SMTP 認證" #. (itstool) path: authorgroup/author -#: book.translate.xml:51679 +#: book.translate.xml:51300 msgid "" "<personname> <firstname>James</firstname> <surname>Gorham</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51689 +#: book.translate.xml:51310 msgid "" "Configuring <acronym>SMTP</acronym> authentication on the <acronym>MTA</" "acronym> provides a number of benefits. <acronym>SMTP</acronym> " @@ -75171,7 +75273,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51699 +#: book.translate.xml:51320 msgid "" "Install <package>security/cyrus-sasl2</package> from the Ports Collection. " "This port supports a number of compile-time options. For the SMTP " @@ -75180,7 +75282,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51708 +#: book.translate.xml:51329 msgid "" "After installing <package>security/cyrus-sasl2</package>, edit <filename>/" "usr/local/lib/sasl2/Sendmail.conf</filename>, or create it if it does not " @@ -75188,37 +75290,37 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51714 +#: book.translate.xml:51335 #, no-wrap msgid "pwcheck_method: saslauthd" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51718 +#: book.translate.xml:51339 msgid "" "Next, install <package>security/cyrus-sasl2-saslauthd</package> and add the " "following line to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51723 +#: book.translate.xml:51344 #, no-wrap msgid "saslauthd_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51725 +#: book.translate.xml:51346 msgid "Finally, start the saslauthd daemon:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:51727 +#: book.translate.xml:51348 #, no-wrap msgid "<prompt>#</prompt> <userinput>service saslauthd start</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51729 +#: book.translate.xml:51350 msgid "" "This daemon serves as a broker for <application>Sendmail</application> to " "authenticate against the FreeBSD <citerefentry><refentrytitle>passwd</" @@ -75229,13 +75331,13 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51738 +#: book.translate.xml:51359 msgid "" "Next, edit <filename>/etc/make.conf</filename> and add the following lines:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51741 +#: book.translate.xml:51362 #, no-wrap msgid "" "SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL\n" @@ -75244,7 +75346,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51745 +#: book.translate.xml:51366 msgid "" "These lines provide <application>Sendmail</application> the proper " "configuration options for linking to <package>cyrus-sasl2</package> at " @@ -75253,14 +75355,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51754 +#: book.translate.xml:51375 msgid "" "Recompile <application>Sendmail</application> by executing the following " "commands:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:51757 +#: book.translate.xml:51378 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cd /usr/src/lib/libsmutil</userinput>\n" @@ -75272,14 +75374,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51764 +#: book.translate.xml:51385 msgid "" "This compile should not have any problems if <filename>/usr/src</filename> " "has not changed extensively and the shared libraries it needs are available." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51770 +#: book.translate.xml:51391 msgid "" "After <application>Sendmail</application> has been compiled and reinstalled, " "edit <filename>/etc/mail/freebsd.mc</filename> or the local <filename>.mc</" @@ -75290,7 +75392,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:51778 +#: book.translate.xml:51399 #, no-wrap msgid "" "dnl set SASL options\n" @@ -75299,7 +75401,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51782 +#: book.translate.xml:51403 msgid "" "These options configure the different methods available to " "<application>Sendmail</application> for authenticating users. To use a " @@ -75308,7 +75410,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:51790 +#: book.translate.xml:51411 msgid "" "Finally, run <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" "manvolnum></citerefentry> while in <filename>/etc/mail</filename>. That will " @@ -75321,7 +75423,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51804 +#: book.translate.xml:51425 msgid "" "To test the configuration, use a <acronym>MUA</acronym> to send a test " "message. For further investigation, set the <option>LogLevel</option> of " @@ -75330,31 +75432,31 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51810 +#: book.translate.xml:51431 msgid "" "For more information, refer to <link xlink:href=\"http://www.sendmail.org/" "~ca/email/auth.html\"> <acronym>SMTP</acronym> authentication</link>." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:51816 +#: book.translate.xml:51437 msgid "Mail User Agents" msgstr "郵件使用者代理程式" #. (itstool) path: authorgroup/author -#: book.translate.xml:51819 book.translate.xml:52176 book.translate.xml:52276 +#: book.translate.xml:51440 book.translate.xml:51797 book.translate.xml:51897 msgid "" "<personname> <firstname>Marc</firstname> <surname>Silver</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:51829 +#: book.translate.xml:51450 msgid "<primary>Mail User Agents</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:51833 +#: book.translate.xml:51454 msgid "" "A <acronym>MUA</acronym> is an application that is used to send and receive " "email. As email <quote>evolves</quote> and becomes more complex, " @@ -75368,12 +75470,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51846 +#: book.translate.xml:51467 msgid "<command>mail</command>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51848 +#: book.translate.xml:51469 msgid "" "<citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> is the default <acronym>MUA</acronym> installed with FreeBSD. " @@ -75383,7 +75485,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51855 +#: book.translate.xml:51476 msgid "" "Although <command>mail</command> does not natively support interaction with " "<acronym>POP</acronym> or <acronym>IMAP</acronym> servers, these mailboxes " @@ -75392,18 +75494,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51862 +#: book.translate.xml:51483 msgid "In order to send and receive email, run <command>mail</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51865 +#: book.translate.xml:51486 #, no-wrap msgid "<prompt>%</prompt> <userinput>mail</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51867 +#: book.translate.xml:51488 msgid "" "The contents of the user's mailbox in <filename>/var/mail</filename> are " "automatically read by <command>mail</command>. Should the mailbox be empty, " @@ -75414,7 +75516,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51876 +#: book.translate.xml:51497 #, no-wrap msgid "" "Mail version 8.1 6/6/93. Type ? for help.\n" @@ -75425,14 +75527,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51882 +#: book.translate.xml:51503 msgid "" "Messages can now be read by typing <keycap>t</keycap> followed by the " "message number. This example reads the first email:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51886 +#: book.translate.xml:51507 #, no-wrap msgid "" "& <userinput>t 1</userinput>\n" @@ -75449,14 +75551,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51898 +#: book.translate.xml:51519 msgid "" "As seen in this example, the message will be displayed with full headers. To " "display the list of messages again, press <keycap>h</keycap>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51902 +#: book.translate.xml:51523 msgid "" "If the email requires a reply, press either <keycap>R</keycap> or <keycap>r</" "keycap> <command>mail</command> keys. <keycap>R</keycap> instructs " @@ -75468,7 +75570,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51913 +#: book.translate.xml:51534 #, no-wrap msgid "" "& <userinput>R 1</userinput>\n" @@ -75481,7 +75583,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51921 +#: book.translate.xml:51542 msgid "" "In order to send a new email, press <keycap>m</keycap>, followed by the " "recipient email address. Multiple recipients may be specified by separating " @@ -75492,7 +75594,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51929 +#: book.translate.xml:51550 #, no-wrap msgid "" "& <userinput>mail root@localhost</userinput>\n" @@ -75504,7 +75606,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51936 +#: book.translate.xml:51557 msgid "" "While using <command>mail</command>, press <keycap>?</keycap> to display " "help at any time. Refer to <citerefentry><refentrytitle>mail</" @@ -75513,7 +75615,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:51942 +#: book.translate.xml:51563 msgid "" "<citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</manvolnum></" "citerefentry> was not designed to handle attachments and thus deals with " @@ -75523,51 +75625,51 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:51952 +#: book.translate.xml:51573 msgid "<application>mutt</application>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51954 +#: book.translate.xml:51575 msgid "" "<application>mutt</application> is a powerful <acronym>MUA</acronym>, with " "many features, including:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51959 +#: book.translate.xml:51580 msgid "The ability to thread messages." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51963 +#: book.translate.xml:51584 msgid "PGP support for digital signing and encryption of email." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51968 +#: book.translate.xml:51589 msgid "MIME support." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51972 +#: book.translate.xml:51593 msgid "Maildir support." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:51976 +#: book.translate.xml:51597 msgid "Highly customizable." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51980 +#: book.translate.xml:51601 msgid "" "Refer to <uri xlink:href=\"http://www.mutt.org\">http://www.mutt.org</uri> " "for more information on <application>mutt</application>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51984 +#: book.translate.xml:51605 msgid "" "<application>mutt</application> may be installed using the <package>mail/" "mutt</package> port. After the port has been installed, <application>mutt</" @@ -75575,13 +75677,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:51989 +#: book.translate.xml:51610 #, no-wrap msgid "<prompt>%</prompt> <userinput>mutt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:51991 +#: book.translate.xml:51612 msgid "" "<application>mutt</application> will automatically read and display the " "contents of the user mailbox in <filename>/var/mail</filename>. If no mails " @@ -75595,13 +75697,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52001 +#: book.translate.xml:51622 msgctxt "_" msgid "external ref='mail/mutt1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52005 +#: book.translate.xml:51626 msgid "" "To read an email, select it using the cursor keys and press <keycap>Enter</" "keycap>. An example of <application>mutt</application> displaying email can " @@ -75613,13 +75715,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52012 +#: book.translate.xml:51633 msgctxt "_" msgid "external ref='mail/mutt2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52016 +#: book.translate.xml:51637 msgid "" "Similar to <citerefentry><refentrytitle>mail</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>, <application>mutt</application> can be used to " @@ -75630,7 +75732,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:52024 +#: book.translate.xml:51645 msgid "" "By default, <application>mutt</application> uses the " "<citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></" @@ -75643,7 +75745,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52035 +#: book.translate.xml:51656 msgid "" "To compose a new mail message, press <keycap>m</keycap>. After a valid " "subject has been given, <application>mutt</application> will start " @@ -75660,13 +75762,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52047 +#: book.translate.xml:51668 msgctxt "_" msgid "external ref='mail/mutt3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52051 +#: book.translate.xml:51672 msgid "" "<application>mutt</application> contains extensive help which can be " "accessed from most of the menus by pressing <keycap>?</keycap>. The top line " @@ -75674,19 +75776,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52059 +#: book.translate.xml:51680 msgid "<application>alpine</application>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52061 +#: book.translate.xml:51682 msgid "" "<application>alpine</application> is aimed at a beginner user, but also " "includes some advanced features." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:52065 +#: book.translate.xml:51686 msgid "" "<application>alpine</application> has had several remote vulnerabilities " "discovered in the past, which allowed remote attackers to execute arbitrary " @@ -75699,7 +75801,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52077 +#: book.translate.xml:51698 msgid "" "The current version of <application>alpine</application> may be installed " "using the <package>mail/alpine</package> port. Once the port has installed, " @@ -75708,13 +75810,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:52083 +#: book.translate.xml:51704 #, no-wrap msgid "<prompt>%</prompt> <userinput>alpine</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52085 +#: book.translate.xml:51706 msgid "" "The first time <application>alpine</application> runs, it displays a " "greeting page with a brief introduction, as well as a request from the " @@ -75730,13 +75832,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52098 +#: book.translate.xml:51719 msgctxt "_" msgid "external ref='mail/pine1' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52102 +#: book.translate.xml:51723 msgid "" "The main menu is then presented, which can be navigated using the cursor " "keys. This main menu provides shortcuts for the composing new mails, " @@ -75746,7 +75848,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52109 +#: book.translate.xml:51730 msgid "" "The default directory opened by <application>alpine</application> is " "<filename>inbox</filename>. To view the message index, press <keycap>I</" @@ -75759,13 +75861,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52118 +#: book.translate.xml:51739 msgctxt "_" msgid "external ref='mail/pine2' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52122 +#: book.translate.xml:51743 msgid "" "The message index shows messages in the current directory and can be " "navigated by using the cursor keys. Highlighted messages can be read by " @@ -75777,13 +75879,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52129 +#: book.translate.xml:51750 msgctxt "_" msgid "external ref='mail/pine3' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52133 +#: book.translate.xml:51754 msgid "" "In the screenshot below, a sample message is displayed by " "<application>alpine</application>. Contextual keyboard shortcuts are " @@ -75797,13 +75899,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52142 +#: book.translate.xml:51763 msgctxt "_" msgid "external ref='mail/pine4' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52146 +#: book.translate.xml:51767 msgid "" "Replying to an email in <application>alpine</application> is done using the " "<application>pico</application> editor, which is installed by default with " @@ -75822,13 +75924,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:52159 +#: book.translate.xml:51780 msgctxt "_" msgid "external ref='mail/pine5' md5='__failed__'" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52163 +#: book.translate.xml:51784 msgid "" "<application>alpine</application> can be customized using the " "<guimenuitem>SETUP</guimenuitem> option from the main menu. Consult <uri " @@ -75837,17 +75939,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52173 +#: book.translate.xml:51794 msgid "Using <application>fetchmail</application>" msgstr "使用 <application>fetchmail</application>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52186 +#: book.translate.xml:51807 msgid "<primary>fetchmail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52190 +#: book.translate.xml:51811 msgid "" "<application>fetchmail</application> is a full-featured <acronym>IMAP</" "acronym> and <acronym>POP</acronym> client. It allows users to automatically " @@ -75859,7 +75961,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52201 +#: book.translate.xml:51822 msgid "" "Support for the <acronym>POP3</acronym>, <acronym>APOP</acronym>, " "<acronym>KPOP</acronym>, <acronym>IMAP</acronym>, <acronym>ETRN</acronym> " @@ -75867,26 +75969,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52208 +#: book.translate.xml:51829 msgid "" "Ability to forward mail using <acronym>SMTP</acronym>, which allows " "filtering, forwarding, and aliasing to function normally." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52214 +#: book.translate.xml:51835 msgid "May be run in daemon mode to check periodically for new messages." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52219 +#: book.translate.xml:51840 msgid "" "Can retrieve multiple mailboxes and forward them, based on configuration, to " "different local users." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52224 +#: book.translate.xml:51845 msgid "" "This section explains some of the basic features of <application>fetchmail</" "application>. This utility requires a <filename>.fetchmailrc</filename> " @@ -75897,13 +75999,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:52233 +#: book.translate.xml:51854 #, no-wrap msgid "<prompt>%</prompt> <userinput>chmod 600 .fetchmailrc</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52235 +#: book.translate.xml:51856 msgid "" "The following <filename>.fetchmailrc</filename> serves as an example for " "downloading a single user mailbox using <acronym>POP</acronym>. It tells " @@ -75915,13 +76017,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52245 +#: book.translate.xml:51866 #, no-wrap msgid "poll example.com protocol pop3 username \"joesoap\" password \"XXX\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52247 +#: book.translate.xml:51868 msgid "" "The next example connects to multiple <acronym>POP</acronym> and " "<acronym>IMAP</acronym> servers and redirects to different local usernames " @@ -75929,7 +76031,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52251 +#: book.translate.xml:51872 #, no-wrap msgid "" "poll example.com proto pop3:\n" @@ -75940,7 +76042,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52257 +#: book.translate.xml:51878 msgid "" "<application>fetchmail</application> can be run in daemon mode by running it " "with <option>-d</option>, followed by the interval (in seconds) that " @@ -75950,13 +76052,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:52265 +#: book.translate.xml:51886 #, no-wrap msgid "<prompt>%</prompt> <userinput>fetchmail -d 600</userinput>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52267 +#: book.translate.xml:51888 msgid "" "More information on <application>fetchmail</application> can be found at " "<uri xlink:href=\"http://www.fetchmail.info/\">http://www.fetchmail.info/</" @@ -75964,17 +76066,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52273 +#: book.translate.xml:51894 msgid "Using <application>procmail</application>" msgstr "使用 <application>procmail</application>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52286 +#: book.translate.xml:51907 msgid "<primary>procmail</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52290 +#: book.translate.xml:51911 msgid "" "<application>procmail</application> is a powerful application used to filter " "incoming mail. It allows users to define <quote>rules</quote> which can be " @@ -75989,13 +76091,13 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52304 +#: book.translate.xml:51925 #, no-wrap msgid "\"|exec /usr/local/bin/procmail || exit 75\"" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52306 +#: book.translate.xml:51927 msgid "" "The following section displays some basic <application>procmail</" "application> rules, as well as brief descriptions of what they do. Rules " @@ -76004,7 +76106,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52312 +#: book.translate.xml:51933 msgid "" "The majority of these rules can be found in <citerefentry vendor=\"ports" "\"><refentrytitle>procmailex</refentrytitle><manvolnum>5</manvolnum></" @@ -76012,14 +76114,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52315 +#: book.translate.xml:51936 msgid "" "To forward all mail from <email>user@example.com</email> to an external " "address of <email role=\"nolink\">goodmail@example2.com</email>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52318 +#: book.translate.xml:51939 #, no-wrap msgid "" ":0\n" @@ -76028,14 +76130,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52322 +#: book.translate.xml:51943 msgid "" "To forward all mails shorter than 1000 bytes to an external address of " "<email role=\"nolink\">goodmail@example2.com</email>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52325 +#: book.translate.xml:51946 #, no-wrap msgid "" ":0\n" @@ -76044,14 +76146,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52329 +#: book.translate.xml:51950 msgid "" "To send all mail sent to <email>alternate@example.com</email> to a mailbox " "called <filename>alternate</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52333 +#: book.translate.xml:51954 #, no-wrap msgid "" ":0\n" @@ -76060,14 +76162,14 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52337 +#: book.translate.xml:51958 msgid "" "To send all mail with a subject of <quote>Spam</quote> to <filename>/dev/" "null</filename>:" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52340 +#: book.translate.xml:51961 #, no-wrap msgid "" ":0\n" @@ -76076,7 +76178,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52344 +#: book.translate.xml:51965 msgid "" "A useful recipe that parses incoming <systemitem class=\"fqdomainname" "\">FreeBSD.org</systemitem> mailing lists and places each list in its own " @@ -76084,7 +76186,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/programlisting -#: book.translate.xml:52347 +#: book.translate.xml:51968 #, no-wrap msgid "" ":0\n" @@ -76098,12 +76200,12 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:52377 +#: book.translate.xml:51998 msgid "Network Servers" msgstr "網路伺服器" #. (itstool) path: sect1/para -#: book.translate.xml:52382 +#: book.translate.xml:52003 msgid "" "This chapter covers some of the more frequently used network services on " "<trademark class=\"registered\">UNIX</trademark> systems. This includes " @@ -76116,22 +76218,22 @@ msgstr "" "定檔以供參考。" #. (itstool) path: sect1/para -#: book.translate.xml:52388 +#: book.translate.xml:52009 msgid "By the end of this chapter, readers will know:" msgstr "讀完本章,您將了解:" #. (itstool) path: listitem/para -#: book.translate.xml:52392 +#: book.translate.xml:52013 msgid "How to manage the <application>inetd</application> daemon." msgstr "如何管理 <application>inetd</application> Daemon。" #. (itstool) path: listitem/para -#: book.translate.xml:52397 +#: book.translate.xml:52018 msgid "How to set up the Network File System (<acronym>NFS</acronym>)." msgstr "如何設定網路檔案系統 (Network File System, <acronym>NFS</acronym>)。" #. (itstool) path: listitem/para -#: book.translate.xml:52402 +#: book.translate.xml:52023 msgid "" "How to set up the Network Information Server (<acronym>NIS</acronym>) for " "centralizing and sharing user accounts." @@ -76140,23 +76242,23 @@ msgstr "" "來集中管理及共用使用者帳號。" #. (itstool) path: listitem/para -#: book.translate.xml:52408 +#: book.translate.xml:52029 msgid "" "How to set FreeBSD up to act as an <acronym>LDAP</acronym> server or client" msgstr "如何設定 FreeBSD 成為 <acronym>LDAP</acronym> 伺服器或客戶端。" #. (itstool) path: listitem/para -#: book.translate.xml:52413 +#: book.translate.xml:52034 msgid "How to set up automatic network settings using <acronym>DHCP</acronym>." msgstr "如何設定使用 <acronym>DHCP</acronym> 自動網路設定。" #. (itstool) path: listitem/para -#: book.translate.xml:52418 +#: book.translate.xml:52039 msgid "How to set up a Domain Name Server (<acronym>DNS</acronym>)." msgstr "如何設定網域名稱伺服器 (Domain Name Server, <acronym>DNS</acronym>)。" #. (itstool) path: listitem/para -#: book.translate.xml:52423 +#: book.translate.xml:52044 msgid "" "How to set up the <application>Apache</application> <acronym>HTTP</acronym> " "Server." @@ -76164,14 +76266,14 @@ msgstr "" "如何設定 <application>Apache</application> <acronym>HTTP</acronym> 伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:52428 +#: book.translate.xml:52049 msgid "How to set up a File Transfer Protocol (<acronym>FTP</acronym>) server." msgstr "" "如何設定檔案傳輸協定 (File Transfer Protocol, <acronym>FTP</acronym>) 伺服" "器。" #. (itstool) path: listitem/para -#: book.translate.xml:52433 +#: book.translate.xml:52054 msgid "" "How to set up a file and print server for <trademark class=\"registered" "\">Windows</trademark> clients using <application>Samba</application>." @@ -76180,7 +76282,7 @@ msgstr "" "class=\"registered\">Windows</trademark> 客戶端使用。" #. (itstool) path: listitem/para -#: book.translate.xml:52438 +#: book.translate.xml:52059 msgid "" "How to synchronize the time and date, and set up a time server using the " "Network Time Protocol (<acronym>NTP</acronym>)." @@ -76189,38 +76291,38 @@ msgstr "" "acronym>) 設定時間伺服器。" #. (itstool) path: listitem/para -#: book.translate.xml:52444 +#: book.translate.xml:52065 msgid "How to set up <acronym>iSCSI</acronym>." msgstr "如何設定 <acronym>iSCSI</acronym>。" #. (itstool) path: sect1/para -#: book.translate.xml:52448 +#: book.translate.xml:52069 msgid "This chapter assumes a basic knowledge of:" msgstr "本章假設您有以下基礎知識:" #. (itstool) path: listitem/para -#: book.translate.xml:52452 +#: book.translate.xml:52073 msgid "<filename>/etc/rc</filename> scripts." msgstr "<filename>/etc/rc</filename> Script。" #. (itstool) path: listitem/para -#: book.translate.xml:52456 +#: book.translate.xml:52077 msgid "Network terminology." msgstr "網路術語。" #. (itstool) path: listitem/para -#: book.translate.xml:52460 +#: book.translate.xml:52081 msgid "" "Installation of additional third-party software (<xref linkend=\"ports\"/>)." msgstr "安裝其他第三方軟體 (<xref linkend=\"ports\"/>)。" #. (itstool) path: sect1/title -#: book.translate.xml:52467 +#: book.translate.xml:52088 msgid "The <application>inetd</application> Super-Server" msgstr "<application>inetd</application> 超級伺服器" #. (itstool) path: sect1/para -#: book.translate.xml:52488 +#: book.translate.xml:52109 msgid "" "The <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is sometimes referred to as a Super-Server " @@ -76235,7 +76337,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52500 +#: book.translate.xml:52121 msgid "" "Primarily, <application>inetd</application> is used to spawn other daemons, " "but several trivial protocols are handled internally, such as " @@ -76245,19 +76347,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52509 +#: book.translate.xml:52130 msgid "" "This section covers the basics of configuring <application>inetd</" "application>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52513 +#: book.translate.xml:52134 msgid "Configuration File" msgstr "設定檔" #. (itstool) path: sect2/para -#: book.translate.xml:52515 +#: book.translate.xml:52136 msgid "" "Configuration of <application>inetd</application> is done by editing " "<filename>/etc/inetd.conf</filename>. Each line of this configuration file " @@ -76270,7 +76372,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52527 +#: book.translate.xml:52148 msgid "" "After saving your edits, configure <application>inetd</application> to start " "at system boot by editing <filename>/etc/rc.conf</filename>:" @@ -76278,13 +76380,13 @@ msgstr "" #. (itstool) path: sect2/programlisting #. (itstool) path: step/programlisting -#: book.translate.xml:52531 book.translate.xml:65535 +#: book.translate.xml:52152 book.translate.xml:65291 #, no-wrap msgid "inetd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52533 +#: book.translate.xml:52154 msgid "" "To start <application>inetd</application> now, so that it listens for the " "service you configured, type:" @@ -76292,31 +76394,31 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:52536 book.translate.xml:65535 +#: book.translate.xml:52157 book.translate.xml:65313 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52538 +#: book.translate.xml:52159 msgid "" "Once <application>inetd</application> is started, it needs to be notified " "whenever a modification is made to <filename>/etc/inetd.conf</filename>:" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:52543 +#: book.translate.xml:52164 msgid "Reloading the <application>inetd</application> Configuration File" msgstr "重新庫入 <application>inetd</application> 設定檔" #. (itstool) path: example/screen -#: book.translate.xml:52546 +#: book.translate.xml:52167 #, no-wrap msgid "<prompt>#</prompt> <userinput>service inetd reload</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52549 +#: book.translate.xml:52170 msgid "" "Typically, the default entry for an application does not need to be edited " "beyond removing the <literal>#</literal>. In some situations, it may be " @@ -76324,7 +76426,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52554 +#: book.translate.xml:52175 msgid "" "As an example, this is the default entry for " "<citerefentry><refentrytitle>ftpd</refentrytitle><manvolnum>8</manvolnum></" @@ -76332,18 +76434,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:52557 +#: book.translate.xml:52178 #, no-wrap msgid "ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52559 +#: book.translate.xml:52180 msgid "The seven columns in an entry are as follows:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:52561 +#: book.translate.xml:52182 #, no-wrap msgid "" "service-name\n" @@ -76356,17 +76458,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52569 book.translate.xml:65535 +#: book.translate.xml:52190 book.translate.xml:65535 msgid "where:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52573 +#: book.translate.xml:52194 msgid "service-name" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52576 +#: book.translate.xml:52197 msgid "" "The service name of the daemon to start. It must correspond to a service " "listed in <filename>/etc/services</filename>. This determines which port " @@ -76376,12 +76478,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52587 +#: book.translate.xml:52208 msgid "socket-type" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52590 +#: book.translate.xml:52211 msgid "" "Either <literal>stream</literal>, <literal>dgram</literal>, <literal>raw</" "literal>, or <literal>seqpacket</literal>. Use <literal>stream</literal> for " @@ -76390,94 +76492,94 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52600 +#: book.translate.xml:52221 msgid "protocol" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52603 +#: book.translate.xml:52224 msgid "Use one of the following protocol names:" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52609 +#: book.translate.xml:52230 msgid "Protocol Name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52610 +#: book.translate.xml:52231 msgid "Explanation" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52616 +#: book.translate.xml:52237 msgid "tcp or tcp4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52617 +#: book.translate.xml:52238 msgid "TCP IPv4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52621 +#: book.translate.xml:52242 msgid "udp or udp4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52622 +#: book.translate.xml:52243 msgid "<acronym>UDP</acronym> IPv4" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52626 +#: book.translate.xml:52247 msgid "tcp6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52627 +#: book.translate.xml:52248 msgid "TCP IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52631 +#: book.translate.xml:52252 msgid "udp6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52632 +#: book.translate.xml:52253 msgid "<acronym>UDP</acronym> IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52636 +#: book.translate.xml:52257 msgid "tcp46" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52637 +#: book.translate.xml:52258 msgid "Both TCP IPv4 and IPv6" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52641 +#: book.translate.xml:52262 msgid "udp46" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52642 +#: book.translate.xml:52263 msgid "Both <acronym>UDP</acronym> IPv4 and IPv6" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52652 +#: book.translate.xml:52273 msgid "" "{wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-" "ip]]]" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52655 +#: book.translate.xml:52276 msgid "" "In this field, <option>wait</option> or <option>nowait</option> must be " "specified. <option>max-child</option>, <option>max-connections-per-ip-per-" @@ -76485,7 +76587,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52661 +#: book.translate.xml:52282 msgid "" "<option>wait|nowait</option> indicates whether or not the service is able to " "handle its own socket. <option>dgram</option> socket types must use " @@ -76496,7 +76598,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52671 +#: book.translate.xml:52292 msgid "" "The maximum number of child daemons <application>inetd</application> may " "spawn is set by <option>max-child</option>. For example, to limit ten " @@ -76506,7 +76608,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52679 +#: book.translate.xml:52300 msgid "" "<option>max-connections-per-ip-per-minute</option> limits the number of " "connections from any particular <acronym>IP</acronym> address per minute. " @@ -76520,7 +76622,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52693 +#: book.translate.xml:52314 msgid "" "An example can be seen in the default settings for " "<citerefentry><refentrytitle>fingerd</refentrytitle><manvolnum>8</" @@ -76528,18 +76630,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/programlisting -#: book.translate.xml:52696 +#: book.translate.xml:52317 #, no-wrap msgid "finger stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd -k -s" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52701 +#: book.translate.xml:52322 msgid "user" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52704 +#: book.translate.xml:52325 msgid "" "The username the daemon will run as. Daemons typically run as <systemitem " "class=\"username\">root</systemitem>, <systemitem class=\"username\">daemon</" @@ -76547,24 +76649,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52713 +#: book.translate.xml:52334 msgid "server-program" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52716 +#: book.translate.xml:52337 msgid "" "The full path to the daemon. If the daemon is a service provided by " "<application>inetd</application> internally, use <option>internal</option>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52723 +#: book.translate.xml:52344 msgid "server-program-arguments" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52726 +#: book.translate.xml:52347 msgid "" "Used to specify any command arguments to be passed to the daemon on " "invocation. If the daemon is an internal service, use <option>internal</" @@ -76572,12 +76674,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52736 +#: book.translate.xml:52357 msgid "Command-Line Options" msgstr "指令列選項" #. (itstool) path: sect2/para -#: book.translate.xml:52738 +#: book.translate.xml:52359 msgid "" "Like most server daemons, <application>inetd</application> has a number of " "options that can be used to modify its behavior. By default, " @@ -76588,7 +76690,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52746 +#: book.translate.xml:52367 msgid "" "To change the default options which are passed to <application>inetd</" "application>, add an entry for <literal>inetd_flags</literal> in <filename>/" @@ -76597,17 +76699,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52753 +#: book.translate.xml:52374 msgid "The available rate limiting options are:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52757 +#: book.translate.xml:52378 msgid "-c maximum" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52760 +#: book.translate.xml:52381 msgid "" "Specify the default maximum number of simultaneous invocations of each " "service, where the default is unlimited. May be overridden on a per-service " @@ -76616,12 +76718,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52769 +#: book.translate.xml:52390 msgid "-C rate" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52772 +#: book.translate.xml:52393 msgid "" "Specify the default maximum number of times a service can be invoked from a " "single <acronym>IP</acronym> address per minute. May be overridden on a per-" @@ -76630,12 +76732,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52782 +#: book.translate.xml:52403 msgid "-R rate" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52785 +#: book.translate.xml:52406 msgid "" "Specify the maximum number of times a service can be invoked in one minute, " "where the default is <literal>256</literal>. A rate of <literal>0</literal> " @@ -76643,12 +76745,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:52793 +#: book.translate.xml:52414 msgid "-s maximum" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52796 +#: book.translate.xml:52417 msgid "" "Specify the maximum number of times a service can be invoked from a single " "<acronym>IP</acronym> address at any one time, where the default is " @@ -76657,7 +76759,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52806 +#: book.translate.xml:52427 msgid "" "Additional options are available. Refer to " "<citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></" @@ -76665,7 +76767,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52813 +#: book.translate.xml:52434 msgid "" "Many of the daemons which can be managed by <application>inetd</application> " "are not security-conscious. Some daemons, such as <application>fingerd</" @@ -76677,7 +76779,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52824 +#: book.translate.xml:52445 msgid "" "By default, TCP wrappers is enabled. Consult " "<citerefentry><refentrytitle>hosts_access</refentrytitle><manvolnum>5</" @@ -76686,26 +76788,26 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:52833 +#: book.translate.xml:52454 msgid "Network File System (NFS)" msgstr "網路檔案系統 (NFS)" #. (itstool) path: authorgroup/author -#: book.translate.xml:52836 +#: book.translate.xml:52457 msgid "" "<personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:52846 +#: book.translate.xml:52467 msgid "" "<personname> <firstname>Bill</firstname> <surname>Swingle</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52857 +#: book.translate.xml:52478 msgid "" "FreeBSD supports the Network File System (<acronym>NFS</acronym>), which " "allows a server to share directories and files with clients over a network. " @@ -76714,21 +76816,21 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52863 +#: book.translate.xml:52484 msgid "" "<acronym>NFS</acronym> has many practical uses. Some of the more common uses " "include:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52868 +#: book.translate.xml:52489 msgid "" "Data that would otherwise be duplicated on each client can be kept in a " "single location and accessed by clients on the network." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52874 +#: book.translate.xml:52495 msgid "" "Several clients may need access to the <filename>/usr/ports/distfiles</" "filename> directory. Sharing that directory allows for quick access to the " @@ -76736,7 +76838,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52882 +#: book.translate.xml:52503 msgid "" "On large networks, it is often more convenient to configure a central " "<acronym>NFS</acronym> server on which all user home directories are stored. " @@ -76745,14 +76847,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52890 +#: book.translate.xml:52511 msgid "" "Administration of <acronym>NFS</acronym> exports is simplified. For example, " "there is only one file system where security or backup policies must be set." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:52896 +#: book.translate.xml:52517 msgid "" "Removable media storage devices can be used by other machines on the " "network. This reduces the number of devices throughout the network and " @@ -76762,7 +76864,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52905 +#: book.translate.xml:52526 msgid "" "<acronym>NFS</acronym> consists of a server and one or more clients. The " "client remotely accesses the data that is stored on the server machine. In " @@ -76771,79 +76873,79 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52910 +#: book.translate.xml:52531 msgid "These daemons must be running on the server:" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52911 +#: book.translate.xml:52532 msgid "<primary>NFS</primary> <secondary>server</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52915 +#: book.translate.xml:52536 msgid "<primary>file server</primary> <secondary>UNIX clients</secondary>" msgstr "" #. (itstool) path: sect1/indexterm #. (itstool) path: sect2/indexterm -#: book.translate.xml:52920 book.translate.xml:53428 +#: book.translate.xml:52541 book.translate.xml:53049 msgid "<primary><application>rpcbind</application></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52923 +#: book.translate.xml:52544 msgid "<primary><application>mountd</application></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:52926 +#: book.translate.xml:52547 msgid "<primary><application>nfsd</application></primary>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52937 +#: book.translate.xml:52558 msgid "Daemon" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52944 +#: book.translate.xml:52565 msgid "<application>nfsd</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52945 +#: book.translate.xml:52566 msgid "" "The <acronym>NFS</acronym> daemon which services requests from <acronym>NFS</" "acronym> clients." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52950 +#: book.translate.xml:52571 msgid "<application>mountd</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52951 +#: book.translate.xml:52572 msgid "" "The <acronym>NFS</acronym> mount daemon which carries out requests received " "from <application>nfsd</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52957 +#: book.translate.xml:52578 msgid "<application>rpcbind</application>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:52958 +#: book.translate.xml:52579 msgid "" "This daemon allows <acronym>NFS</acronym> clients to discover which port the " "<acronym>NFS</acronym> server is using." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:52966 +#: book.translate.xml:52587 msgid "" "Running <citerefentry><refentrytitle>nfsiod</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> on the client can improve performance, but is not " @@ -76851,17 +76953,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:52970 +#: book.translate.xml:52591 msgid "Configuring the Server" msgstr "設定伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:52972 +#: book.translate.xml:52593 msgid "<primary>NFS</primary> <secondary>configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52977 +#: book.translate.xml:52598 msgid "" "The file systems which the <acronym>NFS</acronym> server will share are " "specified in <filename>/etc/exports</filename>. Each line in this file " @@ -76873,12 +76975,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:52986 +#: book.translate.xml:52607 msgid "<primary>NFS</primary> <secondary>export examples</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52991 +#: book.translate.xml:52612 msgid "" "The following <filename>/etc/exports</filename> entries demonstrate how to " "export file systems. The examples can be modified to match the file systems " @@ -76889,7 +76991,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:52998 +#: book.translate.xml:52619 msgid "" "This example shows how to export <filename>/cdrom</filename> to three hosts " "named <replaceable>alpha</replaceable>, <replaceable>bravo</replaceable>, " @@ -76897,13 +76999,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53004 +#: book.translate.xml:52625 #, no-wrap msgid "/cdrom -ro <replaceable>alpha</replaceable> <replaceable>bravo</replaceable> <replaceable>charlie</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53006 +#: book.translate.xml:52627 msgid "" "The <literal>-ro</literal> flag makes the file system read-only, preventing " "clients from making any changes to the exported file system. This example " @@ -76914,7 +77016,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53014 +#: book.translate.xml:52635 msgid "" "The next example exports <filename>/home</filename> to three clients by " "<acronym>IP</acronym> address. This can be useful for networks without " @@ -76925,13 +77027,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53023 +#: book.translate.xml:52644 #, no-wrap msgid "/usr/home -alldirs 10.0.0.2 10.0.0.3 10.0.0.4" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53025 +#: book.translate.xml:52646 msgid "" "This next example exports <filename>/a</filename> so that two clients from " "different domains may access that file system. The <option>-maproot=root</" @@ -76945,13 +77047,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53034 +#: book.translate.xml:52655 #, no-wrap msgid "/a -maproot=root host.example.com box.example.org" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53036 +#: book.translate.xml:52657 msgid "" "A client can only be specified once per file system. For example, if " "<filename>/usr</filename> is a single file system, these entries would be " @@ -76959,7 +77061,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53041 +#: book.translate.xml:52662 #, no-wrap msgid "" "# Invalid when /usr is one file system\n" @@ -76968,25 +77070,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53045 +#: book.translate.xml:52666 msgid "The correct format for this situation is to use one entry:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53048 +#: book.translate.xml:52669 #, no-wrap msgid "/usr/src /usr/ports client" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53050 +#: book.translate.xml:52671 msgid "" "The following is an example of a valid export list, where <filename>/usr</" "filename> and <filename>/exports</filename> are local file systems:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53054 +#: book.translate.xml:52675 #, no-wrap msgid "" "# Export src and ports to client01 and client02, but only\n" @@ -77000,14 +77102,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53063 +#: book.translate.xml:52684 msgid "" "To enable the processes required by the <acronym>NFS</acronym> server at " "boot time, add these options to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53067 +#: book.translate.xml:52688 #, no-wrap msgid "" "rpcbind_enable=\"YES\"\n" @@ -77016,19 +77118,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53071 +#: book.translate.xml:52692 msgid "The server can be started now by running this command:" msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: step/screen -#: book.translate.xml:53074 book.translate.xml:65535 +#: book.translate.xml:52695 book.translate.xml:65284 #, no-wrap msgid "<prompt>#</prompt> <userinput>service nfsd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53076 +#: book.translate.xml:52697 msgid "" "Whenever the <acronym>NFS</acronym> server is started, <application>mountd</" "application> also starts automatically. However, <application>mountd</" @@ -77038,42 +77140,42 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53084 +#: book.translate.xml:52705 #, no-wrap msgid "<prompt>#</prompt> <userinput>service mountd reload</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53088 +#: book.translate.xml:52709 msgid "Configuring the Client" msgstr "設定客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:53090 +#: book.translate.xml:52711 msgid "" "To enable <acronym>NFS</acronym> clients, set this option in each client's " "<filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53093 +#: book.translate.xml:52714 #, no-wrap msgid "nfs_client_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53095 +#: book.translate.xml:52716 msgid "Then, run this command on each <acronym>NFS</acronym> client:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53098 +#: book.translate.xml:52719 #, no-wrap msgid "<prompt>#</prompt> <userinput>service nfsclient start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53100 +#: book.translate.xml:52721 msgid "" "The client now has everything it needs to mount a remote file system. In " "these examples, the server's name is <systemitem>server</systemitem> and the " @@ -77083,18 +77185,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53109 +#: book.translate.xml:52730 msgid "<primary>NFS</primary> <secondary>mounting</secondary>" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53113 +#: book.translate.xml:52734 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount server:/home /mnt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53115 +#: book.translate.xml:52736 msgid "" "The files and directories in <filename>/home</filename> will now be " "available on <systemitem>client</systemitem>, in the <filename>/mnt</" @@ -77102,32 +77204,32 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53120 +#: book.translate.xml:52741 msgid "" "To mount a remote file system each time the client boots, add it to " "<filename>/etc/fstab</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53123 +#: book.translate.xml:52744 #, no-wrap msgid "server:/home\t/mnt\tnfs\trw\t0\t0" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53125 +#: book.translate.xml:52746 msgid "" "Refer to <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> for a description of all available options." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53130 +#: book.translate.xml:52751 msgid "Locking" msgstr "鎖定" #. (itstool) path: sect2/para -#: book.translate.xml:53132 +#: book.translate.xml:52753 msgid "" "Some applications require file locking to operate correctly. To enable " "locking, add these lines to <filename>/etc/rc.conf</filename> on both the " @@ -77135,7 +77237,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53137 +#: book.translate.xml:52758 #, no-wrap msgid "" "rpc_lockd_enable=\"YES\"\n" @@ -77143,12 +77245,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53140 +#: book.translate.xml:52761 msgid "Then start the applications:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53142 +#: book.translate.xml:52763 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service lockd start</userinput>\n" @@ -77156,7 +77258,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53145 +#: book.translate.xml:52766 msgid "" "If locking is not required on the server, the <acronym>NFS</acronym> client " "can be configured to lock locally by including <option>-L</option> when " @@ -77166,7 +77268,7 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:53154 +#: book.translate.xml:52775 msgid "" "Automating Mounts with <citerefentry><refentrytitle>amd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>" @@ -77175,31 +77277,31 @@ msgstr "" "manvolnum></citerefentry> 自動掛載" #. (itstool) path: authorgroup/author -#: book.translate.xml:53157 +#: book.translate.xml:52778 msgid "" "<personname> <firstname>Wylie</firstname> <surname>Stilwell</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:53167 +#: book.translate.xml:52788 msgid "" "<personname> <firstname>Chern</firstname> <surname>Lee</surname> </" "personname> <contrib>Rewritten by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53177 +#: book.translate.xml:52798 msgid "<primary>amd</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53178 +#: book.translate.xml:52799 msgid "<primary>automatic mounter daemon</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53182 +#: book.translate.xml:52803 msgid "" "The automatic mounter daemon, <application>amd</application>, automatically " "mounts a remote file system whenever a file or directory within that file " @@ -77208,7 +77310,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53189 +#: book.translate.xml:52810 msgid "" "This daemon provides an alternative to modifying <filename>/etc/fstab</" "filename> to list every client. It operates by attaching itself as an " @@ -77224,12 +77326,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:53207 +#: book.translate.xml:52828 msgid "Mounting an Export with <application>amd</application>" msgstr "使用 <application>amd</application> 掛載 Export" #. (itstool) path: example/para -#: book.translate.xml:53210 +#: book.translate.xml:52831 msgid "" "In this example, <command>showmount -e</command> shows the exported file " "systems that can be mounted from the <acronym>NFS</acronym> server, " @@ -77237,7 +77339,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:53215 +#: book.translate.xml:52836 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>showmount -e foobar</userinput>\n" @@ -77248,7 +77350,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53222 +#: book.translate.xml:52843 msgid "" "The output from <command>showmount</command> shows <filename>/usr</filename> " "as an export. When changing directories to <filename>/host/foobar/usr</" @@ -77259,31 +77361,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53231 +#: book.translate.xml:52852 msgid "" "To enable <application>amd</application> at boot time, add this line to " "<filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53234 +#: book.translate.xml:52855 #, no-wrap msgid "amd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53236 +#: book.translate.xml:52857 msgid "To start <application>amd</application> now:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53238 +#: book.translate.xml:52859 #, no-wrap msgid "<prompt>#</prompt> <userinput>service amd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53240 +#: book.translate.xml:52861 msgid "" "Custom flags can be passed to <application>amd</application> from the " "<varname>amd_flags</varname> environment variable. By default, " @@ -77291,13 +77393,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53245 +#: book.translate.xml:52866 #, no-wrap msgid "amd_flags=\"-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53247 +#: book.translate.xml:52868 msgid "" "The default options with which exports are mounted are defined in <filename>/" "etc/amd.map</filename>. Some of the more advanced features of " @@ -77306,7 +77408,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53252 +#: book.translate.xml:52873 msgid "" "Consult <citerefentry><refentrytitle>amd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> and <citerefentry><refentrytitle>amd.conf</" @@ -77314,7 +77416,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53257 +#: book.translate.xml:52878 msgid "" "Automating Mounts with <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>" @@ -77323,7 +77425,7 @@ msgstr "" "manvolnum></citerefentry> 自動掛載" #. (itstool) path: note/para -#: book.translate.xml:53260 +#: book.translate.xml:52881 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> automount facility is supported starting with " @@ -77335,17 +77437,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53268 +#: book.translate.xml:52889 msgid "<primary>autofs</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53269 +#: book.translate.xml:52890 msgid "<primary>automounter subsystem</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53273 +#: book.translate.xml:52894 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> facility is a common name for several components " @@ -77366,7 +77468,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53286 +#: book.translate.xml:52907 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> virtual filesystem is mounted on specified " @@ -77376,7 +77478,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53290 +#: book.translate.xml:52911 msgid "" "Whenever a process attempts to access file within the " "<citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</manvolnum></" @@ -77393,7 +77495,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53300 +#: book.translate.xml:52921 msgid "" "The primary autofs configuration file is <filename>/etc/auto_master</" "filename>. It assigns individual maps to top-level mounts. For an " @@ -77403,7 +77505,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53306 +#: book.translate.xml:52927 msgid "" "There is a special automounter map mounted on <filename>/net</filename>. " "When a file is accessed within this directory, " @@ -77417,7 +77519,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:53316 +#: book.translate.xml:52937 msgid "" "Mounting an Export with <citerefentry><refentrytitle>autofs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry>" @@ -77426,7 +77528,7 @@ msgstr "" "manvolnum></citerefentry> 掛載 Export" #. (itstool) path: example/para -#: book.translate.xml:53318 +#: book.translate.xml:52939 msgid "" "In this example, <command>showmount -e</command> shows the exported file " "systems that can be mounted from the <acronym>NFS</acronym> server, " @@ -77434,7 +77536,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:53323 +#: book.translate.xml:52944 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>showmount -e foobar</userinput>\n" @@ -77445,7 +77547,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53330 +#: book.translate.xml:52951 msgid "" "The output from <command>showmount</command> shows <filename>/usr</filename> " "as an export. When changing directories to <filename>/host/foobar/usr</" @@ -77458,7 +77560,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53338 +#: book.translate.xml:52959 msgid "" "To enable <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> at boot time, add this line to <filename>/etc/rc." @@ -77466,14 +77568,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53343 +#: book.translate.xml:52964 msgid "" "Then <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> can be started by running:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53345 +#: book.translate.xml:52966 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service automount start</userinput>\n" @@ -77482,7 +77584,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53349 +#: book.translate.xml:52970 msgid "" "The <citerefentry><refentrytitle>autofs</refentrytitle><manvolnum>5</" "manvolnum></citerefentry> map format is the same as in other operating " @@ -77492,7 +77594,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53354 +#: book.translate.xml:52975 msgid "" "Consult the <citerefentry><refentrytitle>automount</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, " @@ -77504,47 +77606,47 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:53383 +#: book.translate.xml:53004 msgid "Network Information System (<acronym>NIS</acronym>)" msgstr "網路資訊系統 (<acronym>NIS</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53386 +#: book.translate.xml:53007 msgid "<primary>NIS</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53388 +#: book.translate.xml:53009 msgid "<primary>HP-UX</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53389 +#: book.translate.xml:53010 msgid "<primary>AIX</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53390 +#: book.translate.xml:53011 msgid "<primary>Linux</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53391 +#: book.translate.xml:53012 msgid "<primary>NetBSD</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53392 +#: book.translate.xml:53013 msgid "<primary>OpenBSD</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53393 +#: book.translate.xml:53014 msgid "<primary>yellow pages</primary> <see>NIS</see>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53398 +#: book.translate.xml:53019 msgid "" "Network Information System (<acronym>NIS</acronym>) is designed to " "centralize administration of <trademark class=\"registered\">UNIX</" @@ -77556,12 +77658,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:53406 +#: book.translate.xml:53027 msgid "<primary>NIS</primary> <secondary>domains</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53411 +#: book.translate.xml:53032 msgid "" "<acronym>NIS</acronym> is a Remote Procedure Call (<acronym>RPC</acronym>)-" "based client/server system that allows a group of machines within an " @@ -77572,44 +77674,44 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:53419 +#: book.translate.xml:53040 msgid "FreeBSD uses version 2 of the <acronym>NIS</acronym> protocol." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53423 +#: book.translate.xml:53044 msgid "<acronym>NIS</acronym> Terms and Processes" msgstr "<acronym>NIS</acronym> 術語與程序" #. (itstool) path: sect2/para -#: book.translate.xml:53425 +#: book.translate.xml:53046 msgid "" "Table 28.1 summarizes the terms and important processes used by " "<acronym>NIS</acronym>:" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53431 +#: book.translate.xml:53052 msgid "<primary><application>portmap</application></primary>" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:53436 +#: book.translate.xml:53057 msgid "<acronym>NIS</acronym> Terminology" msgstr "<acronym>NIS</acronym> 術語" #. (itstool) path: row/entry -#: book.translate.xml:53444 book.translate.xml:55339 +#: book.translate.xml:53065 book.translate.xml:54960 msgid "Term" msgstr "術語" #. (itstool) path: row/entry -#: book.translate.xml:53451 +#: book.translate.xml:53072 msgid "<acronym>NIS</acronym> domain name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53453 +#: book.translate.xml:53074 msgid "" "<acronym>NIS</acronym> servers and clients share an <acronym>NIS</acronym> " "domain name. Typically, this name does not have anything to do with " @@ -77617,14 +77719,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53460 +#: book.translate.xml:53081 msgid "" "<citerefentry><refentrytitle>rpcbind</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53462 +#: book.translate.xml:53083 msgid "" "This service enables <acronym>RPC</acronym> and must be running in order to " "run an <acronym>NIS</acronym> server or act as an <acronym>NIS</acronym> " @@ -77632,14 +77734,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53469 +#: book.translate.xml:53090 msgid "" "<citerefentry><refentrytitle>ypbind</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53470 +#: book.translate.xml:53091 msgid "" "This service binds an <acronym>NIS</acronym> client to its <acronym>NIS</" "acronym> server. It will take the <acronym>NIS</acronym> domain name and use " @@ -77650,14 +77752,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53482 +#: book.translate.xml:53103 msgid "" "<citerefentry><refentrytitle>ypserv</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53483 +#: book.translate.xml:53104 msgid "" "This is the process for the <acronym>NIS</acronym> server. If this service " "stops running, the server will no longer be able to respond to <acronym>NIS</" @@ -77668,14 +77770,14 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53495 +#: book.translate.xml:53116 msgid "" "<citerefentry><refentrytitle>rpc.yppasswdd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53496 +#: book.translate.xml:53117 msgid "" "This process only runs on <acronym>NIS</acronym> master servers. This daemon " "allows <acronym>NIS</acronym> clients to change their <acronym>NIS</acronym> " @@ -77684,38 +77786,38 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53512 +#: book.translate.xml:53133 msgid "Machine Types" msgstr "主機類型" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53514 +#: book.translate.xml:53135 msgid "<primary>NIS</primary> <secondary>master server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53517 book.translate.xml:53874 +#: book.translate.xml:53138 book.translate.xml:53495 msgid "<primary>NIS</primary> <secondary>slave server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53520 +#: book.translate.xml:53141 msgid "<primary>NIS</primary> <secondary>client</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53524 +#: book.translate.xml:53145 msgid "" "There are three types of hosts in an <acronym>NIS</acronym> environment:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53529 +#: book.translate.xml:53150 msgid "<acronym>NIS</acronym> master server" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53531 +#: book.translate.xml:53152 msgid "" "This server acts as a central repository for host configuration information " "and maintains the authoritative copy of the files used by all of the " @@ -77729,12 +77831,12 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53546 +#: book.translate.xml:53167 msgid "<acronym>NIS</acronym> slave servers" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53548 +#: book.translate.xml:53169 msgid "" "<acronym>NIS</acronym> slave servers maintain copies of the <acronym>NIS</" "acronym> master's data files in order to provide redundancy. Slave servers " @@ -77744,19 +77846,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53558 +#: book.translate.xml:53179 msgid "<acronym>NIS</acronym> clients" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:53560 +#: book.translate.xml:53181 msgid "" "<acronym>NIS</acronym> clients authenticate against the <acronym>NIS</" "acronym> server during log on." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53566 +#: book.translate.xml:53187 msgid "" "Information in many files can be shared using <acronym>NIS</acronym>. The " "<filename>master.passwd</filename>, <filename>group</filename>, and " @@ -77767,12 +77869,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53578 +#: book.translate.xml:53199 msgid "Planning Considerations" msgstr "規劃注意事項" #. (itstool) path: sect2/para -#: book.translate.xml:53580 +#: book.translate.xml:53201 msgid "" "This section describes a sample <acronym>NIS</acronym> environment which " "consists of 15 FreeBSD machines with no centralized point of administration. " @@ -77783,97 +77885,97 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53589 +#: book.translate.xml:53210 msgid "The configuration of the lab will be as follows:" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53595 +#: book.translate.xml:53216 msgid "Machine name" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53597 +#: book.translate.xml:53218 msgid "Machine role" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53603 +#: book.translate.xml:53224 msgid "<systemitem>ellington</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53604 +#: book.translate.xml:53225 msgid "<systemitem class=\"ipaddress\">10.0.0.2</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53605 +#: book.translate.xml:53226 msgid "<acronym>NIS</acronym> master" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53609 +#: book.translate.xml:53230 msgid "<systemitem>coltrane</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53610 +#: book.translate.xml:53231 msgid "<systemitem class=\"ipaddress\">10.0.0.3</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53611 +#: book.translate.xml:53232 msgid "<acronym>NIS</acronym> slave" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53615 +#: book.translate.xml:53236 msgid "<systemitem>basie</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53616 +#: book.translate.xml:53237 msgid "<systemitem class=\"ipaddress\">10.0.0.4</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53617 +#: book.translate.xml:53238 msgid "Faculty workstation" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53621 +#: book.translate.xml:53242 msgid "<systemitem>bird</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53622 +#: book.translate.xml:53243 msgid "<systemitem class=\"ipaddress\">10.0.0.5</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53623 +#: book.translate.xml:53244 msgid "Client machine" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53627 +#: book.translate.xml:53248 msgid "<systemitem>cli[1-11]</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53628 +#: book.translate.xml:53249 msgid "<systemitem class=\"ipaddress\">10.0.0.[6-17]</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:53630 +#: book.translate.xml:53251 msgid "Other client machines" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53636 +#: book.translate.xml:53257 msgid "" "If this is the first time an <acronym>NIS</acronym> scheme is being " "developed, it should be thoroughly planned ahead of time. Regardless of " @@ -77882,17 +77984,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53642 +#: book.translate.xml:53263 msgid "Choosing a <acronym>NIS</acronym> Domain Name" msgstr "選擇 <acronym>NIS</acronym> 網域名稱" #. (itstool) path: sect3/indexterm -#: book.translate.xml:53644 +#: book.translate.xml:53265 msgid "<primary>NIS</primary> <secondary>domain name</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53648 +#: book.translate.xml:53269 msgid "" "When a client broadcasts its requests for info, it includes the name of the " "<acronym>NIS</acronym> domain that it is part of. This is how multiple " @@ -77902,7 +78004,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53655 +#: book.translate.xml:53276 msgid "" "Some organizations choose to use their Internet domain name for their " "<acronym>NIS</acronym> domain name. This is not recommended as it can cause " @@ -77915,7 +78017,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53666 +#: book.translate.xml:53287 msgid "" "However, some non-FreeBSD operating systems require the <acronym>NIS</" "acronym> domain name to be the same as the Internet domain name. If one or " @@ -77924,12 +78026,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53675 +#: book.translate.xml:53296 msgid "Physical Server Requirements" msgstr "實體伺服器需求" #. (itstool) path: sect3/para -#: book.translate.xml:53677 +#: book.translate.xml:53298 msgid "" "There are several things to keep in mind when choosing a machine to use as a " "<acronym>NIS</acronym> server. Since <acronym>NIS</acronym> clients depend " @@ -77943,12 +78045,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53693 +#: book.translate.xml:53314 msgid "Configuring the <acronym>NIS</acronym> Master Server" msgstr "設定 <acronym>NIS</acronym> Master 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:53696 +#: book.translate.xml:53317 msgid "" "The canonical copies of all <acronym>NIS</acronym> files are stored on the " "master server. The databases used to store the information are called " @@ -77960,7 +78062,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53707 +#: book.translate.xml:53328 msgid "" "<acronym>NIS</acronym> master and slave servers handle all <acronym>NIS</" "acronym> requests through <citerefentry><refentrytitle>ypserv</" @@ -77972,12 +78074,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53715 +#: book.translate.xml:53336 msgid "<primary>NIS</primary> <secondary>server configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53718 +#: book.translate.xml:53339 msgid "" "Setting up a master <acronym>NIS</acronym> server can be relatively straight " "forward, depending on environmental needs. Since FreeBSD provides built-in " @@ -77986,7 +78088,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53724 +#: book.translate.xml:53345 #, no-wrap msgid "" "nisdomainname=\"test-domain\"\t<co xml:id=\"network-nis-co-domainname\"/>\n" @@ -77995,21 +78097,21 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:53730 +#: book.translate.xml:53351 msgid "" "This line sets the <acronym>NIS</acronym> domain name to <literal>test-" "domain</literal>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:53735 +#: book.translate.xml:53356 msgid "" "This automates the start up of the <acronym>NIS</acronym> server processes " "when the system boots." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:53741 +#: book.translate.xml:53362 msgid "" "This enables the <citerefentry><refentrytitle>rpc.yppasswdd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon so that users " @@ -78017,7 +78119,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53747 +#: book.translate.xml:53368 msgid "" "Care must be taken in a multi-server domain where the server machines are " "also <acronym>NIS</acronym> clients. It is generally a good idea to force " @@ -78030,14 +78132,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53759 +#: book.translate.xml:53380 msgid "" "A server that is also a client can be forced to bind to a particular server " "by adding these additional lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53763 +#: book.translate.xml:53384 #, no-wrap msgid "" "nis_client_enable=\"YES\" # run client stuff as well\n" @@ -78045,7 +78147,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53766 +#: book.translate.xml:53387 msgid "" "After saving the edits, type <command>/etc/netstart</command> to restart the " "network and apply the values defined in <filename>/etc/rc.conf</filename>. " @@ -78055,23 +78157,23 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53772 +#: book.translate.xml:53393 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ypserv start</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53775 +#: book.translate.xml:53396 msgid "Initializing the <acronym>NIS</acronym> Maps" msgstr "初始化 <acronym>NIS</acronym> 對應表" #. (itstool) path: sect3/indexterm -#: book.translate.xml:53777 +#: book.translate.xml:53398 msgid "<primary>NIS</primary> <secondary>maps</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53781 +#: book.translate.xml:53402 msgid "" "<acronym>NIS</acronym> maps are generated from the configuration files in " "<filename>/etc</filename> on the <acronym>NIS</acronym> master, with one " @@ -78082,7 +78184,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53790 +#: book.translate.xml:53411 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>cp /etc/master.passwd /var/yp/master.passwd</userinput>\n" @@ -78091,7 +78193,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53794 +#: book.translate.xml:53415 msgid "" "It is advisable to remove all entries for system accounts as well as any " "user accounts that do not need to be propagated to the <acronym>NIS</" @@ -78100,14 +78202,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:53801 +#: book.translate.xml:53422 msgid "" "Ensure that the <filename>/var/yp/master.passwd</filename> is neither group " "or world readable by setting its permissions to <literal>600</literal>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53807 +#: book.translate.xml:53428 msgid "" "After completing this task, initialize the <acronym>NIS</acronym> maps. " "FreeBSD includes the <citerefentry><refentrytitle>ypinit</" @@ -78117,7 +78219,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53813 +#: book.translate.xml:53434 #, no-wrap msgid "" "ellington<prompt>#</prompt> <userinput>ypinit -m test-domain</userinput>\n" @@ -78146,7 +78248,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53837 +#: book.translate.xml:53458 msgid "" "This will create <filename>/var/yp/Makefile</filename> from <filename>/var/" "yp/Makefile.dist</filename>. By default, this file assumes that the " @@ -78157,18 +78259,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:53846 +#: book.translate.xml:53467 #, no-wrap msgid "NOPUSH = \"True\"" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:53850 +#: book.translate.xml:53471 msgid "Adding New Users" msgstr "新增使用者" #. (itstool) path: sect3/para -#: book.translate.xml:53852 +#: book.translate.xml:53473 msgid "" "Every time a new user is created, the user account must be added to the " "master <acronym>NIS</acronym> server and the <acronym>NIS</acronym> maps " @@ -78179,7 +78281,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:53861 +#: book.translate.xml:53482 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>pw useradd jsmith</userinput>\n" @@ -78188,19 +78290,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:53865 +#: book.translate.xml:53486 msgid "" "The user could also be added using <command>adduser jsmith</command> instead " "of <command>pw useradd smith</command>." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53872 +#: book.translate.xml:53493 msgid "Setting up a <acronym>NIS</acronym> Slave Server" msgstr "設定 <acronym>NIS</acronym> Slave 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:53878 +#: book.translate.xml:53499 msgid "" "To set up an <acronym>NIS</acronym> slave server, log on to the slave server " "and edit <filename>/etc/rc.conf</filename> as for the master server. Do not " @@ -78212,7 +78314,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:53888 +#: book.translate.xml:53509 #, no-wrap msgid "" "coltrane<prompt>#</prompt> <userinput>ypinit -s ellington test-domain</userinput>\n" @@ -78274,7 +78376,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53945 +#: book.translate.xml:53566 msgid "" "This will generate a directory on the slave server called <filename>/var/yp/" "test-domain</filename> which contains copies of the <acronym>NIS</acronym> " @@ -78284,7 +78386,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:53952 +#: book.translate.xml:53573 #, no-wrap msgid "" "20 * * * * root /usr/libexec/ypxfr passwd.byname\n" @@ -78292,7 +78394,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53955 +#: book.translate.xml:53576 msgid "" "These entries are not mandatory because the master server automatically " "attempts to push any map changes to its slaves. However, since clients may " @@ -78302,19 +78404,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53963 +#: book.translate.xml:53584 msgid "" "To finish the configuration, run <command>/etc/netstart</command> on the " "slave server in order to start the <acronym>NIS</acronym> services." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:53969 +#: book.translate.xml:53590 msgid "Setting Up an <acronym>NIS</acronym> Client" msgstr "設定 <acronym>NIS</acronym> 客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:53971 +#: book.translate.xml:53592 msgid "" "An <acronym>NIS</acronym> client binds to an <acronym>NIS</acronym> server " "using <citerefentry><refentrytitle>ypbind</refentrytitle><manvolnum>8</" @@ -78333,17 +78435,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:53989 +#: book.translate.xml:53610 msgid "<primary>NIS</primary> <secondary>client configuration</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:53993 +#: book.translate.xml:53614 msgid "To configure a FreeBSD machine to be an <acronym>NIS</acronym> client:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:53998 +#: book.translate.xml:53619 msgid "" "Edit <filename>/etc/rc.conf</filename> and add the following lines in order " "to set the <acronym>NIS</acronym> domain name and start " @@ -78352,7 +78454,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:54003 +#: book.translate.xml:53624 #, no-wrap msgid "" "nisdomainname=\"test-domain\"\n" @@ -78360,7 +78462,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54008 +#: book.translate.xml:53629 msgid "" "To import all possible password entries from the <acronym>NIS</acronym> " "server, use <command>vipw</command> to remove all user accounts except one " @@ -78374,13 +78476,13 @@ msgstr "" #. (itstool) path: step/programlisting #. (itstool) path: sect2/programlisting -#: book.translate.xml:54020 book.translate.xml:54393 +#: book.translate.xml:53641 book.translate.xml:54014 #, no-wrap msgid "+:::::::::" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54022 +#: book.translate.xml:53643 msgid "" "This line configures the client to provide anyone with a valid account in " "the <acronym>NIS</acronym> server's password maps an account on the client. " @@ -78391,27 +78493,27 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:54033 +#: book.translate.xml:53654 msgid "" "To import all possible group entries from the <acronym>NIS</acronym> server, " "add this line to <filename>/etc/group</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:54037 +#: book.translate.xml:53658 #, no-wrap msgid "+:*::" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54041 +#: book.translate.xml:53662 msgid "" "To start the <acronym>NIS</acronym> client immediately, execute the " "following commands as the superuser:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54044 +#: book.translate.xml:53665 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>/etc/netstart</userinput>\n" @@ -78419,19 +78521,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54047 +#: book.translate.xml:53668 msgid "" "After completing these steps, running <command>ypcat passwd</command> on the " "client should show the server's <filename>passwd</filename> map." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:54053 +#: book.translate.xml:53674 msgid "<acronym>NIS</acronym> Security" msgstr "<acronym>NIS</acronym> 安全性" #. (itstool) path: sect2/para -#: book.translate.xml:54055 +#: book.translate.xml:53676 msgid "" "Since <acronym>RPC</acronym> is a broadcast-based service, any system " "running <application>ypbind</application> within the same domain can " @@ -78449,7 +78551,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54070 +#: book.translate.xml:53691 #, no-wrap msgid "" "# allow connections from local host -- mandatory\n" @@ -78464,7 +78566,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54080 +#: book.translate.xml:53701 msgid "" "If <citerefentry><refentrytitle>ypserv</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> receives a request from an address that matches " @@ -78475,7 +78577,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54088 +#: book.translate.xml:53709 msgid "" "<xref linkend=\"tcpwrappers\"/> is an alternate mechanism for providing " "access control instead of <filename>securenets</filename>. While either " @@ -78485,7 +78587,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54096 +#: book.translate.xml:53717 msgid "" "Servers using <filename>securenets</filename> may fail to serve legitimate " "<acronym>NIS</acronym> clients with archaic TCP/IP implementations. Some of " @@ -78497,7 +78599,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54108 +#: book.translate.xml:53729 msgid "" "The use of <application>TCP Wrapper</application> increases the latency of " "the <acronym>NIS</acronym> server. The additional delay may be long enough " @@ -78508,12 +78610,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:54118 +#: book.translate.xml:53739 msgid "Barring Some Users" msgstr "阻擋部份使用者" #. (itstool) path: sect3/para -#: book.translate.xml:54120 +#: book.translate.xml:53741 msgid "" "In this example, the <systemitem>basie</systemitem> system is a faculty " "workstation within the <acronym>NIS</acronym> domain. The <filename>passwd</" @@ -78523,7 +78625,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:54129 +#: book.translate.xml:53750 msgid "" "To prevent specified users from logging on to a system, even if they are " "present in the <acronym>NIS</acronym> database, use <command>vipw</command> " @@ -78537,7 +78639,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:54142 +#: book.translate.xml:53763 #, no-wrap msgid "" "basie<prompt>#</prompt> <userinput>cat /etc/master.passwd</userinput>\n" @@ -78563,17 +78665,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:54178 +#: book.translate.xml:53799 msgid "Using Netgroups" msgstr "使用 Netgroups" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54180 book.translate.xml:54346 +#: book.translate.xml:53801 book.translate.xml:53967 msgid "<primary>netgroups</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54182 +#: book.translate.xml:53803 msgid "" "Barring specified users from logging on to individual systems becomes " "unscaleable on larger networks and quickly loses the main benefit of " @@ -78581,7 +78683,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54187 +#: book.translate.xml:53808 msgid "" "Netgroups were developed to handle large, complex networks with hundreds of " "users and machines. Their use is comparable to <trademark class=\"registered" @@ -78591,7 +78693,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54193 +#: book.translate.xml:53814 msgid "" "To expand on the example used in this chapter, the <acronym>NIS</acronym> " "domain will be extended to add the users and systems shown in Tables 28.2 " @@ -78599,41 +78701,41 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:54198 +#: book.translate.xml:53819 msgid "Additional Users" msgstr "其他使用者" #. (itstool) path: row/entry -#: book.translate.xml:54203 +#: book.translate.xml:53824 msgid "User Name(s)" msgstr "使用者名稱" #. (itstool) path: row/entry -#: book.translate.xml:54210 +#: book.translate.xml:53831 msgid "" "<systemitem class=\"username\">alpha</systemitem>, <systemitem class=" "\"username\">beta</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54212 +#: book.translate.xml:53833 msgid "IT department employees" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54216 +#: book.translate.xml:53837 msgid "" "<systemitem class=\"username\">charlie</systemitem>, <systemitem class=" "\"username\">delta</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54217 +#: book.translate.xml:53838 msgid "IT department apprentices" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54221 +#: book.translate.xml:53842 msgid "" "<systemitem class=\"username\">echo</systemitem>, <systemitem class=" "\"username\">foxtrott</systemitem>, <systemitem class=\"username\">golf</" @@ -78641,46 +78743,46 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54225 +#: book.translate.xml:53846 msgid "employees" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54229 +#: book.translate.xml:53850 msgid "" "<systemitem class=\"username\">able</systemitem>, <systemitem class=" "\"username\">baker</systemitem>, ..." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54232 +#: book.translate.xml:53853 msgid "interns" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:54239 +#: book.translate.xml:53860 msgid "Additional Systems" msgstr "其他系統" #. (itstool) path: row/entry -#: book.translate.xml:54244 +#: book.translate.xml:53865 msgid "Machine Name(s)" msgstr "機器名稱" #. (itstool) path: row/entry -#: book.translate.xml:54253 +#: book.translate.xml:53874 msgid "" "<systemitem>war</systemitem>, <systemitem>death</systemitem>, " "<systemitem>famine</systemitem>, <systemitem>pollution</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54257 +#: book.translate.xml:53878 msgid "Only IT employees are allowed to log onto these servers." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54263 +#: book.translate.xml:53884 msgid "" "<systemitem>pride</systemitem>, <systemitem>greed</systemitem>, " "<systemitem>envy</systemitem>, <systemitem>wrath</systemitem>, " @@ -78688,37 +78790,37 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54269 +#: book.translate.xml:53890 msgid "" "All members of the IT department are allowed to login onto these servers." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54274 +#: book.translate.xml:53895 msgid "" "<systemitem>one</systemitem>, <systemitem>two</systemitem>, " "<systemitem>three</systemitem>, <systemitem>four</systemitem>, ..." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54279 +#: book.translate.xml:53900 msgid "Ordinary workstations used by employees." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54284 +#: book.translate.xml:53905 msgid "<systemitem>trashcan</systemitem>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:54285 +#: book.translate.xml:53906 msgid "" "A very old machine without any critical data. Even interns are allowed to " "use this system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54292 +#: book.translate.xml:53913 msgid "" "When using netgroups to configure this scenario, each user is assigned to " "one or more netgroups and logins are then allowed or forbidden for all " @@ -78730,7 +78832,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54302 +#: book.translate.xml:53923 msgid "" "The first step is the initialization of the <acronym>NIS</acronym> " "<literal>netgroup</literal> map. In FreeBSD, this map is not created by " @@ -78739,14 +78841,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54308 +#: book.translate.xml:53929 msgid "" "This example creates four netgroups to represent IT employees, IT " "apprentices, employees, and interns:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54311 +#: book.translate.xml:53932 #, no-wrap msgid "" "IT_EMP (,alpha,test-domain) (,beta,test-domain)\n" @@ -78757,7 +78859,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54317 +#: book.translate.xml:53938 msgid "" "Each entry configures a netgroup. The first column in an entry is the name " "of the netgroup. Each set of brackets represents either a group of one or " @@ -78766,26 +78868,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:54325 +#: book.translate.xml:53946 msgid "" "The name of the host(s) where the other fields representing the user are " "valid. If a hostname is not specified, the entry is valid on all hosts." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:54331 +#: book.translate.xml:53952 msgid "The name of the account that belongs to this netgroup." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:54336 +#: book.translate.xml:53957 msgid "" "The <acronym>NIS</acronym> domain for the account. Accounts may be imported " "from other <acronym>NIS</acronym> domains into a netgroup." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54342 +#: book.translate.xml:53963 msgid "" "If a group contains multiple users, separate each user with whitespace. " "Additionally, each field may contain wildcards. See " @@ -78794,7 +78896,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54347 +#: book.translate.xml:53968 msgid "" "Netgroup names longer than 8 characters should not be used. The names are " "case sensitive and using capital letters for netgroup names is an easy way " @@ -78802,7 +78904,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54352 +#: book.translate.xml:53973 msgid "" "Some non-FreeBSD <acronym>NIS</acronym> clients cannot handle netgroups " "containing more than 15 entries. This limit may be circumvented by creating " @@ -78811,7 +78913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54358 +#: book.translate.xml:53979 #, no-wrap msgid "" "BIGGRP1 (,joe1,domain) (,joe2,domain) (,joe3,domain) [...]\n" @@ -78821,19 +78923,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54363 +#: book.translate.xml:53984 msgid "" "Repeat this process if more than 225 (15 times 15) users exist within a " "single netgroup." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54366 +#: book.translate.xml:53987 msgid "To activate and distribute the new <acronym>NIS</acronym> map:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54369 +#: book.translate.xml:53990 #, no-wrap msgid "" "ellington<prompt>#</prompt> <userinput>cd /var/yp</userinput>\n" @@ -78841,7 +78943,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54372 +#: book.translate.xml:53993 msgid "" "This will generate the three <acronym>NIS</acronym> maps <filename>netgroup</" "filename>, <filename>netgroup.byhost</filename> and <filename>netgroup." @@ -78851,7 +78953,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:54379 +#: book.translate.xml:54000 #, no-wrap msgid "" "ellington<prompt>%</prompt> <userinput>ypcat -k netgroup</userinput>\n" @@ -78860,7 +78962,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54383 +#: book.translate.xml:54004 msgid "" "The output of the first command should resemble the contents of <filename>/" "var/yp/netgroup</filename>. The second command only produces output if host-" @@ -78869,7 +78971,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54389 +#: book.translate.xml:54010 msgid "" "To configure a client, use <citerefentry><refentrytitle>vipw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to specify the name of " @@ -78878,18 +78980,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54395 +#: book.translate.xml:54016 msgid "with" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54397 +#: book.translate.xml:54018 #, no-wrap msgid "+@IT_EMP:::::::::" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54399 +#: book.translate.xml:54020 msgid "" "This specifies that only the users defined in the netgroup <literal>IT_EMP</" "literal> will be imported into this system's password database and only " @@ -78897,7 +78999,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54404 +#: book.translate.xml:54025 msgid "" "This configuration also applies to the <literal>~</literal> function of the " "shell and all routines which convert between user names and numerical user " @@ -78910,20 +79012,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54416 +#: book.translate.xml:54037 #, no-wrap msgid "+:::::::::/sbin/nologin" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54418 +#: book.translate.xml:54039 msgid "" "This line configures the client to import all entries but to replace the " "shell in those entries with <filename>/sbin/nologin</filename>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54423 +#: book.translate.xml:54044 msgid "" "Make sure that extra line is placed <emphasis>after</emphasis> <literal>" "+@IT_EMP:::::::::</literal>. Otherwise, all user accounts imported from " @@ -78932,14 +79034,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54430 +#: book.translate.xml:54051 msgid "" "To configure the less important servers, replace the old <literal>+:::::::::" "</literal> on the servers with these lines:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54434 +#: book.translate.xml:54055 #, no-wrap msgid "" "+@IT_EMP:::::::::\n" @@ -78948,12 +79050,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54438 +#: book.translate.xml:54059 msgid "The corresponding lines for the workstations would be:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54441 +#: book.translate.xml:54062 #, no-wrap msgid "" "+@IT_EMP:::::::::\n" @@ -78962,7 +79064,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54445 +#: book.translate.xml:54066 msgid "" "NIS supports the creation of netgroups from other netgroups which can be " "useful if the policy regarding user access changes. One possibility is the " @@ -78977,7 +79079,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54458 +#: book.translate.xml:54079 #, no-wrap msgid "" "BIGSRV IT_EMP IT_APP\n" @@ -78986,7 +79088,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54462 +#: book.translate.xml:54083 msgid "" "This method of defining login restrictions works reasonably well when it is " "possible to define groups of machines with identical restrictions. " @@ -78995,7 +79097,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54469 +#: book.translate.xml:54090 msgid "" "Machine-specific netgroup definitions are another possibility to deal with " "the policy changes. In this scenario, the <filename>/etc/master.passwd</" @@ -79007,7 +79109,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54479 +#: book.translate.xml:54100 #, no-wrap msgid "" "+@<replaceable>BOXNAME</replaceable>:::::::::\n" @@ -79015,7 +79117,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54482 +#: book.translate.xml:54103 msgid "" "Once this task is completed on all the machines, there is no longer a need " "to modify the local versions of <filename>/etc/master.passwd</filename> ever " @@ -79025,7 +79127,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54489 +#: book.translate.xml:54110 #, no-wrap msgid "" "# Define groups of users first\n" @@ -79066,7 +79168,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54525 +#: book.translate.xml:54146 msgid "" "It may not always be advisable to use machine-based netgroups. When " "deploying a couple of dozen or hundreds of systems, role-based netgroups " @@ -79075,17 +79177,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:54534 +#: book.translate.xml:54155 msgid "Password Formats" msgstr "密碼格式" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54536 +#: book.translate.xml:54157 msgid "<primary>NIS</primary> <secondary>password formats</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54540 +#: book.translate.xml:54161 msgid "" "<acronym>NIS</acronym> requires that all hosts within an <acronym>NIS</" "acronym> domain use the same format for encrypting passwords. If users have " @@ -79096,14 +79198,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54548 +#: book.translate.xml:54169 msgid "" "To check which format a server or client is using, look at this section of " "<filename>/etc/login.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54552 +#: book.translate.xml:54173 #, no-wrap msgid "" "default:\\\n" @@ -79113,7 +79215,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54557 +#: book.translate.xml:54178 msgid "" "In this example, the system is using the <acronym>DES</acronym> format. " "Other possible values are <literal>blf</literal> for Blowfish and " @@ -79121,7 +79223,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54562 +#: book.translate.xml:54183 msgid "" "If the format on a host needs to be edited to match the one being used in " "the <acronym>NIS</acronym> domain, the login capability database must be " @@ -79129,7 +79231,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:54570 +#: book.translate.xml:54191 msgid "" "The format of passwords for existing user accounts will not be updated until " "each user changes their password <emphasis>after</emphasis> the login " @@ -79137,18 +79239,18 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:54580 +#: book.translate.xml:54201 msgid "Lightweight Directory Access Protocol (<acronym>LDAP</acronym>)" msgstr "輕量級目錄存取協定 (<acronym>LDAP</acronym>)" #. (itstool) path: sect1/indexterm #. (itstool) path: listitem/indexterm -#: book.translate.xml:54594 book.translate.xml:57478 +#: book.translate.xml:54215 book.translate.xml:57100 msgid "<primary>LDAP</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:54596 +#: book.translate.xml:54217 msgid "" "The Lightweight Directory Access Protocol (<acronym>LDAP</acronym>) is an " "application layer protocol used to access, modify, and authenticate objects " @@ -79170,7 +79272,7 @@ msgstr "" "取。" #. (itstool) path: sect1/para -#: book.translate.xml:54609 +#: book.translate.xml:54230 msgid "" "This section provides a quick start guide for configuring an <acronym>LDAP</" "acronym> server on a FreeBSD system. It assumes that the administrator " @@ -79185,12 +79287,12 @@ msgstr "" "取。" #. (itstool) path: sect2/title -#: book.translate.xml:54618 +#: book.translate.xml:54239 msgid "<acronym>LDAP</acronym> Terminology and Structure" msgstr "<acronym>LDAP</acronym> 術語與結構" #. (itstool) path: sect2/para -#: book.translate.xml:54620 +#: book.translate.xml:54241 msgid "" "<acronym>LDAP</acronym> uses several terms which should be understood before " "starting the configuration. All directory entries consist of a group of " @@ -79211,7 +79313,7 @@ msgstr "" "路徑,<acronym>RDN</acronym> 當做相對路徑。" #. (itstool) path: sect2/para -#: book.translate.xml:54634 +#: book.translate.xml:54255 msgid "" "An example <acronym>LDAP</acronym> entry looks like the following. This " "example searches for the entry for the specified user account (<literal>uid</" @@ -79223,7 +79325,7 @@ msgstr "" "(<literal>o</literal>):" #. (itstool) path: sect2/screen -#: book.translate.xml:54640 +#: book.translate.xml:54261 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ldapsearch -xb \"uid=<replaceable>trhodes</replaceable>,ou=<replaceable>users</replaceable>,o=<replaceable>example.com</replaceable>\"</userinput>\n" @@ -79251,7 +79353,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54663 +#: book.translate.xml:54284 msgid "" "This example entry shows the values for the <literal>dn</literal>, " "<literal>mail</literal>, <literal>cn</literal>, <literal>uid</literal>, and " @@ -79264,7 +79366,7 @@ msgstr "" "acronym>。" #. (itstool) path: sect2/para -#: book.translate.xml:54670 +#: book.translate.xml:54291 msgid "" "More information about <acronym>LDAP</acronym> and its terminology can be " "found at <uri xlink:href=\"http://www.openldap.org/doc/admin24/intro.html" @@ -79275,17 +79377,17 @@ msgstr "" "doc/admin24/intro.html</uri> 找到。" #. (itstool) path: sect2/title -#: book.translate.xml:54675 +#: book.translate.xml:54296 msgid "Configuring an <acronym>LDAP</acronym> Server" msgstr "設定 <acronym>LDAP</acronym> 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54677 +#: book.translate.xml:54298 msgid "<primary>LDAP Server</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54679 +#: book.translate.xml:54300 msgid "" "FreeBSD does not provide a built-in <acronym>LDAP</acronym> server. Begin " "the configuration by installing the <package role=\"port\">net/openldap24-" @@ -79303,13 +79405,13 @@ msgstr "" "須開啟選項並依 <xref linkend=\"ports-using\"/> 的指示編譯 Port。" #. (itstool) path: sect2/para -#: book.translate.xml:54689 +#: book.translate.xml:54310 msgid "" "Next, create the directories to hold the data and to store the certificates:" msgstr "接著,建立目錄來儲存資枓以及儲存憑證:" #. (itstool) path: sect2/screen -#: book.translate.xml:54692 +#: book.translate.xml:54313 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>mkdir /var/db/openldap-data</userinput>\n" @@ -79317,18 +79419,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54695 +#: book.translate.xml:54316 msgid "Copy over the database configuration file:" msgstr "複製資料庫設定檔:" #. (itstool) path: sect2/screen -#: book.translate.xml:54697 +#: book.translate.xml:54318 #, no-wrap msgid "<prompt>#</prompt> <userinput>cp /usr/local/etc/openldap/DB_CONFIG.example /var/db/openldap-data/DB_CONFIG</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54699 +#: book.translate.xml:54320 msgid "" "The next phase is to configure the certificate authority. The following " "commands must be executed from <filename>/usr/local/etc/openldap/private</" @@ -79342,13 +79444,13 @@ msgstr "" "示作業:" #. (itstool) path: sect2/screen -#: book.translate.xml:54707 +#: book.translate.xml:54328 #, no-wrap msgid "<prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -x509 -keyout ca.key -out ../ca.crt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54709 +#: book.translate.xml:54330 msgid "" "The entries for the prompts may be generic <emphasis>except</emphasis> for " "the <literal>Common Name</literal>. This entry must be <emphasis>different</" @@ -79362,7 +79464,7 @@ msgstr "" "literal> 的前面加上主機名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:54716 +#: book.translate.xml:54337 msgid "" "The next task is to create a certificate signing request and a private key. " "Input this command and follow the prompts:" @@ -79370,13 +79472,13 @@ msgstr "" "接下來的工作是建立一個憑証簽署的請求及私鑰。請輸入以下指令然後依提示操作:" #. (itstool) path: sect2/screen -#: book.translate.xml:54720 +#: book.translate.xml:54341 #, no-wrap msgid "<prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -keyout server.key -out server.csr</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54722 +#: book.translate.xml:54343 msgid "" "During the certificate generation process, be sure to correctly set the " "<literal>Common Name</literal> attribute. Once complete, sign the key:" @@ -79385,20 +79487,20 @@ msgstr "" "成之後便可簽署金鑰:" #. (itstool) path: sect2/screen -#: book.translate.xml:54726 +#: book.translate.xml:54347 #, no-wrap msgid "<prompt>#</prompt> <userinput>openssl x509 -req -days <replaceable>365</replaceable> -in server.csr -out ../server.crt -CA ../ca.crt -CAkey ca.key -CAcreateserial</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54728 +#: book.translate.xml:54349 msgid "" "The final part of the certificate generation process is to generate and sign " "the client certificates:" msgstr "在憑証產生程序的最後一步是產生並簽署用戶憑証:" #. (itstool) path: sect2/screen -#: book.translate.xml:54731 +#: book.translate.xml:54352 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>openssl req -days <replaceable>365</replaceable> -nodes -new -keyout client.key -out client.csr</userinput>\n" @@ -79406,7 +79508,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54734 +#: book.translate.xml:54355 msgid "" "Remember to use the same <literal>Common Name</literal> attribute when " "prompted. When finished, ensure that a total of eight (8) new files have " @@ -79419,7 +79521,7 @@ msgstr "" "usr/local/etc/openldap/slapd.conf</filename> 並加入以下選項:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54741 +#: book.translate.xml:54362 #, no-wrap msgid "" "TLSCipherSuite HIGH:MEDIUM:+SSLv3\n" @@ -79429,7 +79531,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54746 +#: book.translate.xml:54367 msgid "" "Then, edit <filename>/usr/local/etc/openldap/ldap.conf</filename> and add " "the following lines:" @@ -79438,7 +79540,7 @@ msgstr "" "行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54750 +#: book.translate.xml:54371 #, no-wrap msgid "" "TLS_CACERT /usr/local/etc/openldap/ca.crt\n" @@ -79446,7 +79548,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54753 +#: book.translate.xml:54374 msgid "" "While editing this file, uncomment the following entries and set them to the " "desired values: <option>BASE</option>, <option>URI</option>, " @@ -79462,7 +79564,7 @@ msgstr "" "後,所有的設定項目會如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54762 +#: book.translate.xml:54383 #, no-wrap msgid "" "BASE dc=example,dc=com\n" @@ -79476,18 +79578,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54771 +#: book.translate.xml:54392 msgid "The default password for the server should then be changed:" msgstr "給伺服器用的預設密碼應該要更換:" #. (itstool) path: sect2/screen -#: book.translate.xml:54774 +#: book.translate.xml:54395 #, no-wrap msgid "<prompt>#</prompt> <userinput>slappasswd -h \"{SHA}\" >> /usr/local/etc/openldap/slapd.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54776 +#: book.translate.xml:54397 msgid "" "This command will prompt for the password and, if the process does not fail, " "a password hash will be added to the end of <filename>slapd.conf</filename>. " @@ -79499,7 +79601,7 @@ msgstr "" "<command>slappasswd</command> 的操作手冊以取得更多資訊。" #. (itstool) path: sect2/para -#: book.translate.xml:54782 +#: book.translate.xml:54403 msgid "" "Next, edit <filename>/usr/local/etc/openldap/slapd.conf</filename> and add " "the following lines:" @@ -79507,7 +79609,7 @@ msgstr "" "接著編輯 <filename>/usr/local/etc/openldap/slapd.conf</filename> 並加入下行:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54786 +#: book.translate.xml:54407 #, no-wrap msgid "" "password-hash {sha}\n" @@ -79515,7 +79617,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54789 +#: book.translate.xml:54410 msgid "" "The <option>suffix</option> in this file must be updated to match the " "<option>BASE</option> used in <filename>/usr/local/etc/openldap/ldap.conf</" @@ -79533,7 +79635,7 @@ msgstr "" "<option>rootpw</option>。最後的結果應該如下:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54800 +#: book.translate.xml:54421 #, no-wrap msgid "" "TLSCipherSuite HIGH:MEDIUM:+SSLv3\n" @@ -79544,7 +79646,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54806 +#: book.translate.xml:54427 msgid "" "Finally, enable the <application>OpenLDAP</application> service in " "<filename>/etc/rc.conf</filename> and set the <acronym>URI</acronym>:" @@ -79553,7 +79655,7 @@ msgstr "" "application> 服務並設定 <acronym>URI</acronym>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54810 +#: book.translate.xml:54431 #, no-wrap msgid "" "slapd_enable=\"YES\"\n" @@ -79561,25 +79663,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54813 +#: book.translate.xml:54434 msgid "At this point the server can be started and tested:" msgstr "此時便可啟動並測試伺服器:" #. (itstool) path: sect2/screen -#: book.translate.xml:54815 +#: book.translate.xml:54436 #, no-wrap msgid "<prompt>#</prompt> <userinput>service slapd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54817 +#: book.translate.xml:54438 msgid "" "If everything is configured correctly, a search of the directory should show " "a successful connection with a single response as in this example:" msgstr "若所有的設定均正確,搜尋目錄應會如此範例顯示成功連線並有一筆回應:" #. (itstool) path: sect2/screen -#: book.translate.xml:54821 +#: book.translate.xml:54442 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ldapsearch -Z</userinput>\n" @@ -79599,7 +79701,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:54837 +#: book.translate.xml:54458 msgid "" "If the command fails and the configuration looks correct, stop the " "<command>slapd</command> service and restart it with debugging options:" @@ -79608,7 +79710,7 @@ msgstr "" "除錯選項並重新啟動:" #. (itstool) path: note/screen -#: book.translate.xml:54841 +#: book.translate.xml:54462 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service slapd stop</userinput>\n" @@ -79616,7 +79718,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54845 +#: book.translate.xml:54466 msgid "" "Once the service is responding, the directory can be populated using " "<command>ldapadd</command>. In this example, a file containing this list of " @@ -79626,7 +79728,7 @@ msgstr "" "中,會先建立一個含有使用者清單的檔案,每位使用者應使用以下格式定義:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:54850 +#: book.translate.xml:54471 #, no-wrap msgid "" "dn: dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>\n" @@ -79641,7 +79743,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54860 +#: book.translate.xml:54481 msgid "" "To import this file, specify the file name. The following command will " "prompt for the password specified earlier and the output should look " @@ -79651,7 +79753,7 @@ msgstr "" "下的結果:" #. (itstool) path: sect2/screen -#: book.translate.xml:54864 +#: book.translate.xml:54485 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ldapadd -Z -D \"cn=<replaceable>Manager</replaceable>,dc=<replaceable>example</replaceable>,dc=<replaceable>com</replaceable>\" -W -f <replaceable>import.ldif</replaceable></userinput>\n" @@ -79662,7 +79764,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54870 +#: book.translate.xml:54491 msgid "" "Verify the data was added by issuing a search on the server using " "<command>ldapsearch</command>:" @@ -79670,7 +79772,7 @@ msgstr "" "使用 <command>ldapsearch</command> 發出一個查詢到伺服器來確認資料已新增:" #. (itstool) path: sect2/screen -#: book.translate.xml:54873 +#: book.translate.xml:54494 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>ldapsearch -Z</userinput>\n" @@ -79703,30 +79805,30 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54901 +#: book.translate.xml:54522 msgid "" "At this point, the server should be configured and functioning properly." msgstr "此時,伺服器應已設定完成並可正常運作。" #. (itstool) path: sect1/title -#: book.translate.xml:54918 +#: book.translate.xml:54539 msgid "Dynamic Host Configuration Protocol (<acronym>DHCP</acronym>)" msgstr "動態主機設置協定 (<acronym>DHCP</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:54921 +#: book.translate.xml:54542 msgid "" "<primary>Dynamic Host Configuration Protocol</primary> <see><acronym>DHCP</" "acronym></see>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:54925 +#: book.translate.xml:54546 msgid "<primary>Internet Systems Consortium (ISC)</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:54929 +#: book.translate.xml:54550 msgid "" "The Dynamic Host Configuration Protocol (<acronym>DHCP</acronym>) allows a " "system to connect to a network in order to be assigned the necessary " @@ -79749,7 +79851,7 @@ msgstr "" "\">isc.org/downloads/dhcp/</link> 取得。" #. (itstool) path: sect1/para -#: book.translate.xml:54941 +#: book.translate.xml:54562 msgid "" "This section describes how to use the built-in <acronym>DHCP</acronym> " "client. It then describes how to install and configure a <acronym>DHCP</" @@ -79759,7 +79861,7 @@ msgstr "" "設定一個 <acronym>DHCP</acronym> 伺服器。" #. (itstool) path: note/para -#: book.translate.xml:54946 +#: book.translate.xml:54567 msgid "" "In FreeBSD, the <citerefentry><refentrytitle>bpf</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> device is needed by " @@ -79775,7 +79877,7 @@ msgstr "" "<acronym>DHCP</acronym> 則須保留這個裝置。" #. (itstool) path: note/para -#: book.translate.xml:54953 +#: book.translate.xml:54574 msgid "" "It should be noted that <filename>bpf</filename> also allows privileged " "users to run network packet sniffers on that system." @@ -79784,12 +79886,12 @@ msgstr "" "封包監聽程式。" #. (itstool) path: sect2/title -#: book.translate.xml:54959 +#: book.translate.xml:54580 msgid "Configuring a <acronym>DHCP</acronym> Client" msgstr "設定 <acronym>DHCP</acronym> 客戶端" #. (itstool) path: sect2/para -#: book.translate.xml:54961 +#: book.translate.xml:54582 msgid "" "<acronym>DHCP</acronym> client support is included in the FreeBSD installer, " "making it easy to configure a newly installed system to automatically " @@ -79802,12 +79904,12 @@ msgstr "" "考 <xref linkend=\"bsdinstall-post\"/> 取得網路設置的範例。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:54968 +#: book.translate.xml:54589 msgid "<primary><acronym>UDP</acronym></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:54969 +#: book.translate.xml:54590 msgid "" "When <command>dhclient</command> is executed on the client machine, it " "begins broadcasting requests for configuration information. By default, " @@ -79831,7 +79933,7 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 找到。" #. (itstool) path: sect2/para -#: book.translate.xml:54985 +#: book.translate.xml:54606 msgid "" "By default, when a FreeBSD system boots, its <acronym>DHCP</acronym> client " "runs in the background, or <firstterm>asynchronously</firstterm>. Other " @@ -79843,7 +79945,7 @@ msgstr "" "acronym> 程序的同時其他啟動 Script 會繼續執行,來加速系統啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:54991 +#: book.translate.xml:54612 msgid "" "Background <acronym>DHCP</acronym> works well when the <acronym>DHCP</" "acronym> server responds quickly to the client's requests. However, " @@ -79862,7 +79964,7 @@ msgstr "" "<acronym>DHCP</acronym> 已設置完成。" #. (itstool) path: sect2/para -#: book.translate.xml:55001 +#: book.translate.xml:54622 msgid "" "This line in <filename>/etc/rc.conf</filename> is used to configure " "background or asynchronous mode:" @@ -79870,13 +79972,13 @@ msgstr "" "在 <filename>/etc/rc.conf</filename> 中的這行用來設定採用背景 (非同步模式):" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55004 +#: book.translate.xml:54625 #, no-wrap msgid "ifconfig_<replaceable>fxp0</replaceable>=\"DHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55006 +#: book.translate.xml:54627 msgid "" "This line may already exist if the system was configured to use " "<acronym>DHCP</acronym> during installation. Replace the <replaceable>fxp0</" @@ -79889,7 +79991,7 @@ msgstr "" "<xref linkend=\"config-network-setup\"/> 中的說明。" #. (itstool) path: sect2/para -#: book.translate.xml:55012 +#: book.translate.xml:54633 msgid "" "To instead configure the system to use synchronous mode, and to pause during " "startup while <acronym>DHCP</acronym> completes, use " @@ -79899,13 +80001,13 @@ msgstr "" "用 <quote><literal>SYNCDHCP</literal></quote>:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55017 +#: book.translate.xml:54638 #, no-wrap msgid "ifconfig_<replaceable>fxp0</replaceable>=\"SYNCDHCP\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55019 +#: book.translate.xml:54640 msgid "" "Additional client options are available. Search for <literal>dhclient</" "literal> in <citerefentry><refentrytitle>rc.conf</" @@ -79916,24 +80018,24 @@ msgstr "" "<literal>dhclient</literal> 來取得詳細資訊。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55023 book.translate.xml:55227 +#: book.translate.xml:54644 book.translate.xml:54848 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>configuration files</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55028 +#: book.translate.xml:54649 msgid "The <acronym>DHCP</acronym> client uses the following files:" msgstr "<acronym>DHCP</acronym> 客戶端會使用到以下檔案:" #. (itstool) path: listitem/para -#: book.translate.xml:55033 +#: book.translate.xml:54654 msgid "<filename>/etc/dhclient.conf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55035 +#: book.translate.xml:54656 msgid "" "The configuration file used by <command>dhclient</command>. Typically, this " "file contains only comments as the defaults are suitable for most clients. " @@ -79946,12 +80048,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 中有說明。" #. (itstool) path: listitem/para -#: book.translate.xml:55043 +#: book.translate.xml:54664 msgid "<filename>/sbin/dhclient</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55045 +#: book.translate.xml:54666 msgid "" "More information about the command itself can be found in " "<citerefentry><refentrytitle>dhclient</refentrytitle><manvolnum>8</" @@ -79961,12 +80063,12 @@ msgstr "" "refentrytitle><manvolnum>8</manvolnum></citerefentry> 找到。" #. (itstool) path: listitem/para -#: book.translate.xml:55050 +#: book.translate.xml:54671 msgid "<filename>/sbin/dhclient-script</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55052 +#: book.translate.xml:54673 msgid "" "The FreeBSD-specific <acronym>DHCP</acronym> client configuration script. It " "is described in <citerefentry><refentrytitle>dhclient-script</" @@ -79978,14 +80080,14 @@ msgstr "" "manvolnum></citerefentry> 中有說明,但應不須做任何修改便可正常運作。" #. (itstool) path: listitem/para -#: book.translate.xml:55060 +#: book.translate.xml:54681 msgid "" "<filename>/var/db/dhclient.leases.<replaceable>interface</replaceable></" "filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55062 +#: book.translate.xml:54683 msgid "" "The <acronym>DHCP</acronym> client keeps a database of valid leases in this " "file, which is written as a log and is described in " @@ -79997,12 +80099,12 @@ msgstr "" "refentrytitle><manvolnum>5</manvolnum></citerefentry> 有說明。" #. (itstool) path: sect2/title -#: book.translate.xml:55070 +#: book.translate.xml:54691 msgid "Installing and Configuring a <acronym>DHCP</acronym> Server" msgstr "安裝並設定 <acronym>DHCP</acronym> 伺服器" #. (itstool) path: sect2/para -#: book.translate.xml:55073 +#: book.translate.xml:54694 msgid "" "This section demonstrates how to configure a FreeBSD system to act as a " "<acronym>DHCP</acronym> server using the Internet Systems Consortium " @@ -80016,20 +80118,20 @@ msgstr "" "package> 套件或 Port 安裝。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55081 +#: book.translate.xml:54702 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>server</secondary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55086 +#: book.translate.xml:54707 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>installation</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55091 +#: book.translate.xml:54712 msgid "" "The installation of <package>net/isc-dhcp43-server</package> installs a " "sample configuration file. Copy <filename>/usr/local/etc/dhcpd.conf.example</" @@ -80041,13 +80143,13 @@ msgstr "" "local/etc/dhcpd.conf</filename> 並在這個新檔案做編輯。" #. (itstool) path: sect2/indexterm -#: book.translate.xml:55098 +#: book.translate.xml:54719 msgid "" "<primary><acronym>DHCP</acronym></primary> <secondary>dhcpd.conf</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55102 +#: book.translate.xml:54723 msgid "" "The configuration file is comprised of declarations for subnets and hosts " "which define the information that is provided to <acronym>DHCP</acronym> " @@ -80057,7 +80159,7 @@ msgstr "" "acronym> 客戶端的資訊。如以下行設定:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55107 +#: book.translate.xml:54728 #, no-wrap msgid "" "option domain-name \"example.org\";<co xml:id=\"domain-name\"/>\n" @@ -80080,7 +80182,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:55127 +#: book.translate.xml:54748 msgid "" "This option specifies the default search domain that will be provided to " "clients. Refer to <citerefentry><refentrytitle>resolv.conf</" @@ -80091,7 +80193,7 @@ msgstr "" "manvolnum></citerefentry> 取得更多資訊。" #. (itstool) path: callout/para -#: book.translate.xml:55133 +#: book.translate.xml:54754 msgid "" "This option specifies a comma separated list of <acronym>DNS</acronym> " "servers that the client should use. They can be listed by their Fully " @@ -80103,19 +80205,19 @@ msgstr "" "<acronym>FQDN</acronym>) 或伺服器的 <acronym>IP</acronym> 位址。" #. (itstool) path: callout/para -#: book.translate.xml:55141 +#: book.translate.xml:54762 msgid "The subnet mask that will be provided to clients." msgstr "要提供給客戶端的子網路遮罩。" #. (itstool) path: callout/para -#: book.translate.xml:55146 +#: book.translate.xml:54767 msgid "" "The default lease expiry time in seconds. A client can be configured to " "override this value." msgstr "預設租約到期時間 (秒)。客戶端可以自行設定覆蓋這個數值。" #. (itstool) path: callout/para -#: book.translate.xml:55151 +#: book.translate.xml:54772 msgid "" "The maximum allowed length of time, in seconds, for a lease. Should a client " "request a longer lease, a lease will still be issued, but it will only be " @@ -80125,7 +80227,7 @@ msgstr "" "只會在 <literal>max-lease-time</literal> 內有效。" #. (itstool) path: callout/para -#: book.translate.xml:55158 +#: book.translate.xml:54779 msgid "" "The default of <option>none</option> disables dynamic DNS updates. Changing " "this to <option>interim</option> configures the <acronym>DHCP</acronym> " @@ -80142,7 +80244,7 @@ msgstr "" "<acronym>DNS</acronym> 伺服器已設定為支援動態 <acronym>DNS</acronym>。" #. (itstool) path: callout/para -#: book.translate.xml:55171 +#: book.translate.xml:54792 msgid "" "This line creates a pool of available <acronym>IP</acronym> addresses which " "are reserved for allocation to <acronym>DHCP</acronym> clients. The range of " @@ -80154,7 +80256,7 @@ msgstr "" "路中有效。" #. (itstool) path: callout/para -#: book.translate.xml:55179 +#: book.translate.xml:54800 msgid "" "Declares the default gateway that is valid for the network or subnet " "specified before the opening <literal>{</literal> bracket." @@ -80163,7 +80265,7 @@ msgstr "" "訊閘。" #. (itstool) path: callout/para -#: book.translate.xml:55185 +#: book.translate.xml:54806 msgid "" "Specifies the hardware <acronym>MAC</acronym> address of a client so that " "the <acronym>DHCP</acronym> server can recognize the client when it makes a " @@ -80173,7 +80275,7 @@ msgstr "" "服器在客戶端發出請求時可以辨識客戶端。" #. (itstool) path: callout/para -#: book.translate.xml:55191 +#: book.translate.xml:54812 msgid "" "Specifies that this host should always be given the same <acronym>IP</" "acronym> address. Using the hostname is correct, since the <acronym>DHCP</" @@ -80184,7 +80286,7 @@ msgstr "" "的,由於 <acronym>DHCP</acronym> 伺服器會在回傳租約資訊前先解析主機名稱。" #. (itstool) path: sect2/para -#: book.translate.xml:55199 +#: book.translate.xml:54820 msgid "" "This configuration file supports many more options. Refer to dhcpd.conf(5), " "installed with the server, for details and examples." @@ -80193,7 +80295,7 @@ msgstr "" "訊與範例。" #. (itstool) path: sect2/para -#: book.translate.xml:55203 +#: book.translate.xml:54824 msgid "" "Once the configuration of <filename>dhcpd.conf</filename> is complete, " "enable the <acronym>DHCP</acronym> server in <filename>/etc/rc.conf</" @@ -80203,7 +80305,7 @@ msgstr "" "filename> 啟動 <acronym>DHCP</acronym> 伺服器:" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55207 +#: book.translate.xml:54828 #, no-wrap msgid "" "dhcpd_enable=\"YES\"\n" @@ -80211,7 +80313,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55210 +#: book.translate.xml:54831 msgid "" "Replace the <literal>dc0</literal> with the interface (or interfaces, " "separated by whitespace) that the <acronym>DHCP</acronym> server should " @@ -80221,18 +80323,18 @@ msgstr "" "<acronym>DHCP</acronym> 客戶端請求的網路介面 (多個介面可以空白分隔)。" #. (itstool) path: sect2/para -#: book.translate.xml:55215 +#: book.translate.xml:54836 msgid "Start the server by issuing the following command:" msgstr "執行以下指令來啟動伺服器:" #. (itstool) path: sect2/screen -#: book.translate.xml:55217 book.translate.xml:65535 +#: book.translate.xml:54838 book.translate.xml:65483 #, no-wrap msgid "<prompt>#</prompt> <userinput>service isc-dhcpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55219 +#: book.translate.xml:54840 msgid "" "Any future changes to the configuration of the server will require the " "<application>dhcpd</application> service to be stopped and then started " @@ -80244,7 +80346,7 @@ msgstr "" "<application>dhcpd</application> 服務然後啟動。" #. (itstool) path: sect2/para -#: book.translate.xml:55223 +#: book.translate.xml:54844 msgid "" "The <acronym>DHCP</acronym> server uses the following files. Note that the " "manual pages are installed with the server software." @@ -80253,12 +80355,12 @@ msgstr "" "一同安裝。" #. (itstool) path: listitem/para -#: book.translate.xml:55233 +#: book.translate.xml:54854 msgid "<filename>/usr/local/sbin/dhcpd</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55235 +#: book.translate.xml:54856 msgid "" "More information about the <application>dhcpd</application> server can be " "found in dhcpd(8)." @@ -80266,12 +80368,12 @@ msgstr "" "更多有關 <application>dhcpd</application> 伺服器的資訊可在 dhcpd(8) 找到。" #. (itstool) path: listitem/para -#: book.translate.xml:55241 +#: book.translate.xml:54862 msgid "<filename>/usr/local/etc/dhcpd.conf</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55243 +#: book.translate.xml:54864 msgid "" "The server configuration file needs to contain all the information that " "should be provided to clients, along with information regarding the " @@ -80282,12 +80384,12 @@ msgstr "" "dhcpd.conf(5) 有此設定檔的說明。 " #. (itstool) path: listitem/para -#: book.translate.xml:55250 +#: book.translate.xml:54871 msgid "<filename>/var/db/dhcpd.leases</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55252 +#: book.translate.xml:54873 msgid "" "The <acronym>DHCP</acronym> server keeps a database of leases it has issued " "in this file, which is written as a log. Refer to dhcpd.leases(5), which " @@ -80297,12 +80399,12 @@ msgstr "" "式類似日誌。參考 dhcpd.leases(5) 會有更完整的說明。" #. (itstool) path: listitem/para -#: book.translate.xml:55259 +#: book.translate.xml:54880 msgid "<filename>/usr/local/sbin/dhcrelay</filename>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55261 +#: book.translate.xml:54882 msgid "" "This daemon is used in advanced environments where one <acronym>DHCP</" "acronym> server forwards a request from a client to another <acronym>DHCP</" @@ -80316,7 +80418,7 @@ msgstr "" "安裝會包含 dhcrelay(8),裡面有提供更詳細的資訊。" #. (itstool) path: sect1/para -#: book.translate.xml:55299 +#: book.translate.xml:54920 msgid "" "Domain Name System (<acronym>DNS</acronym>) is the protocol through which " "domain names are mapped to <acronym>IP</acronym> addresses, and vice versa. " @@ -80328,7 +80430,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55311 +#: book.translate.xml:54932 msgid "" "In FreeBSD 10, the Berkeley Internet Name Domain (<acronym>BIND</acronym>) " "has been removed from the base system and replaced with Unbound. Unbound as " @@ -80344,96 +80446,96 @@ msgid "" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55322 +#: book.translate.xml:54943 msgid "<primary>resolver</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55323 +#: book.translate.xml:54944 msgid "<primary>reverse <acronym>DNS</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55325 +#: book.translate.xml:54946 msgid "<primary>root zone</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55327 +#: book.translate.xml:54948 msgid "" "The following table describes some of the terms associated with " "<acronym>DNS</acronym>:" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:55331 +#: book.translate.xml:54952 msgid "<acronym>DNS</acronym> Terminology" msgstr "<acronym>DNS</acronym> 術語" #. (itstool) path: row/entry -#: book.translate.xml:55340 +#: book.translate.xml:54961 msgid "Definition" msgstr "定義" #. (itstool) path: row/entry -#: book.translate.xml:55346 +#: book.translate.xml:54967 msgid "Forward <acronym>DNS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55347 +#: book.translate.xml:54968 msgid "Mapping of hostnames to <acronym>IP</acronym> addresses." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55352 +#: book.translate.xml:54973 msgid "Origin" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55353 +#: book.translate.xml:54974 msgid "Refers to the domain covered in a particular zone file." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55358 +#: book.translate.xml:54979 msgid "<application>named</application>, BIND" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55359 +#: book.translate.xml:54980 msgid "Common names for the BIND name server package within FreeBSD." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55364 +#: book.translate.xml:54985 msgid "Resolver" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55365 +#: book.translate.xml:54986 msgid "" "A system process through which a machine queries a name server for zone " "information." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55370 +#: book.translate.xml:54991 msgid "Reverse <acronym>DNS</acronym>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55371 +#: book.translate.xml:54992 msgid "Mapping of <acronym>IP</acronym> addresses to hostnames." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55376 +#: book.translate.xml:54997 msgid "Root zone" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55378 +#: book.translate.xml:54999 msgid "" "The beginning of the Internet zone hierarchy. All zones fall under the root " "zone, similar to how all files in a file system fall under the root " @@ -80441,50 +80543,50 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55384 +#: book.translate.xml:55005 msgid "Zone" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55385 +#: book.translate.xml:55006 msgid "" "An individual domain, subdomain, or portion of the <acronym>DNS</acronym> " "administered by the same authority." msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:55393 +#: book.translate.xml:55014 msgid "<primary>zones</primary> <secondary>examples</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55398 +#: book.translate.xml:55019 msgid "Examples of zones:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55402 +#: book.translate.xml:55023 msgid "" "<systemitem>.</systemitem> is how the root zone is usually referred to in " "documentation." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55407 +#: book.translate.xml:55028 msgid "" "<systemitem>org.</systemitem> is a Top Level Domain (<acronym>TLD</acronym>) " "under the root zone." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55412 +#: book.translate.xml:55033 msgid "" "<systemitem class=\"fqdomainname\">example.org.</systemitem> is a zone under " "the <systemitem>org.</systemitem> <acronym>TLD</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55418 +#: book.translate.xml:55039 msgid "" "<systemitem>1.168.192.in-addr.arpa</systemitem> is a zone referencing all " "<acronym>IP</acronym> addresses which fall under the <systemitem class=" @@ -80492,7 +80594,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:55425 +#: book.translate.xml:55046 msgid "" "As one can see, the more specific part of a hostname appears to its left. " "For example, <systemitem class=\"fqdomainname\">example.org.</systemitem> is " @@ -80503,31 +80605,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:55434 +#: book.translate.xml:55055 msgid "Reasons to Run a Name Server" msgstr "要執行名稱伺服器的原因" #. (itstool) path: sect2/para -#: book.translate.xml:55436 +#: book.translate.xml:55057 msgid "" "Name servers generally come in two forms: authoritative name servers, and " "caching (also known as resolving) name servers." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55440 +#: book.translate.xml:55061 msgid "An authoritative name server is needed when:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55444 +#: book.translate.xml:55065 msgid "" "One wants to serve <acronym>DNS</acronym> information to the world, replying " "authoritatively to queries." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55449 +#: book.translate.xml:55070 msgid "" "A domain, such as <systemitem class=\"fqdomainname\">example.org</" "systemitem>, is registered and <acronym>IP</acronym> addresses need to be " @@ -80535,31 +80637,31 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55455 +#: book.translate.xml:55076 msgid "" "An <acronym>IP</acronym> address block requires reverse <acronym>DNS</" "acronym> entries (<acronym>IP</acronym> to hostname)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55461 +#: book.translate.xml:55082 msgid "A backup or second name server, called a slave, will reply to queries." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55466 +#: book.translate.xml:55087 msgid "A caching name server is needed when:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:55470 +#: book.translate.xml:55091 msgid "" "A local <acronym>DNS</acronym> server may cache and respond more quickly " "than querying an outside name server." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55476 +#: book.translate.xml:55097 msgid "" "When one queries for <systemitem class=\"fqdomainname\">www.FreeBSD.org</" "systemitem>, the resolver usually queries the uplink <acronym>ISP</" @@ -80571,12 +80673,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:55487 +#: book.translate.xml:55108 msgid "<acronym>DNS</acronym> Server Configuration in FreeBSD 10.0 and Later" msgstr "<acronym>DNS</acronym> 伺服器設定於 FreeBSD 10.0 及之後版本" #. (itstool) path: sect2/para -#: book.translate.xml:55490 +#: book.translate.xml:55111 msgid "" "In FreeBSD 10.0, <application>BIND</application> has been replaced with " "<application>Unbound</application>. <application>Unbound</application> is a " @@ -80585,7 +80687,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55496 +#: book.translate.xml:55117 msgid "" "<application>Unbound</application> is provided in the FreeBSD base system. " "By default, it will provide <acronym>DNS</acronym> resolution to the local " @@ -80596,20 +80698,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55505 +#: book.translate.xml:55126 msgid "" "To enable <application>Unbound</application>, add the following to " "<filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:55508 +#: book.translate.xml:55129 #, no-wrap msgid "local_unbound_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55510 +#: book.translate.xml:55131 msgid "" "Any existing nameservers in <filename>/etc/resolv.conf</filename> will be " "configured as forwarders in the new <application>Unbound</application> " @@ -80617,7 +80719,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:55516 +#: book.translate.xml:55137 msgid "" "If any of the listed nameservers do not support <acronym>DNSSEC</acronym>, " "local <acronym>DNS</acronym> resolution will fail. Be sure to test each " @@ -80627,26 +80729,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:55524 +#: book.translate.xml:55145 #, no-wrap msgid "<prompt>%</prompt> <userinput>drill -S FreeBSD.org @<replaceable>192.168.1.1</replaceable></userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55526 +#: book.translate.xml:55147 msgid "" "Once each nameserver is confirmed to support <acronym>DNSSEC</acronym>, " "start <application>Unbound</application>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:55530 +#: book.translate.xml:55151 #, no-wrap msgid "<prompt>#</prompt> <userinput>service local_unbound onestart</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55532 +#: book.translate.xml:55153 msgid "" "This will take care of updating <filename>/etc/resolv.conf</filename> so " "that queries for <acronym>DNSSEC</acronym> secured domains will now work. " @@ -80655,7 +80757,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:55538 +#: book.translate.xml:55159 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>drill -S FreeBSD.org</userinput>\n" @@ -80680,57 +80782,57 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:55560 +#: book.translate.xml:55181 msgid "DNS Server Configuration in FreeBSD 9.<replaceable>X</replaceable>" msgstr "DNS 伺服器設定於 FreeBSD 9.<replaceable>X</replaceable>" #. (itstool) path: sect2/para -#: book.translate.xml:55563 +#: book.translate.xml:55184 msgid "In FreeBSD, the BIND daemon is called <application>named</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55577 +#: book.translate.xml:55198 msgid "" "<citerefentry><refentrytitle>named</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55578 +#: book.translate.xml:55199 msgid "The BIND daemon." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55582 +#: book.translate.xml:55203 msgid "" "<citerefentry><refentrytitle>rndc</refentrytitle><manvolnum>8</manvolnum></" "citerefentry>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55583 +#: book.translate.xml:55204 msgid "Name server control utility." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55588 +#: book.translate.xml:55209 msgid "Directory where BIND zone information resides." msgstr "" #. (itstool) path: row/entry #. (itstool) path: sect4/title -#: book.translate.xml:55593 book.translate.xml:55661 +#: book.translate.xml:55214 book.translate.xml:55282 msgid "<filename>/etc/namedb/named.conf</filename>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:55594 +#: book.translate.xml:55215 msgid "Configuration file of the daemon." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:55600 +#: book.translate.xml:55221 msgid "" "Depending on how a given zone is configured on the server, the files related " "to that zone can be found in the <filename>master</filename>, " @@ -80741,23 +80843,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:55611 +#: book.translate.xml:55232 msgid "Starting BIND" msgstr "啟動 BIND" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55613 +#: book.translate.xml:55234 msgid "<primary>BIND</primary> <secondary>starting</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55618 +#: book.translate.xml:55239 msgid "" "Since BIND is installed by default, configuring it is relatively simple." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55621 +#: book.translate.xml:55242 msgid "" "The default <application>named</application> configuration is that of a " "basic resolving name server, running in a " @@ -80768,20 +80870,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:55628 +#: book.translate.xml:55249 #, no-wrap msgid "<prompt>#</prompt> <userinput>service named onestart</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55630 +#: book.translate.xml:55251 msgid "" "To ensure the <application>named</application> daemon is started at boot " "each time, put the following line into the <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55636 +#: book.translate.xml:55257 msgid "" "There are many configuration options for <filename>/etc/namedb/named.conf</" "filename> that are beyond the scope of this document. Other startup options " @@ -80793,12 +80895,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:55649 +#: book.translate.xml:55270 msgid "<primary>BIND</primary> <secondary>configuration files</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:55654 +#: book.translate.xml:55275 msgid "" "Configuration files for <application>named</application> currently reside in " "<filename>/etc/namedb</filename> directory and will need modification before " @@ -80807,7 +80909,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:55663 +#: book.translate.xml:55284 #, no-wrap msgid "" "// $FreeBSD$\n" @@ -80868,7 +80970,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:55719 +#: book.translate.xml:55340 msgid "" "Just as the comment says, to benefit from an uplink's cache, " "<literal>forwarders</literal> can be enabled here. Under normal " @@ -80881,7 +80983,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:55731 +#: book.translate.xml:55352 msgid "" "<systemitem class=\"ipaddress\">127.0.0.1</systemitem> will <emphasis>not</" "emphasis> work here. Change this <acronym>IP</acronym> address to a name " @@ -80889,7 +80991,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:55737 +#: book.translate.xml:55358 #, no-wrap msgid "" "\t/*\n" @@ -81133,28 +81235,28 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:55976 +#: book.translate.xml:55597 msgid "" "In <filename>named.conf</filename>, these are examples of slave entries for " "a forward and reverse zone." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:55979 +#: book.translate.xml:55600 msgid "" "For each new zone served, a new zone entry must be added to <filename>named." "conf</filename>." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:55982 +#: book.translate.xml:55603 msgid "" "For example, the simplest zone entry for <systemitem class=\"fqdomainname" "\">example.org</systemitem> can look like:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:55986 +#: book.translate.xml:55607 #, no-wrap msgid "" "zone \"example.org\" {\n" @@ -81164,7 +81266,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:55991 +#: book.translate.xml:55612 msgid "" "The zone is a master, as indicated by the <option>type</option> statement, " "holding its zone information in <filename>/etc/namedb/master/example.org</" @@ -81172,7 +81274,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:55997 +#: book.translate.xml:55618 #, no-wrap msgid "" "zone \"example.org\" {\n" @@ -81182,7 +81284,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56002 +#: book.translate.xml:55623 msgid "" "In the slave case, the zone information is transferred from the master name " "server for the particular zone, and saved in the file specified. If and when " @@ -81191,17 +81293,17 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:56011 +#: book.translate.xml:55632 msgid "Zone Files" msgstr "" #. (itstool) path: sect4/indexterm -#: book.translate.xml:56013 +#: book.translate.xml:55634 msgid "<primary>BIND</primary> <secondary>zone files</secondary>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56018 +#: book.translate.xml:55639 msgid "" "An example master zone file for <systemitem class=\"fqdomainname\">example." "org</systemitem> (existing within <filename>/etc/namedb/master/example.org</" @@ -81209,7 +81311,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56024 +#: book.translate.xml:55645 #, no-wrap msgid "" "$TTL 3600 ; 1 hour default TTL\n" @@ -81243,7 +81345,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56053 +#: book.translate.xml:55674 msgid "" "Note that every hostname ending in a <quote>.</quote> is an exact hostname, " "whereas everything without a trailing <quote>.</quote> is relative to the " @@ -81252,90 +81354,90 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56059 +#: book.translate.xml:55680 msgid "The format of a zone file follows:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56061 +#: book.translate.xml:55682 #, no-wrap msgid "recordname IN recordtype value" msgstr "" #. (itstool) path: sect4/indexterm -#: book.translate.xml:56063 +#: book.translate.xml:55684 msgid "" "<primary><acronym>DNS</acronym></primary> <secondary>records</secondary>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56068 +#: book.translate.xml:55689 msgid "The most commonly used <acronym>DNS</acronym> records:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56073 +#: book.translate.xml:55694 msgid "SOA" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56076 +#: book.translate.xml:55697 msgid "start of zone authority" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56081 +#: book.translate.xml:55702 msgid "NS" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56084 +#: book.translate.xml:55705 msgid "an authoritative name server" msgstr "" #. (itstool) path: varlistentry/term #. (itstool) path: glossdiv/title -#: book.translate.xml:56089 book.translate.xml:65535 +#: book.translate.xml:55710 book.translate.xml:65535 msgid "A" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56092 +#: book.translate.xml:55713 msgid "a host address" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56097 +#: book.translate.xml:55718 msgid "CNAME" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56100 +#: book.translate.xml:55721 msgid "the canonical name for an alias" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56105 +#: book.translate.xml:55726 msgid "MX" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56108 +#: book.translate.xml:55729 msgid "mail exchanger" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56113 +#: book.translate.xml:55734 msgid "PTR" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56116 +#: book.translate.xml:55737 msgid "a domain name pointer (used in reverse <acronym>DNS</acronym>)" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56122 +#: book.translate.xml:55743 #, no-wrap msgid "" "example.org. IN SOA ns1.example.org. admin.example.org. (\n" @@ -81347,32 +81449,32 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56131 +#: book.translate.xml:55752 msgid "<systemitem class=\"fqdomainname\">example.org.</systemitem>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56134 +#: book.translate.xml:55755 msgid "the domain name, also the origin for this zone file." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56140 +#: book.translate.xml:55761 msgid "<systemitem class=\"fqdomainname\">ns1.example.org.</systemitem>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56143 +#: book.translate.xml:55764 msgid "the primary/authoritative name server for this zone." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56149 +#: book.translate.xml:55770 msgid "<literal>admin.example.org.</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56152 +#: book.translate.xml:55773 msgid "" "the responsible person for this zone, email address with <quote>@</quote> " "replaced. (<email>admin@example.org</email> becomes <literal>admin.example." @@ -81380,12 +81482,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56160 +#: book.translate.xml:55781 msgid "<literal>2006051501</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56163 +#: book.translate.xml:55784 msgid "" "the serial number of the file. This must be incremented each time the zone " "file is modified. Nowadays, many admins prefer a <literal>yyyymmddrr</" @@ -81396,20 +81498,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56177 +#: book.translate.xml:55798 #, no-wrap msgid " IN NS ns1.example.org." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56179 +#: book.translate.xml:55800 msgid "" "This is an NS entry. Every name server that is going to reply " "authoritatively for the zone must have one of these entries." msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56183 +#: book.translate.xml:55804 #, no-wrap msgid "" "localhost IN A 127.0.0.1\n" @@ -81420,7 +81522,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56189 +#: book.translate.xml:55810 msgid "" "The A record indicates machine names. As seen above, <systemitem class=" "\"fqdomainname\">ns1.example.org</systemitem> would resolve to <systemitem " @@ -81428,13 +81530,13 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56193 +#: book.translate.xml:55814 #, no-wrap msgid " IN A 192.168.1.1" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56195 +#: book.translate.xml:55816 msgid "" "This line assigns <acronym>IP</acronym> address <systemitem class=\"ipaddress" "\">192.168.1.1</systemitem> to the current origin, in this case <systemitem " @@ -81442,13 +81544,13 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56199 +#: book.translate.xml:55820 #, no-wrap msgid "www IN CNAME @" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56201 +#: book.translate.xml:55822 msgid "" "The canonical name record is usually used for giving aliases to a machine. " "In the example, <systemitem>www</systemitem> is aliased to the " @@ -81459,13 +81561,13 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56215 +#: book.translate.xml:55836 #, no-wrap msgid " IN MX 10 mail.example.org." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56217 +#: book.translate.xml:55838 msgid "" "The MX record indicates which mail servers are responsible for handling " "incoming mail for the zone. <systemitem class=\"fqdomainname\">mail.example." @@ -81474,7 +81576,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56223 +#: book.translate.xml:55844 msgid "" "One can have several mail servers, with priorities of 10, 20 and so on. A " "mail server attempting to deliver to <systemitem class=\"fqdomainname" @@ -81484,14 +81586,14 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56230 +#: book.translate.xml:55851 msgid "" "For in-addr.arpa zone files (reverse <acronym>DNS</acronym>), the same " "format is used, except with PTR entries instead of A or CNAME." msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56234 +#: book.translate.xml:55855 #, no-wrap msgid "" "$TTL 3600\n" @@ -81514,31 +81616,31 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56252 +#: book.translate.xml:55873 msgid "" "This file gives the proper <acronym>IP</acronym> address to hostname " "mappings for the above fictitious domain." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56256 +#: book.translate.xml:55877 msgid "" "It is worth noting that all names on the right side of a PTR record need to " "be fully qualified (i.e., end in a <quote>.</quote>)." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56263 +#: book.translate.xml:55884 msgid "Caching Name Server" msgstr "快取名稱伺服器" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56265 +#: book.translate.xml:55886 msgid "<primary>BIND</primary> <secondary>caching name server</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56270 +#: book.translate.xml:55891 msgid "" "A caching name server is a name server whose primary role is to resolve " "recursive queries. It simply asks queries of its own, and remembers the " @@ -81546,19 +81648,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56277 +#: book.translate.xml:55898 msgid "<acronym role=\"Domain Name Security Extensions\">DNSSEC</acronym>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56279 +#: book.translate.xml:55900 msgid "" "<primary>BIND</primary> <secondary><acronym>DNS</acronym> security " "extensions</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56285 +#: book.translate.xml:55906 msgid "" "Domain Name System Security Extensions, or <acronym role=\"Domain Name " "Security Extensions\">DNSSEC</acronym> for short, is a suite of " @@ -81580,7 +81682,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56307 +#: book.translate.xml:55928 msgid "" "The following sections will demonstrate how to enable <acronym>DNSSEC</" "acronym> for an authoritative <acronym>DNS</acronym> server and a recursive " @@ -81598,12 +81700,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:56326 +#: book.translate.xml:55947 msgid "Recursive <acronym>DNS</acronym> Server Configuration" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56329 +#: book.translate.xml:55950 msgid "" "Enabling <acronym>DNSSEC</acronym> validation of queries performed by a " "recursive <acronym>DNS</acronym> server requires a few changes to " @@ -81616,20 +81718,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56341 +#: book.translate.xml:55962 #, no-wrap msgid "<prompt>%</prompt> <userinput>dig +multi +noall +answer DNSKEY . > root.dnskey</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56343 +#: book.translate.xml:55964 msgid "" "the key will end up in <filename>root.dnskey</filename>. The contents should " "look something like this:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56347 +#: book.translate.xml:55968 #, no-wrap msgid "" ". 93910 IN DNSKEY 257 3 8 (\n" @@ -81651,7 +81753,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56364 +#: book.translate.xml:55985 msgid "" "Do not be alarmed if the obtained keys differ from this example. They might " "have changed since these instructions were last updated. This output " @@ -81666,7 +81768,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56379 +#: book.translate.xml:56000 msgid "" "Now the key must be verified and formatted so that <acronym>BIND</acronym> " "can use it. To verify the key, generate a <acronym role=\"Delegation Signer" @@ -81675,20 +81777,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56386 +#: book.translate.xml:56007 #, no-wrap msgid "<prompt>%</prompt> <userinput>dnssec-dsfromkey -f root.dnskey . > root.ds</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56388 +#: book.translate.xml:56009 msgid "" "These records use SHA-1 and SHA-256 respectively, and should look similar to " "the following example, where the longer is using SHA-256." msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56392 +#: book.translate.xml:56013 #, no-wrap msgid "" ". IN DS 19036 8 1\n" @@ -81697,19 +81799,18 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56396 +#: book.translate.xml:56017 msgid "" "The SHA-256 <acronym>RR</acronym> can now be compared to the digest in <link " "xlink:href=\"https://data.iana.org/root-anchors/root-anchors.xml\">https://" "data.iana.org/root-anchors/root-anchors.xml</link>. To be absolutely sure " "that the key has not been tampered with the data in the <acronym>XML</" -"acronym> file can be verified using the <acronym>PGP</acronym> signature in " -"<link xlink:href=\"https://data.iana.org/root-anchors/root-anchors.asc" -"\">https://data.iana.org/root-anchors/root-anchors.asc</link>." +"acronym> file should be verified using a proper <acronym>PGP</acronym> " +"signature." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56403 +#: book.translate.xml:56024 msgid "" "Next, the key must be formatted properly. This differs a little between " "<acronym>BIND</acronym> versions 9.6.2 and 9.7 and later. In version 9.7 " @@ -81721,7 +81822,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56415 +#: book.translate.xml:56036 #, no-wrap msgid "" "trusted-keys {\n" @@ -81737,12 +81838,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56426 +#: book.translate.xml:56047 msgid "For 9.7 the format will instead be:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56428 +#: book.translate.xml:56049 #, no-wrap msgid "" "managed-keys {\n" @@ -81758,7 +81859,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56439 +#: book.translate.xml:56060 msgid "" "The root key can now be added to <filename>named.conf</filename> either " "directly or by including a file containing the key. After these steps, " @@ -81768,7 +81869,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56447 +#: book.translate.xml:56068 #, no-wrap msgid "" "dnssec-enable yes;\n" @@ -81776,7 +81877,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56450 +#: book.translate.xml:56071 msgid "" "To verify that it is actually working use <application>dig</application> to " "make a query for a signed zone using the resolver just configured. A " @@ -81785,13 +81886,13 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56457 +#: book.translate.xml:56078 #, no-wrap msgid "<prompt>%</prompt> <userinput>dig @<replaceable>resolver</replaceable> +dnssec se ds </userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56459 +#: book.translate.xml:56080 msgid "" "should return the <acronym>DS</acronym> <acronym>RR</acronym> for the " "<literal>.se</literal> zone. In the <literal>flags:</literal> section the " @@ -81799,7 +81900,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56465 +#: book.translate.xml:56086 #, no-wrap msgid "" "...\n" @@ -81808,18 +81909,18 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56469 +#: book.translate.xml:56090 msgid "" "The resolver is now capable of authenticating <acronym>DNS</acronym> queries." msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:56474 +#: book.translate.xml:56095 msgid "Authoritative <acronym>DNS</acronym> Server Configuration" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56477 +#: book.translate.xml:56098 msgid "" "In order to get an authoritative name server to serve a <acronym>DNSSEC</" "acronym> signed zone a little more work is required. A zone is signed using " @@ -81848,7 +81949,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56508 +#: book.translate.xml:56129 msgid "" "To enable <acronym>DNSSEC</acronym> for the <systemitem class=\"fqdomainname" "\">example.com</systemitem> zone depicted in previous examples, the first " @@ -81861,24 +81962,24 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56520 +#: book.translate.xml:56141 #, no-wrap msgid "<prompt>%</prompt> <userinput>dnssec-keygen -f KSK -a RSASHA256 -b 2048 -n ZONE example.com</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56522 +#: book.translate.xml:56143 msgid "and to generate the <acronym>ZSK</acronym>, run" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56524 +#: book.translate.xml:56145 #, no-wrap msgid "<prompt>%</prompt> <userinput>dnssec-keygen -a RSASHA256 -b 2048 -n ZONE example.com</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56526 +#: book.translate.xml:56147 msgid "" "<application>dnssec-keygen</application> outputs two files, the public and " "the private keys in files named similar to <filename>Kexample.com.+005+nnnnn." @@ -81890,7 +81991,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56538 +#: book.translate.xml:56159 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>mv Kexample.com.+005+nnnnn.key Kexample.com.+005+nnnnn.KSK.key</userinput>\n" @@ -81898,7 +81999,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56541 +#: book.translate.xml:56162 msgid "" "For the <acronym>ZSK</acronym> files, substitute <literal>KSK</literal> for " "<literal>ZSK</literal> as necessary. The files can now be included in the " @@ -81907,7 +82008,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56547 +#: book.translate.xml:56168 #, no-wrap msgid "" "$include Kexample.com.+005+nnnnn.KSK.key ; KSK\n" @@ -81915,7 +82016,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56550 +#: book.translate.xml:56171 msgid "" "Finally, sign the zone and tell <acronym>BIND</acronym> to use the signed " "zone file. To sign a zone <application>dnssec-signzone</application> is " @@ -81925,7 +82026,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:56558 +#: book.translate.xml:56179 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>dnssec-signzone -o\n" @@ -81934,7 +82035,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56562 +#: book.translate.xml:56183 msgid "" "The key supplied to the <option>-k</option> argument is the <acronym>KSK</" "acronym> and the other key file is the <acronym>ZSK</acronym> that should be " @@ -81956,7 +82057,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56587 +#: book.translate.xml:56208 msgid "" "Be sure to keep private keys confidential, as with all cryptographic keys. " "When changing a key it is best to include the new key into the zone, while " @@ -81971,12 +82072,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:56603 +#: book.translate.xml:56224 msgid "Automation Using <acronym>BIND</acronym> 9.7 or Later" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56606 +#: book.translate.xml:56227 msgid "" "Beginning with <acronym>BIND</acronym> version 9.7 a new feature called " "<emphasis>Smart Signing</emphasis> was introduced. This feature aims to make " @@ -81994,7 +82095,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:56623 +#: book.translate.xml:56244 #, no-wrap msgid "" "zone example.com {\n" @@ -82007,7 +82108,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:56631 +#: book.translate.xml:56252 msgid "" "After making these changes, generate keys for the zone as explained in <xref " "linkend=\"dns-dnssec-auth\"/>, put those keys in the key repository given as " @@ -82020,7 +82121,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56647 +#: book.translate.xml:56268 msgid "" "Although BIND is the most common implementation of <acronym>DNS</acronym>, " "there is always the issue of security. Possible and exploitable security " @@ -82028,7 +82129,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56652 +#: book.translate.xml:56273 msgid "" "While FreeBSD automatically drops <application>named</application> into a " "<citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></" @@ -82038,7 +82139,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56658 +#: book.translate.xml:56279 msgid "" "It is always good idea to read <link xlink:href=\"http://www.cert.org/" "\">CERT</link>'s security advisories and to subscribe to the <link xlink:" @@ -82048,19 +82149,19 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:56665 +#: book.translate.xml:56286 msgid "" "If a problem arises, keeping sources up to date and having a fresh build of " "<application>named</application> may help." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56672 +#: book.translate.xml:56293 msgid "Further Reading" msgstr "延伸閱讀" #. (itstool) path: sect3/para -#: book.translate.xml:56674 +#: book.translate.xml:56295 msgid "" "BIND/<application>named</application> manual pages: " "<citerefentry><refentrytitle>rndc</refentrytitle><manvolnum>8</manvolnum></" @@ -82075,35 +82176,35 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56681 +#: book.translate.xml:56302 msgid "" "<link xlink:href=\"https://www.isc.org/software/bind\">Official ISC BIND " "Page</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56686 +#: book.translate.xml:56307 msgid "" "<link xlink:href=\"https://www.isc.org/software/guild\">Official ISC BIND " "Forum</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56691 +#: book.translate.xml:56312 msgid "" "<link xlink:href=\"http://www.oreilly.com/catalog/dns5/\">O'Reilly " "<acronym>DNS</acronym> and BIND 5th Edition</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56697 +#: book.translate.xml:56318 msgid "" "<link xlink:href=\"http://www.root-dnssec.org/documentation/\">Root " "<acronym>DNSSEC</acronym></link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56702 +#: book.translate.xml:56323 msgid "" "<link xlink:href=\"http://data.iana.org/root-anchors/draft-icann-dnssec-" "trust-anchor.html\"><acronym>DNSSEC</acronym> Trust Anchor Publication for " @@ -82111,49 +82212,49 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56708 +#: book.translate.xml:56329 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc1034\">RFC1034 - Domain " "Names - Concepts and Facilities</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56713 +#: book.translate.xml:56334 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc1035\">RFC1035 - Domain " "Names - Implementation and Specification</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56719 +#: book.translate.xml:56340 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc4033\">RFC4033 - " "<acronym>DNS</acronym> Security Introduction and Requirements</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56725 +#: book.translate.xml:56346 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc4034\">RFC4034 - Resource " "Records for the <acronym>DNS</acronym> Security Extensions</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56731 +#: book.translate.xml:56352 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc4035\">RFC4035 - Protocol " "Modifications for the <acronym>DNS</acronym> Security Extensions</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56738 +#: book.translate.xml:56359 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc4641\">RFC4641 - DNSSEC " "Operational Practices</link>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56743 +#: book.translate.xml:56364 msgid "" "<link xlink:href=\"http://tools.ietf.org/html/rfc5011\">RFC 5011 - Automated " "Updates of <acronym>DNS</acronym> Security (<acronym>DNSSEC</acronym> Trust " @@ -82161,17 +82262,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:56755 +#: book.translate.xml:56376 msgid "Apache HTTP Server" msgstr "Apache HTTP 伺服器" #. (itstool) path: sect1/indexterm -#: book.translate.xml:56768 +#: book.translate.xml:56389 msgid "<primary>web servers</primary> <secondary>setting up</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56772 +#: book.translate.xml:56393 msgid "" "The open source <application>Apache HTTP Server</application> is the most " "widely used web server. FreeBSD does not install this web server by default, " @@ -82180,7 +82281,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:56778 +#: book.translate.xml:56399 msgid "" "This section summarizes how to configure and start version 2.<replaceable>x</" "replaceable> of the <application>Apache HTTP Server</application> on " @@ -82190,17 +82291,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:56785 +#: book.translate.xml:56406 msgid "Configuring and Starting Apache" msgstr "設定並啟動 Apache" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56787 +#: book.translate.xml:56408 msgid "<primary>Apache</primary> <secondary>configuration file</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56790 +#: book.translate.xml:56411 msgid "" "In FreeBSD, the main <application>Apache HTTP Server</application> " "configuration file is installed as <filename>/usr/local/etc/" @@ -82211,12 +82312,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56800 +#: book.translate.xml:56421 msgid "<literal>ServerRoot \"/usr/local\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56803 +#: book.translate.xml:56424 msgid "" "Specifies the default directory hierarchy for the <application>Apache</" "application> installation. Binaries are stored in the <filename>bin</" @@ -82226,24 +82327,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56813 +#: book.translate.xml:56434 msgid "<literal>ServerAdmin you@example.com</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56816 +#: book.translate.xml:56437 msgid "" "Change this to the email address to receive problems with the server. This " "address also appears on some server-generated pages, such as error documents." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56823 +#: book.translate.xml:56444 msgid "<literal>ServerName www.example.com:80</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56827 +#: book.translate.xml:56448 msgid "" "Allows an administrator to set a hostname which is sent back to clients for " "the server. For example, <systemitem>www</systemitem> can be used instead of " @@ -82254,14 +82355,14 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:56840 +#: book.translate.xml:56461 msgid "" "<literal>DocumentRoot \"/usr/local/www/apache2<replaceable>x</replaceable>/" "data\"</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:56844 +#: book.translate.xml:56465 msgid "" "The directory where documents will be served from. By default, all requests " "are taken from this directory, but symbolic links and aliases may be used to " @@ -82269,7 +82370,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56852 +#: book.translate.xml:56473 msgid "" "It is always a good idea to make a backup copy of the default " "<application>Apache</application> configuration file before making changes. " @@ -82280,25 +82381,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56861 +#: book.translate.xml:56482 msgid "<primary>Apache</primary> <secondary>starting or stopping</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56864 +#: book.translate.xml:56485 msgid "" "To launch <application>Apache</application> at system startup, add the " "following line to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56868 +#: book.translate.xml:56489 #, no-wrap msgid "apache<replaceable>24</replaceable>_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56870 +#: book.translate.xml:56491 msgid "" "If <application>Apache</application> should be started with non-default " "options, the following line may be added to <filename>/etc/rc.conf</" @@ -82306,26 +82407,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56875 +#: book.translate.xml:56496 #, no-wrap msgid "apache<replaceable>24</replaceable>_flags=\"\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56877 +#: book.translate.xml:56498 msgid "" "If <application>apachectl</application> does not report configuration " "errors, start <command>httpd</command> now:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:56881 +#: book.translate.xml:56502 #, no-wrap msgid "<prompt>#</prompt> <userinput>service apache<replaceable>24</replaceable> start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56883 +#: book.translate.xml:56504 msgid "" "The <command>httpd</command> service can be tested by entering " "<literal>http://<replaceable>localhost</replaceable></literal> in a web " @@ -82336,7 +82437,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56892 +#: book.translate.xml:56513 msgid "" "The <application>Apache</application> configuration can be tested for errors " "after making subsequent configuration changes while <command>httpd</command> " @@ -82344,13 +82445,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:56897 +#: book.translate.xml:56518 #, no-wrap msgid "<prompt>#</prompt> <userinput>service apache<replaceable>24</replaceable> configtest</userinput>" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:56900 +#: book.translate.xml:56521 msgid "" "It is important to note that <literal>configtest</literal> is not an " "<citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></" @@ -82359,12 +82460,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:56908 +#: book.translate.xml:56529 msgid "Virtual Hosting" msgstr "虛擬主機" #. (itstool) path: sect2/para -#: book.translate.xml:56910 +#: book.translate.xml:56531 msgid "" "Virtual hosting allows multiple websites to run on one <application>Apache</" "application> server. The virtual hosts can be <firstterm>IP-based</" @@ -82376,7 +82477,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56920 +#: book.translate.xml:56541 msgid "" "To setup <application>Apache</application> to use name-based virtual " "hosting, add a <literal>VirtualHost</literal> block for each website. For " @@ -82387,7 +82488,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:56928 +#: book.translate.xml:56549 #, no-wrap msgid "" "<VirtualHost *>\n" @@ -82402,14 +82503,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56938 +#: book.translate.xml:56559 msgid "" "For each virtual host, replace the values for <literal>ServerName</literal> " "and <literal>DocumentRoot</literal> with the values to be used." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56943 +#: book.translate.xml:56564 msgid "" "For more information about setting up virtual hosts, consult the official " "<application>Apache</application> documentation at: <uri xlink:href=\"http://" @@ -82417,17 +82518,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:56949 +#: book.translate.xml:56570 msgid "Apache Modules" msgstr "Apache 模組" #. (itstool) path: sect2/indexterm -#: book.translate.xml:56951 +#: book.translate.xml:56572 msgid "<primary>Apache</primary> <secondary>modules</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56954 +#: book.translate.xml:56575 msgid "" "<application>Apache</application> uses modules to augment the functionality " "provided by the basic server. Refer to <uri xlink:href=\"http://httpd.apache." @@ -82437,7 +82538,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:56959 +#: book.translate.xml:56580 msgid "" "In FreeBSD, some modules can be compiled with the <package>www/apache24</" "package> port. Type <command>make config</command> within <filename>/usr/" @@ -82448,27 +82549,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56970 +#: book.translate.xml:56591 msgid "<filename>mod_ssl</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56972 +#: book.translate.xml:56593 msgid "<primary>web servers</primary> <secondary>secure</secondary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56976 +#: book.translate.xml:56597 msgid "<primary>SSL</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56977 +#: book.translate.xml:56598 msgid "<primary>cryptography</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56979 +#: book.translate.xml:56600 msgid "" "The <filename>mod_ssl</filename> module uses the <application>OpenSSL</" "application> library to provide strong cryptography via the Secure Sockets " @@ -82479,7 +82580,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:56988 +#: book.translate.xml:56609 msgid "" "In FreeBSD, <filename>mod_ssl</filename> module is enabled by default in " "both the package and the port. The available configuration directives are " @@ -82488,17 +82589,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:56994 +#: book.translate.xml:56615 msgid "<filename>mod_perl</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:56996 +#: book.translate.xml:56617 msgid "<primary>mod_perl</primary> <secondary>Perl</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57001 +#: book.translate.xml:56622 msgid "" "The <filename>mod_perl</filename> module makes it possible to write " "<application>Apache</application> modules in <application>Perl</" @@ -82508,7 +82609,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57009 +#: book.translate.xml:56630 msgid "" "The <filename>mod_perl</filename> can be installed using the <package>www/" "mod_perl2</package> package or port. Documentation for using this module can " @@ -82517,17 +82618,17 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:57016 +#: book.translate.xml:56637 msgid "<filename>mod_php</filename>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:57029 +#: book.translate.xml:56650 msgid "<primary>mod_php</primary> <secondary>PHP</secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57034 +#: book.translate.xml:56655 msgid "" "<firstterm>PHP: Hypertext Preprocessor</firstterm> (<acronym>PHP</acronym>) " "is a general-purpose scripting language that is especially suited for web " @@ -82538,7 +82639,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57043 +#: book.translate.xml:56664 msgid "" "To gain support for <acronym>PHP</acronym>5 for the <application>Apache</" "application> web server, install the <package>www/mod_php56</package> " @@ -82549,25 +82650,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57051 +#: book.translate.xml:56672 #, no-wrap msgid "LoadModule php5_module libexec/apache24/libphp5.so" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57066 +#: book.translate.xml:56687 msgid "" "Then, perform a graceful restart to load the <acronym>PHP</acronym> module:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57069 book.translate.xml:57088 +#: book.translate.xml:56690 book.translate.xml:56709 #, no-wrap msgid "<prompt>#</prompt> <userinput>apachectl graceful</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57071 +#: book.translate.xml:56692 msgid "" "The <acronym>PHP</acronym> support provided by <package>www/mod_php56</" "package> is limited. Additional support can be installed using the " @@ -82576,7 +82677,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57078 +#: book.translate.xml:56699 msgid "" "Alternatively, individual extensions can be installed using the appropriate " "port. For instance, to add <acronym>PHP</acronym> support for the " @@ -82585,24 +82686,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57084 +#: book.translate.xml:56705 msgid "" "After installing an extension, the <application>Apache</application> server " "must be reloaded to pick up the new configuration changes:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57093 +#: book.translate.xml:56714 msgid "Dynamic Websites" msgstr "動態網站" #. (itstool) path: sect2/indexterm -#: book.translate.xml:57095 +#: book.translate.xml:56716 msgid "<primary>web servers</primary> <secondary>dynamic</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57100 +#: book.translate.xml:56721 msgid "" "In addition to <application>mod_perl</application> and <application>mod_php</" "application>, other languages are available for creating dynamic web " @@ -82611,22 +82712,22 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57107 +#: book.translate.xml:56728 msgid "Django" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:57109 +#: book.translate.xml:56730 msgid "<primary>Python</primary>" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:57110 +#: book.translate.xml:56731 msgid "<primary>Django</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57112 +#: book.translate.xml:56733 msgid "" "<application>Django</application> is a BSD-licensed framework designed to " "allow developers to write high performance, elegant web applications " @@ -82639,7 +82740,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57124 +#: book.translate.xml:56745 msgid "" "Django depends on <filename>mod_python</filename>, and an <acronym>SQL</" "acronym> database engine. In FreeBSD, the <package>www/py-django</package> " @@ -82652,7 +82753,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57136 +#: book.translate.xml:56757 msgid "" "Once <application>Django</application> is installed, the application will " "need a project directory along with the <application>Apache</application> " @@ -82662,7 +82763,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57144 +#: book.translate.xml:56765 msgid "" "To configure <application>Apache</application> to pass requests for certain " "<acronym>URL</acronym>s to the web application, add the following to " @@ -82671,7 +82772,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57150 +#: book.translate.xml:56771 #, no-wrap msgid "" "<Location \"/\">\n" @@ -82685,7 +82786,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57159 +#: book.translate.xml:56780 msgid "" "Refer to <uri xlink:href=\"https://docs.djangoproject.com\">https://docs." "djangoproject.com</uri> for more information on how to use " @@ -82693,17 +82794,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57165 +#: book.translate.xml:56786 msgid "Ruby on Rails" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:57167 +#: book.translate.xml:56788 msgid "<primary>Ruby on Rails</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57169 +#: book.translate.xml:56790 msgid "" "<application>Ruby on Rails</application> is another open source web " "framework that provides a full development stack. It is optimized to make " @@ -82713,7 +82814,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57176 +#: book.translate.xml:56797 msgid "" "Refer to <uri xlink:href=\"http://guides.rubyonrails.org\">http://guides." "rubyonrails.org</uri> for more information on how to use <application>Ruby " @@ -82721,17 +82822,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:57195 +#: book.translate.xml:56816 msgid "File Transfer Protocol (<acronym>FTP</acronym>)" msgstr "檔案傳輸協定 (<acronym>FTP</acronym>)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57197 +#: book.translate.xml:56818 msgid "<primary><acronym>FTP</acronym> servers</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57200 +#: book.translate.xml:56821 msgid "" "The File Transfer Protocol (<acronym>FTP</acronym>) provides users with a " "simple way to transfer files to and from an <acronym>FTP</acronym> server. " @@ -82740,7 +82841,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57206 +#: book.translate.xml:56827 msgid "" "FreeBSD provides several configuration files for controlling access to the " "<acronym>FTP</acronym> server. This section summarizes these files. Refer to " @@ -82750,7 +82851,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57214 +#: book.translate.xml:56835 msgid "" "The most important configuration step is deciding which accounts will be " "allowed access to the <acronym>FTP</acronym> server. A FreeBSD system has a " @@ -82762,7 +82863,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57223 +#: book.translate.xml:56844 msgid "" "In some cases it may be desirable to restrict the access of some users " "without preventing them completely from using <acronym>FTP</acronym>. This " @@ -82773,13 +82874,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:57230 book.translate.xml:57288 +#: book.translate.xml:56851 book.translate.xml:56909 msgid "" "<primary><acronym>FTP</acronym></primary> <secondary>anonymous</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57235 +#: book.translate.xml:56856 msgid "" "To enable anonymous <acronym>FTP</acronym> access to the server, create a " "user named <systemitem class=\"username\">ftp</systemitem> on the FreeBSD " @@ -82794,7 +82895,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57246 +#: book.translate.xml:56867 msgid "" "There are two text files that can be created to specify welcome messages to " "be displayed to <acronym>FTP</acronym> clients. The contents of <filename>/" @@ -82806,7 +82907,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57258 +#: book.translate.xml:56879 msgid "" "Once the <acronym>FTP</acronym> server has been configured, set the " "appropriate variable in <filename>/etc/rc.conf</filename> to start the " @@ -82814,41 +82915,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57263 +#: book.translate.xml:56884 #, no-wrap msgid "ftpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57265 +#: book.translate.xml:56886 msgid "To start the service now:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57267 +#: book.translate.xml:56888 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ftpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57269 +#: book.translate.xml:56890 msgid "Test the connection to the <acronym>FTP</acronym> server by typing:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57272 +#: book.translate.xml:56893 #, no-wrap msgid "<prompt>%</prompt> <userinput>ftp localhost</userinput>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:57275 +#: book.translate.xml:56896 msgid "" "<primary>log files</primary> <secondary><acronym>FTP</acronym></secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57278 +#: book.translate.xml:56899 msgid "" "The <application>ftpd</application> daemon uses " "<citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></" @@ -82859,13 +82960,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57286 +#: book.translate.xml:56907 #, no-wrap msgid "ftp.info /var/log/xferlog" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:57294 +#: book.translate.xml:56915 msgid "" "Be aware of the potential problems involved with running an anonymous " "<acronym>FTP</acronym> server. In particular, think twice about allowing " @@ -82877,7 +82978,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:57319 +#: book.translate.xml:56940 msgid "" "File and Print Services for <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> Clients " @@ -82887,27 +82988,27 @@ msgstr "" "\"registered\">Windows</trademark> 用戶端檔案與列印服務 (Samba)" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57322 +#: book.translate.xml:56943 msgid "<primary>Samba server</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57323 +#: book.translate.xml:56944 msgid "<primary>Microsoft Windows</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57324 +#: book.translate.xml:56945 msgid "<primary>file server</primary> <secondary>Windows clients</secondary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57328 +#: book.translate.xml:56949 msgid "<primary>print server</primary> <secondary>Windows clients</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57333 +#: book.translate.xml:56954 msgid "" "<application>Samba</application> is a popular open source software package " "that provides file and print services using the <acronym>SMB/CIFS</acronym> " @@ -82922,7 +83023,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57343 +#: book.translate.xml:56964 msgid "" "On FreeBSD, the <application>Samba</application> client libraries can be " "installed using the <package>net/samba-smbclient</package> port or package. " @@ -82932,24 +83033,24 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57350 +#: book.translate.xml:56971 msgid "" "A FreeBSD system can also be configured to act as a <application>Samba</" "application> server by installing the <package>net/samba43</package> port or " "package. This allows the administrator to create <acronym>SMB</acronym>/" -"<acronym>CIFS</acronym>shares on the FreeBSD system which can be accessed by " -"clients running <trademark class=\"registered\">Microsoft</" +"<acronym>CIFS</acronym> shares on the FreeBSD system which can be accessed " +"by clients running <trademark class=\"registered\">Microsoft</" "trademark> <trademark class=\"registered\">Windows</trademark> or the " "<application>Samba</application> client libraries." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57359 +#: book.translate.xml:56981 msgid "Server Configuration" msgstr "伺服器設定" #. (itstool) path: sect2/para -#: book.translate.xml:57361 +#: book.translate.xml:56983 msgid "" "<application>Samba</application> is configured in <filename>/usr/local/etc/" "smb4.conf</filename>. This file must be created before <application>Samba</" @@ -82957,7 +83058,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57366 +#: book.translate.xml:56988 msgid "" "A simple <filename>smb4.conf</filename> to share directories and printers " "with <trademark class=\"registered\">Windows</trademark> clients in a " @@ -82968,7 +83069,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57373 +#: book.translate.xml:56995 #, no-wrap msgid "" "[global]\n" @@ -82993,34 +83094,34 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57394 +#: book.translate.xml:57016 msgid "Global Settings" msgstr "全域設定" #. (itstool) path: sect3/para -#: book.translate.xml:57396 +#: book.translate.xml:57018 msgid "" "Settings that describe the network are added in <filename>/usr/local/etc/" "smb4.conf</filename>:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57401 +#: book.translate.xml:57023 msgid "<literal>workgroup</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57404 +#: book.translate.xml:57026 msgid "The name of the workgroup to be served." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57409 +#: book.translate.xml:57031 msgid "<literal>netbios name</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57412 +#: book.translate.xml:57034 msgid "" "The NetBIOS name by which a <application>Samba</application> server is " "known. By default, it is the same as the first component of the host's " @@ -83028,12 +83129,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57420 +#: book.translate.xml:57042 msgid "<literal>server string</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57423 +#: book.translate.xml:57045 msgid "" "The string that will be displayed in the output of <command>net view</" "command> and some other networking tools that seek to display descriptive " @@ -83041,12 +83142,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57431 +#: book.translate.xml:57053 msgid "<literal>wins support</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57434 +#: book.translate.xml:57056 msgid "" "Whether <application>Samba</application> will act as a <acronym>WINS</" "acronym> server. Do not enable support for <acronym>WINS</acronym> on more " @@ -83054,12 +83155,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57444 +#: book.translate.xml:57066 msgid "Security Settings" msgstr "安全性設定" #. (itstool) path: sect3/para -#: book.translate.xml:57446 +#: book.translate.xml:57068 msgid "" "The most important settings in <filename>/usr/local/etc/smb4.conf</filename> " "are the security model and the backend password format. These directives " @@ -83067,12 +83168,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57453 +#: book.translate.xml:57075 msgid "<literal>security</literal>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57456 +#: book.translate.xml:57078 msgid "" "The most common settings are <literal>security = share</literal> and " "<literal>security = user</literal>. If the clients use usernames that are " @@ -83082,7 +83183,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57465 +#: book.translate.xml:57087 msgid "" "In share level security, clients do not need to log onto the server with a " "valid username and password before attempting to connect to a shared " @@ -83091,22 +83192,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:57474 +#: book.translate.xml:57096 msgid "<literal>passdb backend</literal>" msgstr "" #. (itstool) path: listitem/indexterm -#: book.translate.xml:57477 +#: book.translate.xml:57099 msgid "<primary>NIS+</primary>" msgstr "" #. (itstool) path: listitem/indexterm -#: book.translate.xml:57479 +#: book.translate.xml:57101 msgid "<primary>SQL database</primary>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:57481 +#: book.translate.xml:57103 msgid "" "<application>Samba</application> has several different backend " "authentication models. Clients may be authenticated with LDAP, NIS+, an SQL " @@ -83118,12 +83219,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57498 +#: book.translate.xml:57120 msgid "<application>Samba</application> Users" msgstr "<application>Samba</application> 使用者" #. (itstool) path: sect3/para -#: book.translate.xml:57500 +#: book.translate.xml:57122 msgid "" "FreeBSD user accounts must be mapped to the <literal>SambaSAMAccount</" "literal> database for <trademark class=\"registered\">Windows</trademark> " @@ -83133,13 +83234,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57506 +#: book.translate.xml:57128 #, no-wrap msgid "<prompt>#</prompt> <userinput>pdbedit -a <replaceable>username</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57508 +#: book.translate.xml:57130 msgid "" "This section has only mentioned the most commonly used settings. Refer to " "the <link xlink:href=\"http://www.samba.org/samba/docs/man/Samba-HOWTO-" @@ -83148,41 +83249,41 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57516 +#: book.translate.xml:57138 msgid "Starting <application>Samba</application>" msgstr "啟動 <application>Samba</application>" #. (itstool) path: sect2/para -#: book.translate.xml:57518 +#: book.translate.xml:57140 msgid "" "To enable <application>Samba</application> at boot time, add the following " "line to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57522 +#: book.translate.xml:57144 #, no-wrap msgid "samba_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57524 +#: book.translate.xml:57146 msgid "To enable Samba4, use:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57525 +#: book.translate.xml:57147 #, no-wrap msgid "samba_server_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57527 +#: book.translate.xml:57149 msgid "To start <application>Samba</application> now:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57529 +#: book.translate.xml:57151 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service samba start</userinput>\n" @@ -83192,7 +83293,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57534 +#: book.translate.xml:57156 msgid "" "<application>Samba</application> consists of three separate daemons. Both " "the <application>nmbd</application> and <application>smbd</application> " @@ -83201,24 +83302,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57540 +#: book.translate.xml:57162 #, no-wrap msgid "winbindd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57542 +#: book.translate.xml:57164 msgid "<application>Samba</application> can be stopped at any time by typing:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57545 +#: book.translate.xml:57167 #, no-wrap msgid "<prompt>#</prompt> <userinput>service samba stop</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57547 +#: book.translate.xml:57169 msgid "" "<application>Samba</application> is a complex software suite with " "functionality that allows broad integration with <trademark class=" @@ -83229,17 +83330,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:57567 +#: book.translate.xml:57189 msgid "Clock Synchronization with NTP" msgstr "NTP 時間校對" #. (itstool) path: sect1/indexterm -#: book.translate.xml:57569 +#: book.translate.xml:57191 msgid "<primary>NTP</primary> <secondary>ntpd</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57573 +#: book.translate.xml:57195 msgid "" "Over time, a computer's clock is prone to drift. This is problematic as many " "network services require the computers on a network to share the same " @@ -83249,7 +83350,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57580 +#: book.translate.xml:57202 msgid "" "FreeBSD includes <citerefentry><refentrytitle>ntpd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> which can be " @@ -83264,7 +83365,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57591 +#: book.translate.xml:57213 msgid "" "Choosing several <acronym>NTP</acronym> servers is recommended in case one " "of the servers becomes unreachable or its clock proves unreliable. As " @@ -83273,7 +83374,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57597 +#: book.translate.xml:57219 msgid "" "This section describes how to configure <application>ntpd</application> on " "FreeBSD. Further documentation can be found in <filename>/usr/share/doc/ntp/" @@ -83281,17 +83382,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57603 +#: book.translate.xml:57225 msgid "<acronym>NTP</acronym> Configuration" msgstr "<acronym>NTP</acronym> 設定" #. (itstool) path: sect2/indexterm -#: book.translate.xml:57605 +#: book.translate.xml:57227 msgid "<primary>NTP</primary> <secondary>ntp.conf</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57609 +#: book.translate.xml:57231 msgid "" "On FreeBSD, the built-in <application>ntpd</application> can be used to " "synchronize a system's clock. To enable <application>ntpd</application> at " @@ -83304,7 +83405,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57618 +#: book.translate.xml:57240 msgid "" "This application reads <filename>/etc/ntp.conf</filename> to determine which " "<acronym>NTP</acronym> servers to query. Here is a simple example of an " @@ -83312,12 +83413,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:57624 +#: book.translate.xml:57246 msgid "Sample <filename>/etc/ntp.conf</filename>" msgstr "<filename>/etc/ntp.conf</filename> 範例" #. (itstool) path: example/programlisting -#: book.translate.xml:57626 +#: book.translate.xml:57248 #, no-wrap msgid "" "server ntplocal.example.com prefer\n" @@ -83328,7 +83429,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57633 +#: book.translate.xml:57255 msgid "" "The format of this file is described in <citerefentry><refentrytitle>ntp." "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The " @@ -83343,7 +83444,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57645 +#: book.translate.xml:57267 msgid "" "The <literal>driftfile</literal> entry specifies which file is used to store " "the system clock's frequency offset. <application>ntpd</application> uses " @@ -83356,7 +83457,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57656 +#: book.translate.xml:57278 msgid "" "By default, an <acronym>NTP</acronym> server is accessible to any network " "host. The <literal>restrict</literal> option in <filename>/etc/ntp.conf</" @@ -83366,13 +83467,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57664 +#: book.translate.xml:57286 #, no-wrap msgid "restrict default ignore" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:57667 +#: book.translate.xml:57289 msgid "" "This will also prevent access from other <acronym>NTP</acronym> servers. If " "there is a need to synchronize with an external <acronym>NTP</acronym> " @@ -83382,7 +83483,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57674 +#: book.translate.xml:57296 msgid "" "To allow machines within the network to synchronize their clocks with the " "server, but ensure they are not allowed to configure the server or be used " @@ -83390,13 +83491,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57679 +#: book.translate.xml:57301 #, no-wrap msgid "restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57681 +#: book.translate.xml:57303 msgid "" "where <systemitem class=\"ipaddress\">192.168.1.0</systemitem> is the local " "network address and <systemitem class=\"netmask\">255.255.255.0</systemitem> " @@ -83404,7 +83505,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57685 +#: book.translate.xml:57307 msgid "" "Multiple <literal>restrict</literal> entries are supported. For more " "details, refer to the <literal>Access Control Support</literal> subsection " @@ -83413,7 +83514,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57690 +#: book.translate.xml:57312 msgid "" "Once <literal>ntpd_enable=\"YES\"</literal> has been added to <filename>/etc/" "rc.conf</filename>, <application>ntpd</application> can be started now " @@ -83421,18 +83522,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57695 +#: book.translate.xml:57317 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ntpd start</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57699 +#: book.translate.xml:57321 msgid "Using <acronym>NTP</acronym> with a <acronym>PPP</acronym> Connection" msgstr "在 <acronym>PPP</acronym> 連線使用 <acronym>NTP</acronym>" #. (itstool) path: sect2/para -#: book.translate.xml:57702 +#: book.translate.xml:57324 msgid "" "<application>ntpd</application> does not need a permanent connection to the " "Internet to function properly. However, if a <acronym>PPP</acronym> " @@ -83443,7 +83544,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57711 +#: book.translate.xml:57333 #, no-wrap msgid "" " set filter dial 0 deny udp src eq 123\n" @@ -83457,7 +83558,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57720 +#: book.translate.xml:57342 msgid "" "For more details, refer to the <literal>PACKET FILTERING</literal> section " "in <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -83466,19 +83567,19 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:57726 +#: book.translate.xml:57348 msgid "" "Some Internet access providers block low-numbered ports, preventing NTP from " "functioning since replies never reach the machine." msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:57745 +#: book.translate.xml:57367 msgid "<acronym>iSCSI</acronym> Initiator and Target Configuration" msgstr "<acronym>iSCSI</acronym> Initiator 與 Target 設定" #. (itstool) path: sect1/para -#: book.translate.xml:57748 +#: book.translate.xml:57370 msgid "" "<acronym>iSCSI</acronym> is a way to share storage over a network. Unlike " "<acronym>NFS</acronym>, which works at the file system level, " @@ -83486,7 +83587,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57753 +#: book.translate.xml:57375 msgid "" "In <acronym>iSCSI</acronym> terminology, the system that shares the storage " "is known as the <emphasis>target</emphasis>. The storage can be a physical " @@ -83496,7 +83597,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57761 +#: book.translate.xml:57383 msgid "" "The clients which access the <acronym>iSCSI</acronym> storage are called " "<emphasis>initiators</emphasis>. To initiators, the storage available " @@ -83506,7 +83607,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:57769 +#: book.translate.xml:57391 msgid "" "Beginning with 10.0-RELEASE, FreeBSD provides a native, kernel-based " "<acronym>iSCSI</acronym> target and initiator. This section describes how to " @@ -83514,12 +83615,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57775 +#: book.translate.xml:57397 msgid "Configuring an <acronym>iSCSI</acronym> Target" msgstr "設定 <acronym>iSCSI</acronym> Target" #. (itstool) path: note/para -#: book.translate.xml:57778 +#: book.translate.xml:57400 msgid "" "The native <acronym>iSCSI</acronym> target is supported starting with " "FreeBSD 10.0-RELEASE. To use <acronym>iSCSI</acronym> in older versions of " @@ -83528,7 +83629,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57786 +#: book.translate.xml:57408 msgid "" "To configure an <acronym>iSCSI</acronym> target, create the <filename>/etc/" "ctl.conf</filename> configuration file, add a line to <filename>/etc/rc." @@ -83538,7 +83639,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57792 +#: book.translate.xml:57414 msgid "" "The following is an example of a simple <filename>/etc/ctl.conf</filename> " "configuration file. Refer to <citerefentry><refentrytitle>ctl.conf</" @@ -83547,7 +83648,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57797 +#: book.translate.xml:57419 #, no-wrap msgid "" "portal-group pg0 {\n" @@ -83568,7 +83669,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57813 +#: book.translate.xml:57435 msgid "" "The first entry defines the <literal>pg0</literal> portal group. Portal " "groups define which network addresses the <citerefentry><refentrytitle>ctld</" @@ -83583,7 +83684,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57825 +#: book.translate.xml:57447 msgid "" "It is not necessary to define a portal group as there is a built-in portal " "group called <literal>default</literal>. In this case, the difference " @@ -83593,7 +83694,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57833 +#: book.translate.xml:57455 msgid "" "The second entry defines a single target. Target has two possible meanings: " "a machine serving <acronym>iSCSI</acronym> or a named group of " @@ -83607,7 +83708,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57846 +#: book.translate.xml:57468 msgid "" "The <literal>auth-group no-authentication</literal> line allows all " "initiators to connect to the specified target and <literal>portal-group pg0</" @@ -83616,7 +83717,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57851 +#: book.translate.xml:57473 msgid "" "The next section defines the <acronym>LUN</acronym>. To the initiator, each " "<acronym>LUN</acronym> will be visible as a separate disk device. Multiple " @@ -83630,34 +83731,15 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57862 +#: book.translate.xml:57484 msgid "" "Next, to make sure the <citerefentry><refentrytitle>ctld</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon is started at " "boot, add this line to <filename>/etc/rc.conf</filename>:" msgstr "" -#. (itstool) path: sect2/programlisting -#: book.translate.xml:57866 -#, no-wrap -msgid "ctld_enable=\"YES\"" -msgstr "" - #. (itstool) path: sect2/para -#: book.translate.xml:57868 -msgid "" -"To start <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" -"manvolnum></citerefentry> now, run this command:" -msgstr "" - -#. (itstool) path: sect2/screen -#: book.translate.xml:57870 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>service ctld start</userinput>" -msgstr "" - -#. (itstool) path: sect2/para -#: book.translate.xml:57872 +#: book.translate.xml:57494 msgid "" "As the <citerefentry><refentrytitle>ctld</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is started, it reads <filename>/etc/ctl." @@ -83665,20 +83747,14 @@ msgid "" "command so that the changes take effect immediately:" msgstr "" -#. (itstool) path: sect2/screen -#: book.translate.xml:57877 -#, no-wrap -msgid "<prompt>#</prompt> <userinput>service ctld reload</userinput>" -msgstr "" - #. (itstool) path: sect3/title #. (itstool) path: sect5/title -#: book.translate.xml:57880 book.translate.xml:62842 +#: book.translate.xml:57502 book.translate.xml:62469 msgid "Authentication" msgstr "認證" #. (itstool) path: sect3/para -#: book.translate.xml:57882 +#: book.translate.xml:57504 msgid "" "The previous example is inherently insecure as it uses no authentication, " "granting anyone full access to all targets. To require a username and " @@ -83686,7 +83762,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57887 +#: book.translate.xml:57509 #, no-wrap msgid "" "auth-group ag0 {\n" @@ -83711,7 +83787,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57907 +#: book.translate.xml:57529 msgid "" "The <literal>auth-group</literal> section defines username and password " "pairs. An initiator trying to connect to <literal>iqn.2012-06.com.example:" @@ -83723,7 +83799,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57917 +#: book.translate.xml:57539 msgid "" "It is common to define a single exported target for every initiator. As a " "shorthand for the syntax above, the username and password can be specified " @@ -83731,7 +83807,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57922 +#: book.translate.xml:57544 #, no-wrap msgid "" "target iqn.2012-06.com.example:target0 {\n" @@ -83746,12 +83822,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:57935 +#: book.translate.xml:57557 msgid "Configuring an <acronym>iSCSI</acronym> Initiator" msgstr "設定 <acronym>iSCSI</acronym> Initiator" #. (itstool) path: note/para -#: book.translate.xml:57938 +#: book.translate.xml:57560 msgid "" "The <acronym>iSCSI</acronym> initiator described in this section is " "supported starting with FreeBSD 10.0-RELEASE. To use the <acronym>iSCSI</" @@ -83761,7 +83837,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57944 +#: book.translate.xml:57566 msgid "" "The <acronym>iSCSI</acronym> initiator requires that the " "<citerefentry><refentrytitle>iscsid</refentrytitle><manvolnum>8</manvolnum></" @@ -83771,26 +83847,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:57949 +#: book.translate.xml:57571 #, no-wrap msgid "iscsid_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57951 +#: book.translate.xml:57573 msgid "" "To start <citerefentry><refentrytitle>iscsid</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> now, run this command:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:57953 +#: book.translate.xml:57575 #, no-wrap msgid "<prompt>#</prompt> <userinput>service iscsid start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:57955 +#: book.translate.xml:57577 msgid "" "Connecting to a target can be done with or without an <filename>/etc/iscsi." "conf</filename> configuration file. This section demonstrates both types of " @@ -83798,32 +83874,32 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:57960 +#: book.translate.xml:57582 msgid "Connecting to a Target Without a Configuration File" msgstr "不使用設定檔連線到 Target " #. (itstool) path: sect3/para -#: book.translate.xml:57963 +#: book.translate.xml:57585 msgid "" "To connect an initiator to a single target, specify the <acronym>IP</" "acronym> address of the portal and the name of the target:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57967 +#: book.translate.xml:57589 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -A -p <replaceable>10.10.10.10</replaceable> -t <replaceable>iqn.2012-06.com.example:target0</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57969 +#: book.translate.xml:57591 msgid "" "To verify if the connection succeeded, run <command>iscsictl</command> " "without any arguments. The output should look similar to this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57973 +#: book.translate.xml:57595 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83831,7 +83907,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57976 +#: book.translate.xml:57598 msgid "" "In this example, the <acronym>iSCSI</acronym> session was successfully " "established, with <filename>/dev/da0</filename> representing the attached " @@ -83841,13 +83917,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:57985 +#: book.translate.xml:57607 #, no-wrap msgid "Connected: da0 da1 da2." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57987 +#: book.translate.xml:57609 msgid "" "Any errors will be reported in the output, as well as the system logs. For " "example, this message usually means that the " @@ -83856,7 +83932,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57991 +#: book.translate.xml:57613 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83864,14 +83940,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:57994 +#: book.translate.xml:57616 msgid "" "The following message suggests a networking problem, such as a wrong " "<acronym>IP</acronym> address or port:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:57998 +#: book.translate.xml:57620 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83879,12 +83955,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58001 +#: book.translate.xml:57623 msgid "This message means that the specified target name is wrong:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58004 +#: book.translate.xml:57626 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83892,12 +83968,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58007 +#: book.translate.xml:57629 msgid "This message means that the target requires authentication:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58010 +#: book.translate.xml:57632 #, no-wrap msgid "" "Target name Target portal State\n" @@ -83905,31 +83981,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58013 +#: book.translate.xml:57635 msgid "" "To specify a <acronym>CHAP</acronym> username and secret, use this syntax:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58016 +#: book.translate.xml:57638 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -A -p <replaceable>10.10.10.10</replaceable> -t <replaceable>iqn.2012-06.com.example:target0</replaceable> -u <replaceable>user</replaceable> -s <replaceable>secretsecret</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58020 +#: book.translate.xml:57642 msgid "Connecting to a Target with a Configuration File" msgstr "使用設定檔連線到 Target " #. (itstool) path: sect3/para -#: book.translate.xml:58023 +#: book.translate.xml:57645 msgid "" "To connect using a configuration file, create <filename>/etc/iscsi.conf</" "filename> with contents like this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58027 +#: book.translate.xml:57649 #, no-wrap msgid "" "t0 {\n" @@ -83942,7 +84018,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58035 +#: book.translate.xml:57657 msgid "" "The <literal>t0</literal> specifies a nickname for the configuration file " "section. It will be used by the initiator to specify which configuration to " @@ -83953,31 +84029,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58045 +#: book.translate.xml:57667 msgid "To connect to the defined target, specify the nickname:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58048 +#: book.translate.xml:57670 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -An <replaceable>t0</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58050 +#: book.translate.xml:57672 msgid "" "Alternately, to connect to all targets defined in the configuration file, " "use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58053 +#: book.translate.xml:57675 #, no-wrap msgid "<prompt>#</prompt> <userinput>iscsictl -Aa</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58055 +#: book.translate.xml:57677 msgid "" "To make the initiator automatically connect to all targets in <filename>/etc/" "iscsi.conf</filename>, add the following to <filename>/etc/rc.conf</" @@ -83985,7 +84061,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58059 +#: book.translate.xml:57681 #, no-wrap msgid "" "iscsictl_enable=\"YES\"\n" @@ -83993,19 +84069,19 @@ msgid "" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:58090 +#: book.translate.xml:57712 msgid "" "<personname> <firstname>Brad</firstname> <surname>Davis</surname> </" "personname> <contrib>Converted to SGML and updated by </contrib>" msgstr "" #. (itstool) path: chapter/indexterm -#: book.translate.xml:58102 +#: book.translate.xml:57724 msgid "<primary>security</primary> <secondary>firewalls</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58111 +#: book.translate.xml:57733 msgid "" "Firewalls make it possible to filter the incoming and outgoing traffic that " "flows through a system. A firewall can use one or more sets of <quote>rules</" @@ -84021,28 +84097,28 @@ msgstr "" "或目的主機位址,以及來源及目地的連接埠 (Port)。" #. (itstool) path: sect1/para -#: book.translate.xml:58120 +#: book.translate.xml:57742 msgid "" "Firewalls can enhance the security of a host or a network. They can be used " "to do one or more of the following:" msgstr "防火牆可以加強主機或網路的安全性,它可以用來完成下列事情:" #. (itstool) path: listitem/para -#: book.translate.xml:58125 +#: book.translate.xml:57747 msgid "" "Protect and insulate the applications, services, and machines of an internal " "network from unwanted traffic from the public Internet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58131 +#: book.translate.xml:57753 msgid "" "Limit or disable access from hosts of the internal network to services of " "the public Internet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58136 +#: book.translate.xml:57758 msgid "" "Support network address translation (<acronym>NAT</acronym>), which allows " "an internal network to use private <acronym>IP</acronym> addresses and share " @@ -84052,7 +84128,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58145 +#: book.translate.xml:57767 msgid "" "FreeBSD has three firewalls built into the base system: <application>PF</" "application>, <application>IPFW</application>, and <application>IPFILTER</" @@ -84069,7 +84145,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58159 +#: book.translate.xml:57781 msgid "" "FreeBSD provides multiple firewalls in order to meet the different " "requirements and preferences for a wide variety of users. Each user should " @@ -84077,33 +84153,33 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58168 +#: book.translate.xml:57790 msgid "How to define packet filtering rules." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58172 +#: book.translate.xml:57794 msgid "The differences between the firewalls built into FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58177 +#: book.translate.xml:57799 msgid "How to use and configure the <application>PF</application> firewall." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58182 +#: book.translate.xml:57804 msgid "How to use and configure the <application>IPFW</application> firewall." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58187 +#: book.translate.xml:57809 msgid "" "How to use and configure the <application>IPFILTER</application> firewall." msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58201 +#: book.translate.xml:57823 msgid "" "Since all firewalls are based on inspecting the values of selected packet " "control fields, the creator of the firewall ruleset must have an " @@ -84114,17 +84190,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:58213 +#: book.translate.xml:57835 msgid "Firewall Concepts" msgstr "防火牆概念" #. (itstool) path: sect1/indexterm -#: book.translate.xml:58215 +#: book.translate.xml:57837 msgid "<primary>firewall</primary> <secondary>rulesets</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58221 +#: book.translate.xml:57843 msgid "" "A ruleset contains a group of rules which pass or block packets based on the " "values contained in the packet. The bi-directional exchange of packets " @@ -84139,7 +84215,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58234 +#: book.translate.xml:57856 msgid "" "To lookup unknown port numbers, refer to <filename>/etc/services</filename>. " "Alternatively, visit <uri xlink:href=\"http://en.wikipedia.org/wiki/" @@ -84149,7 +84225,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58239 +#: book.translate.xml:57861 msgid "" "Check out this link for port numbers used by Trojans <uri xlink:href=" "\"http://www.sans.org/security-resources/idfaq/oddports.php\">http://www." @@ -84157,7 +84233,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58241 +#: book.translate.xml:57863 msgid "" "FTP has two modes: active mode and passive mode. The difference is in how " "the data channel is acquired. Passive mode is more secure as the data " @@ -84167,7 +84243,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58247 +#: book.translate.xml:57869 msgid "" "A firewall ruleset can be either <quote>exclusive</quote> or " "<quote>inclusive</quote>. An exclusive firewall allows all traffic through " @@ -84177,7 +84253,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58254 +#: book.translate.xml:57876 msgid "" "An inclusive firewall offers better control of the outgoing traffic, making " "it a better choice for systems that offer services to the public Internet. " @@ -84189,14 +84265,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58265 +#: book.translate.xml:57887 msgid "" "Unless noted otherwise, all configuration and example rulesets in this " "chapter create inclusive firewall rulesets." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58270 +#: book.translate.xml:57892 msgid "" "Security can be tightened further using a <quote>stateful firewall</quote>. " "This type of firewall keeps track of open connections and only allows " @@ -84205,7 +84281,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58275 +#: book.translate.xml:57897 msgid "" "Stateful filtering treats traffic as a bi-directional exchange of packets " "comprising a session. When state is specified on a matching rule the " @@ -84216,12 +84292,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58284 +#: book.translate.xml:57906 msgid "When the session completes, it is removed from the dynamic state table." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58287 +#: book.translate.xml:57909 msgid "" "Stateful filtering allows one to focus on blocking/passing new sessions. If " "the new session is passed, all its subsequent packets are allowed " @@ -84232,7 +84308,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58295 +#: book.translate.xml:57917 msgid "" "<acronym>NAT</acronym> stands for <emphasis>Network Address Translation</" "emphasis>. <acronym>NAT</acronym> function enables the private LAN behind " @@ -84243,7 +84319,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58303 +#: book.translate.xml:57925 msgid "" "<acronym>NAT</acronym> will automatically translate the private LAN IP " "address for each system on the LAN to the single public IP address as " @@ -84252,7 +84328,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58309 +#: book.translate.xml:57931 msgid "" "According to RFC 1918, the following IP address ranges are reserved for " "private networks which will never be routed directly to the public Internet, " @@ -84260,22 +84336,22 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58316 +#: book.translate.xml:57938 msgid "<literal>10.0.0.0/8</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58320 +#: book.translate.xml:57942 msgid "<literal>172.16.0.0/12</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58324 +#: book.translate.xml:57946 msgid "<literal>192.168.0.0/16</literal>." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:58329 +#: book.translate.xml:57951 msgid "" "When working with the firewall rules, be <emphasis>very careful</emphasis>. " "Some configurations <emphasis>can lock the administrator out</emphasis> of " @@ -84285,24 +84361,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:58340 +#: book.translate.xml:57962 msgid "PF" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:58343 +#: book.translate.xml:57965 msgid "" "<personname> <firstname>John</firstname> <surname>Ferrell</surname> </" "personname> <contrib>Revised and updated by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:58353 +#: book.translate.xml:57975 msgid "<primary>firewall</primary> <secondary>PF</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58359 +#: book.translate.xml:57981 msgid "" "Since FreeBSD 5.3, a ported version of OpenBSD's <application>PF</" "application> firewall has been included as an integrated part of the base " @@ -84312,7 +84388,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58367 +#: book.translate.xml:57989 msgid "" "The OpenBSD Project maintains the definitive reference for <application>PF</" "application> in the <link xlink:href=\"http://www.openbsd.org/faq/pf/\">PF " @@ -84322,7 +84398,7 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:58373 +#: book.translate.xml:57995 msgid "" "When reading the <link xlink:href=\"http://www.openbsd.org/faq/pf/\">PF FAQ</" "link>, keep in mind that FreeBSD uses the same version of <application>PF</" @@ -84330,7 +84406,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58378 +#: book.translate.xml:58000 msgid "" "The <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-pf" "\">FreeBSD packet filter mailing list</link> is a good place to ask " @@ -84340,7 +84416,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58383 +#: book.translate.xml:58005 msgid "" "More information about porting <application>PF</application> to FreeBSD can " "be found at <uri xlink:href=\"http://pf4freebsd.love2party.net/\">http://" @@ -84348,7 +84424,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:58386 +#: book.translate.xml:58008 msgid "" "This section of the Handbook focuses on <application>PF</application> as it " "pertains to FreeBSD. It demonstrates how to enable <application>PF</" @@ -84357,12 +84433,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:58393 +#: book.translate.xml:58015 msgid "Enabling <application>PF</application>" msgstr "開啟 <application>PF</application>" #. (itstool) path: sect2/para -#: book.translate.xml:58395 +#: book.translate.xml:58017 msgid "" "In order to use <application>PF</application>, its kernel module must be " "first loaded. This section describes the entries that can be added to " @@ -84371,19 +84447,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58400 +#: book.translate.xml:58022 msgid "" "Start by adding the following line to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58403 +#: book.translate.xml:58025 #, no-wrap msgid "pf_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58405 +#: book.translate.xml:58027 msgid "" "Additional options, described in <citerefentry><refentrytitle>pfctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, can be passed to " @@ -84393,13 +84469,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58411 +#: book.translate.xml:58033 #, no-wrap msgid "pf_flags=\"\" # additional flags for pfctl startup" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58413 +#: book.translate.xml:58035 msgid "" "<application>PF</application> will not start if it cannot find its ruleset " "configuration file. The default ruleset is already created and is named " @@ -84409,13 +84485,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58421 +#: book.translate.xml:58043 #, no-wrap msgid "pf_rules=\"<replaceable>/path/to/pf.conf</replaceable>\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58423 +#: book.translate.xml:58045 msgid "" "Logging support for <application>PF</application> is provided by " "<citerefentry><refentrytitle>pflog</refentrytitle><manvolnum>4</manvolnum></" @@ -84424,13 +84500,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58427 +#: book.translate.xml:58049 #, no-wrap msgid "pflog_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58429 +#: book.translate.xml:58051 msgid "" "The following lines can also be added in order to change the default " "location of the log file or to specify any additional flags to pass to " @@ -84439,7 +84515,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58434 +#: book.translate.xml:58056 #, no-wrap msgid "" "pflog_logfile=\"/var/log/pflog\" # where pflogd should store the logfile\n" @@ -84447,7 +84523,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58437 +#: book.translate.xml:58059 msgid "" "Finally, if there is a <acronym>LAN</acronym> behind the firewall and " "packets need to be forwarded for the computers on the <acronym>LAN</" @@ -84455,20 +84531,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58442 +#: book.translate.xml:58064 #, no-wrap msgid "gateway_enable=\"YES\" # Enable as LAN gateway" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58444 +#: book.translate.xml:58066 msgid "" "After saving the needed edits, <application>PF</application> can be started " "with logging support by typing:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:58448 +#: book.translate.xml:58070 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service pf start</userinput>\n" @@ -84476,7 +84552,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58502 +#: book.translate.xml:58124 msgid "" "By default, <application>PF</application> reads its configuration rules from " "<filename>/etc/pf.conf</filename> and modifies, drops, or passes packets " @@ -84488,7 +84564,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58512 +#: book.translate.xml:58134 msgid "" "To control <application>PF</application>, use <command>pfctl</command>. " "<xref linkend=\"pfctl\"/> summarizes some useful options to this command. " @@ -84497,71 +84573,71 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:58518 +#: book.translate.xml:58140 msgid "Useful <command>pfctl</command> Options" msgstr "有用的 <command>pfctl</command> 選項" #. (itstool) path: row/entry -#: book.translate.xml:58524 book.translate.xml:62056 book.translate.xml:65535 +#: book.translate.xml:58146 book.translate.xml:61678 book.translate.xml:65535 msgid "Purpose" msgstr "用途" #. (itstool) path: row/entry -#: book.translate.xml:58530 +#: book.translate.xml:58152 msgid "<command>pfctl -e</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58532 +#: book.translate.xml:58154 msgid "Enable <application>PF</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58536 +#: book.translate.xml:58158 msgid "<command>pfctl -d</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58538 +#: book.translate.xml:58160 msgid "Disable <application>PF</application>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58542 +#: book.translate.xml:58164 msgid "<command>pfctl -F all -f /etc/pf.conf</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58544 +#: book.translate.xml:58166 msgid "" "Flush all <acronym>NAT</acronym>, filter, state, and table rules and reload " "<filename>/etc/pf.conf</filename>." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58550 +#: book.translate.xml:58172 msgid "<command>pfctl -s [ rules | nat | states ]</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58552 +#: book.translate.xml:58174 msgid "" "Report on the filter rules, <acronym>NAT</acronym> rules, or state table." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58558 +#: book.translate.xml:58180 msgid "<command>pfctl -vnf /etc/pf.conf</command>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:58560 +#: book.translate.xml:58182 msgid "" "Check <filename>/etc/pf.conf</filename> for errors, but do not load ruleset." msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:58568 +#: book.translate.xml:58190 msgid "" "<package>security/sudo</package> is useful for running commands like " "<command>pfctl</command> that require elevated privileges. It can be " @@ -84569,7 +84645,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58574 +#: book.translate.xml:58196 msgid "" "To keep an eye on the traffic that passes through the <application>PF</" "application> firewall, consider installing the <package>sysutils/pftop</" @@ -84580,12 +84656,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:58583 +#: book.translate.xml:58205 msgid "Enabling <application>ALTQ</application>" msgstr "開啟 <application>ALTQ</application>" #. (itstool) path: sect2/para -#: book.translate.xml:58585 +#: book.translate.xml:58207 msgid "" "On FreeBSD, <application>ALTQ</application> can be used with " "<application>PF</application> to provide Quality of Service (<acronym>QOS</" @@ -84595,7 +84671,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58592 +#: book.translate.xml:58214 msgid "" "Before enabling <application>ALTQ</application>, refer to " "<citerefentry><refentrytitle>altq</refentrytitle><manvolnum>4</manvolnum></" @@ -84604,7 +84680,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58596 +#: book.translate.xml:58218 msgid "" "<application>ALTQ</application> is not available as a loadable kernel " "module. If the system's interfaces support <application>ALTQ</application>, " @@ -84615,7 +84691,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58605 +#: book.translate.xml:58227 #, no-wrap msgid "" "options ALTQ\n" @@ -84627,17 +84703,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58612 +#: book.translate.xml:58234 msgid "The following scheduler algorithms are available:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58616 +#: book.translate.xml:58238 msgid "CBQ" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58618 +#: book.translate.xml:58240 msgid "" "Class Based Queuing (<acronym>CBQ</acronym>) is used to divide a " "connection's bandwidth into different classes or queues to prioritize " @@ -84645,12 +84721,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58626 +#: book.translate.xml:58248 msgid "RED" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58628 +#: book.translate.xml:58250 msgid "" "Random Early Detection (<acronym>RED</acronym>) is used to avoid network " "congestion by measuring the length of the queue and comparing it to the " @@ -84659,12 +84735,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58637 +#: book.translate.xml:58259 msgid "RIO" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58639 +#: book.translate.xml:58261 msgid "" "In Random Early Detection In and Out (<acronym>RIO</acronym>) mode, " "<acronym>RED</acronym> maintains multiple average queue lengths and multiple " @@ -84672,12 +84748,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58648 +#: book.translate.xml:58270 msgid "HFSC" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58650 +#: book.translate.xml:58272 msgid "" "Hierarchical Fair Service Curve Packet Scheduler (<acronym>HFSC</acronym>) " "is described in <uri xlink:href=\"http://www-2.cs.cmu.edu/~hzhang/HFSC/main." @@ -84685,19 +84761,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:58656 +#: book.translate.xml:58278 msgid "PRIQ" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58658 +#: book.translate.xml:58280 msgid "" "Priority Queuing (<acronym>PRIQ</acronym>) always passes traffic that is in " "a higher queue first." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58664 +#: book.translate.xml:58286 msgid "" "More information about the scheduling algorithms and example rulesets are " "available at <uri xlink:href=\"http://www.openbsd.org/faq/pf/queueing.html" @@ -84705,19 +84781,19 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:58670 +#: book.translate.xml:58292 msgid "<application>PF</application> Rulesets" msgstr "<application>PF</application> 規則集" #. (itstool) path: authorgroup/author -#: book.translate.xml:58673 +#: book.translate.xml:58295 msgid "" "<personname> <firstname>Peter</firstname> <surname>Hansteen</surname> " "<othername>N. M.</othername> </personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58684 +#: book.translate.xml:58306 msgid "" "This section demonstrates how to create a customized ruleset. It starts with " "the simplest of rulesets and builds upon its concepts using several examples " @@ -84726,7 +84802,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58690 +#: book.translate.xml:58312 msgid "" "The simplest possible ruleset is for a single machine that does not run any " "services and which needs access to one network, which may be the Internet. " @@ -84735,7 +84811,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58696 +#: book.translate.xml:58318 #, no-wrap msgid "" "block in all\n" @@ -84743,7 +84819,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58699 +#: book.translate.xml:58321 msgid "" "The first rule denies all incoming traffic by default. The second rule " "allows connections created by this system to pass out, while retaining state " @@ -84753,13 +84829,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:58707 +#: book.translate.xml:58329 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -e ; pfctl -f /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58709 +#: book.translate.xml:58331 msgid "" "In addition to keeping state, <application>PF</application> provides " "<firstterm>lists</firstterm> and <firstterm>macros</firstterm> which can be " @@ -84769,7 +84845,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58717 +#: book.translate.xml:58339 #, no-wrap msgid "" "tcp_services = \"{ ssh, smtp, domain, www, pop3, auth, pop3s }\"\n" @@ -84777,7 +84853,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58720 +#: book.translate.xml:58342 msgid "" "<application>PF</application> understands port names as well as port " "numbers, as long as the names are listed in <filename>/etc/services</" @@ -84790,7 +84866,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:58731 +#: book.translate.xml:58353 #, no-wrap msgid "" "tcp_services = \"{ ssh, smtp, domain, www, pop3, auth, pop3s }\"\n" @@ -84801,7 +84877,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58737 +#: book.translate.xml:58359 msgid "" "Even though <acronym>UDP</acronym> is considered to be a stateless protocol, " "<application>PF</application> is able to track some state information. For " @@ -84811,7 +84887,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58744 +#: book.translate.xml:58366 msgid "" "Whenever an edit is made to a ruleset, the new rules must be loaded so they " "can be used:" @@ -84819,13 +84895,13 @@ msgstr "" #. (itstool) path: sect2/screen #. (itstool) path: sect3/screen -#: book.translate.xml:58747 book.translate.xml:58994 +#: book.translate.xml:58369 book.translate.xml:58616 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -f /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58749 +#: book.translate.xml:58371 msgid "" "If there are no syntax errors, <command>pfctl</command> will not output any " "messages during the rule load. Rules can also be tested before attempting to " @@ -84833,13 +84909,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:58753 +#: book.translate.xml:58375 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -nf /etc/pf.conf</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:58755 +#: book.translate.xml:58377 msgid "" "Including <option>-n</option> causes the rules to be interpreted only, but " "not loaded. This provides an opportunity to correct any errors. At all " @@ -84848,7 +84924,7 @@ msgid "" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:58763 +#: book.translate.xml:58385 msgid "" "Adding <option>-v</option> to a <command>pfctl</command> ruleset verify or " "load will display the fully parsed rules exactly the way they will be " @@ -84856,12 +84932,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58770 +#: book.translate.xml:58392 msgid "A Simple Gateway with NAT" msgstr "使用 NAT 的簡單通訊閘" #. (itstool) path: sect3/para -#: book.translate.xml:58772 +#: book.translate.xml:58394 msgid "" "This section demonstrates how to configure a FreeBSD system running " "<application>PF</application> to act as a gateway for at least one other " @@ -84872,7 +84948,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58780 +#: book.translate.xml:58402 msgid "" "First, enable the gateway in order to let the machine forward the network " "traffic it receives on one interface to another interface. This " @@ -84881,31 +84957,31 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58785 +#: book.translate.xml:58407 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.inet.ip.forwarding=1</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58787 +#: book.translate.xml:58409 msgid "To forward <acronym>IPv6</acronym> traffic, use:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:58789 +#: book.translate.xml:58411 #, no-wrap msgid "<prompt>#</prompt> <userinput>sysctl net.inet6.ip6.forwarding=1</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58791 +#: book.translate.xml:58413 msgid "" "To enable these settings at system boot, add the following to <filename>/etc/" "rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58794 +#: book.translate.xml:58416 #, no-wrap msgid "" "gateway_enable=\"YES\"\t\t#for ipv4\n" @@ -84913,14 +84989,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58797 +#: book.translate.xml:58419 msgid "" "Verify with <command>ifconfig</command> that both of the interfaces are up " "and running." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58800 +#: book.translate.xml:58422 msgid "" "Next, create the <application>PF</application> rules to allow the gateway to " "pass traffic. While the following rule allows stateful traffic to pass from " @@ -84929,26 +85005,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58807 +#: book.translate.xml:58429 #, no-wrap msgid "pass in on xl1 from xl1:network to xl0:network port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58809 +#: book.translate.xml:58431 msgid "" "That rule only lets the traffic pass in to the gateway on the internal " "interface. To let the packets go further, a matching rule is needed:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58813 +#: book.translate.xml:58435 #, no-wrap msgid "pass out on xl0 from xl1:network to xl0:network port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58815 +#: book.translate.xml:58437 msgid "" "While these two rules will work, rules this specific are rarely needed. For " "a busy network admin, a readable ruleset is a safer ruleset. The remainder " @@ -84957,13 +85033,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58822 +#: book.translate.xml:58444 #, no-wrap msgid "pass from xl1:network to any port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58824 +#: book.translate.xml:58446 msgid "" "The <literal>interface:network</literal> notation can be replaced with a " "macro to make the ruleset even more readable. For example, a <literal>" @@ -84975,7 +85051,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58835 +#: book.translate.xml:58457 msgid "" "If required, <literal>$localnet</literal> could even be defined as a list of " "networks. Whatever the specific needs, a sensible <literal>$localnet</" @@ -84983,13 +85059,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58840 +#: book.translate.xml:58462 #, no-wrap msgid "pass from $localnet to any port $ports keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58842 +#: book.translate.xml:58464 msgid "" "The following sample ruleset allows all traffic initiated by machines on the " "internal network. It first defines two macros to represent the external and " @@ -84997,7 +85073,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:58848 +#: book.translate.xml:58470 msgid "" "For dialup users, the external interface will use <filename>tun0</filename>. " "For an <acronym>ADSL</acronym> connection, specifically those using " @@ -85007,7 +85083,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58857 +#: book.translate.xml:58479 #, no-wrap msgid "" "ext_if = \"xl0\"\t# macro for external interface - use tun0 for PPPoE\n" @@ -85020,7 +85096,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58865 +#: book.translate.xml:58487 msgid "" "This ruleset introduces the <literal>nat</literal> rule which is used to " "handle the network address translation from the non-routable addresses " @@ -85033,14 +85109,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58876 +#: book.translate.xml:58498 msgid "" "Note that this ruleset probably allows more traffic to pass out of the " "network than is needed. One reasonable setup could create this macro:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58880 +#: book.translate.xml:58502 #, no-wrap msgid "" "client_out = \"{ ftp-data, ftp, ssh, domain, pop3, auth, nntp, http, \\\n" @@ -85048,12 +85124,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58883 +#: book.translate.xml:58505 msgid "to use in the main pass rule:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58885 +#: book.translate.xml:58507 #, no-wrap msgid "" "pass inet proto tcp from $localnet to any port $client_out \\\n" @@ -85061,27 +85137,27 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58888 +#: book.translate.xml:58510 msgid "" "A few other pass rules may be needed. This one enables <acronym>SSH</" "acronym> on the external interface::" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58891 +#: book.translate.xml:58513 #, no-wrap msgid "pass in inet proto tcp to $ext_if port ssh" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58893 +#: book.translate.xml:58515 msgid "" "This macro definition and rule allows <acronym>DNS</acronym> and " "<acronym>NTP</acronym> for internal clients:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58897 +#: book.translate.xml:58519 #, no-wrap msgid "" "udp_services = \"{ domain, ntp }\"\n" @@ -85089,7 +85165,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58900 +#: book.translate.xml:58522 msgid "" "Note the <literal>quick</literal> keyword in this rule. Since the ruleset " "consists of several rules, it is important to understand the relationships " @@ -85103,12 +85179,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:58915 +#: book.translate.xml:58537 msgid "Creating an <acronym>FTP</acronym> Proxy" msgstr "建立 <acronym>FTP</acronym> Proxy" #. (itstool) path: sect3/para -#: book.translate.xml:58917 +#: book.translate.xml:58539 msgid "" "Configuring working <acronym>FTP</acronym> rules can be problematic due to " "the nature of the <acronym>FTP</acronym> protocol. <acronym>FTP</acronym> " @@ -85117,26 +85193,26 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58926 +#: book.translate.xml:58548 msgid "Passwords are transferred in the clear." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58930 +#: book.translate.xml:58552 msgid "" "The protocol demands the use of at least two <acronym>TCP</acronym> " "connections (control and data) on separate ports." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:58936 +#: book.translate.xml:58558 msgid "" "When a session is established, data is communicated using randomly selected " "ports." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58941 +#: book.translate.xml:58563 msgid "" "All of these points present security challenges, even before considering any " "potential security weaknesses in client or server software. More secure " @@ -85148,7 +85224,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58948 +#: book.translate.xml:58570 msgid "" "For those situations when <acronym>FTP</acronym> is required, " "<application>PF</application> provides redirection of <acronym>FTP</acronym> " @@ -85160,26 +85236,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58957 +#: book.translate.xml:58579 msgid "" "To enable the <acronym>FTP</acronym> proxy, add this line to <filename>/etc/" "rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58960 +#: book.translate.xml:58582 #, no-wrap msgid "ftpproxy_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58962 +#: book.translate.xml:58584 msgid "" "Then start the proxy by running <command>service ftp-proxy start</command>." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58965 +#: book.translate.xml:58587 msgid "" "For a basic configuration, three elements need to be added to <filename>/etc/" "pf.conf</filename>. First, the anchors which the proxy will use to insert " @@ -85187,7 +85263,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58970 +#: book.translate.xml:58592 #, no-wrap msgid "" "nat-anchor \"ftp-proxy/*\"\n" @@ -85195,14 +85271,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58973 +#: book.translate.xml:58595 msgid "" "Second, a pass rule is needed to allow <acronym>FTP</acronym> traffic in to " "the proxy." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58976 +#: book.translate.xml:58598 msgid "" "Third, redirection and <acronym>NAT</acronym> rules need to be defined " "before the filtering rules. Insert this <literal>rdr</literal> rule " @@ -85210,38 +85286,38 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58981 +#: book.translate.xml:58603 #, no-wrap msgid "rdr pass on $int_if proto tcp from any to any port ftp -> 127.0.0.1 port 8021" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58983 +#: book.translate.xml:58605 msgid "Finally, allow the redirected traffic to pass:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:58985 +#: book.translate.xml:58607 #, no-wrap msgid "pass out proto tcp from $proxy to any port ftp" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58987 +#: book.translate.xml:58609 msgid "" "where <literal>$proxy</literal> expands to the address the proxy daemon is " "bound to." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58990 +#: book.translate.xml:58612 msgid "" "Save <filename>/etc/pf.conf</filename>, load the new rules, and verify from " "a client that <acronym>FTP</acronym> connections are working:" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:58996 +#: book.translate.xml:58618 msgid "" "This example covers a basic setup where the clients in the local network " "need to contact <acronym>FTP</acronym> servers elsewhere. This basic " @@ -85256,7 +85332,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59009 +#: book.translate.xml:58631 msgid "" "For ways to run an <acronym>FTP</acronym> server protected by " "<application>PF</application> and <citerefentry><refentrytitle>ftp-proxy</" @@ -85266,12 +85342,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59018 +#: book.translate.xml:58640 msgid "Managing <acronym>ICMP</acronym>" msgstr "管理 <acronym>ICMP</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:59020 +#: book.translate.xml:58642 msgid "" "Many of the tools used for debugging or troubleshooting a <acronym>TCP/IP</" "acronym> network rely on the Internet Control Message Protocol " @@ -85280,7 +85356,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59025 +#: book.translate.xml:58647 msgid "" "The <acronym>ICMP</acronym> protocol sends and receives <emphasis>control " "messages</emphasis> between hosts and gateways, mainly to provide feedback " @@ -85291,7 +85367,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59034 +#: book.translate.xml:58656 msgid "" "From a firewall perspective, some <acronym>ICMP</acronym> control messages " "are vulnerable to known attack vectors. Also, letting all diagnostic traffic " @@ -85301,20 +85377,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59042 +#: book.translate.xml:58664 #, no-wrap msgid "pass inet proto icmp from any to any" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59044 +#: book.translate.xml:58666 msgid "" "One solution is to let all <acronym>ICMP</acronym> traffic from the local " "network through while stopping all probes from outside the network:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59048 +#: book.translate.xml:58670 #, no-wrap msgid "" "pass inet proto icmp from $localnet to any keep state\n" @@ -85322,7 +85398,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59051 +#: book.translate.xml:58673 msgid "" "Additional options are available which demonstrate some of <application>PF</" "application>'s flexibility. For example, rather than allowing all " @@ -85334,25 +85410,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59058 +#: book.translate.xml:58680 #, no-wrap msgid "icmp_types = \"echoreq\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59060 +#: book.translate.xml:58682 msgid "and a rule which uses the macro:" msgstr "" #. (itstool) path: sect3/programlisting #. (itstool) path: sect4/programlisting -#: book.translate.xml:59062 book.translate.xml:59122 +#: book.translate.xml:58684 book.translate.xml:58744 #, no-wrap msgid "pass inet proto icmp all icmp-type $icmp_types keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59064 +#: book.translate.xml:58686 msgid "" "If other types of <acronym>ICMP</acronym> packets are needed, expand " "<literal>icmp_types</literal> to a list of those packet types. Type " @@ -85365,14 +85441,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59072 +#: book.translate.xml:58694 msgid "" "Since Unix <command>traceroute</command> uses <acronym>UDP</acronym> by " "default, another rule is needed to allow Unix <command>traceroute</command>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59076 +#: book.translate.xml:58698 #, no-wrap msgid "" "# allow out the default range for traceroute(8):\n" @@ -85380,7 +85456,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59079 +#: book.translate.xml:58701 msgid "" "Since <command>TRACERT.EXE</command> on Microsoft Windows systems uses " "<acronym>ICMP</acronym> echo request messages, only the first rule is needed " @@ -85392,12 +85468,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:59089 +#: book.translate.xml:58711 msgid "Path <acronym>MTU</acronym> Discovery" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:59091 +#: book.translate.xml:58713 msgid "" "Internet protocols are designed to be device independent, and one " "consequence of device independence is that the optimal packet size for a " @@ -85409,7 +85485,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:59102 +#: book.translate.xml:58724 msgid "" "<acronym>TCP/IP</acronym> uses a process known as path <acronym>MTU</" "acronym> discovery to determine the right packet size for a connection. This " @@ -85424,20 +85500,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:59116 +#: book.translate.xml:58738 #, no-wrap msgid "icmp_types = \"{ echoreq, unreach }\"" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:59118 +#: book.translate.xml:58740 msgid "" "Since the pass rule already uses that macro, it does not need to be modified " "in order to support the new <acronym>ICMP</acronym> type:" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:59124 +#: book.translate.xml:58746 msgid "" "<application>PF</application> allows filtering on all variations of " "<acronym>ICMP</acronym> types and codes. The list of possible types and " @@ -85448,12 +85524,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59132 +#: book.translate.xml:58754 msgid "Using Tables" msgstr "使用 Tables" #. (itstool) path: sect3/para -#: book.translate.xml:59134 +#: book.translate.xml:58756 msgid "" "Some types of data are relevant to filtering and redirection at a given " "time, but their definition is too long to be included in the ruleset file. " @@ -85464,13 +85540,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59143 +#: book.translate.xml:58765 #, no-wrap msgid "table <clients> { 192.168.2.0/24, !192.168.2.5 }" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59145 +#: book.translate.xml:58767 msgid "" "In this example, the <literal>192.168.2.0/24</literal> network is part of " "the table, except for the address <literal>192.168.2.5</literal>, which is " @@ -85480,7 +85556,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59153 +#: book.translate.xml:58775 #, no-wrap msgid "" "192.168.2.0/24\n" @@ -85488,42 +85564,42 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59156 +#: book.translate.xml:58778 msgid "To refer to the file, define the table like this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59158 +#: book.translate.xml:58780 #, no-wrap msgid "table <clients> persist file \"/etc/clients\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59160 +#: book.translate.xml:58782 msgid "Once the table is defined, it can be referenced by a rule:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59163 +#: book.translate.xml:58785 #, no-wrap msgid "pass inet proto tcp from <clients> to any port $client_out flags S/SA keep state" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59165 +#: book.translate.xml:58787 msgid "" "A table's contents can be manipulated live, using <command>pfctl</command>. " "This example adds another network to the table:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:59169 +#: book.translate.xml:58791 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -t clients -T add 192.168.1.0/16</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59171 +#: book.translate.xml:58793 msgid "" "Note that any changes made this way will take affect now, making them ideal " "for testing, but will not survive a power failure or reboot. To make the " @@ -85537,25 +85613,25 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:59183 +#: book.translate.xml:58805 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -t clients -T replace -f /etc/clients</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59187 +#: book.translate.xml:58809 msgid "Using Overload Tables to Protect <acronym>SSH</acronym>" msgstr "使用 Overload Tables 保護 <acronym>SSH</acronym>" #. (itstool) path: sect3/para -#: book.translate.xml:59190 +#: book.translate.xml:58812 msgid "" "Those who run <acronym>SSH</acronym> on an external interface have probably " "seen something like this in the authentication logs:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59194 +#: book.translate.xml:58816 #, no-wrap msgid "" "Sep 26 03:12:34 skapet sshd[25771]: Failed password for root from 200.72.41.31 port 40992 ssh2\n" @@ -85567,7 +85643,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59201 +#: book.translate.xml:58823 msgid "" "This is indicative of a brute force attack where somebody or some program is " "trying to discover the user name and password which will let them into the " @@ -85575,7 +85651,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59205 +#: book.translate.xml:58827 msgid "" "If external <acronym>SSH</acronym> access is needed for legitimate users, " "changing the default port used by <acronym>SSH</acronym> can offer some " @@ -85587,26 +85663,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59215 +#: book.translate.xml:58837 msgid "" "To configure this, create this table in the tables section of the ruleset:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59218 +#: book.translate.xml:58840 #, no-wrap msgid "table <bruteforce> persist" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59220 +#: book.translate.xml:58842 msgid "" "Then, somewhere early in the ruleset, add rules to block brute access while " "allowing legitimate access:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59223 +#: book.translate.xml:58845 #, no-wrap msgid "" "block quick from <bruteforce>\n" @@ -85617,21 +85693,21 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59229 +#: book.translate.xml:58851 msgid "" "The part in parentheses defines the limits and the numbers should be changed " "to meet local requirements. It can be read as follows:" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59233 +#: book.translate.xml:58855 msgid "" "<literal>max-src-conn</literal> is the number of simultaneous connections " "allowed from one host." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59236 +#: book.translate.xml:58858 msgid "" "<literal>max-src-conn-rate</literal> is the rate of new connections allowed " "from any single host (<replaceable>15</replaceable>) per number of seconds " @@ -85639,7 +85715,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59241 +#: book.translate.xml:58863 msgid "" "<literal>overload <bruteforce></literal> means that any host which " "exceeds these limits gets its address added to the <literal>bruteforce</" @@ -85648,7 +85724,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59247 +#: book.translate.xml:58869 msgid "" "Finally, <literal>flush global</literal> says that when a host reaches the " "limit, that all (<literal>global</literal>) of that host's connections will " @@ -85656,7 +85732,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:59253 +#: book.translate.xml:58875 msgid "" "These rules will <emphasis>not</emphasis> block slow bruteforcers, as " "described in <link xlink:href=\"http://home.nuug.no/~peter/hailmary2013/" @@ -85664,7 +85740,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59257 +#: book.translate.xml:58879 msgid "" "This example ruleset is intended mainly as an illustration. For example, if " "a generous number of connections in general are wanted, but the desire is to " @@ -85674,7 +85750,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59265 +#: book.translate.xml:58887 #, no-wrap msgid "" "pass quick proto { tcp, udp } from any to any port ssh \\\n" @@ -85684,12 +85760,12 @@ msgid "" msgstr "" #. (itstool) path: note/title -#: book.translate.xml:59271 +#: book.translate.xml:58893 msgid "It May Not be Necessary to Block All Overloaders" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:59274 +#: book.translate.xml:58896 msgid "" "It is worth noting that the overload mechanism is a general technique which " "does not apply exclusively to <acronym>SSH</acronym>, and it is not always " @@ -85697,7 +85773,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:59279 +#: book.translate.xml:58901 msgid "" "For example, an overload rule could be used to protect a mail service or a " "web service, and the overload table could be used in a rule to assign " @@ -85706,7 +85782,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59286 +#: book.translate.xml:58908 msgid "" "Over time, tables will be filled by overload rules and their size will grow " "incrementally, taking up more memory. Sometimes an <acronym>IP</acronym> " @@ -85716,7 +85792,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59293 +#: book.translate.xml:58915 msgid "" "For situations like these, <application>pfctl</application> provides the " "ability to expire table entries. For example, this command will remove " @@ -85725,13 +85801,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:59300 +#: book.translate.xml:58922 #, no-wrap msgid "<prompt>#</prompt> <userinput>pfctl -t bruteforce -T expire 86400</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59302 +#: book.translate.xml:58924 msgid "" "Similar functionality is provided by <package>security/expiretable</" "package>, which removes table entries which have not been accessed for a " @@ -85739,7 +85815,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59307 +#: book.translate.xml:58929 msgid "" "Once installed, <application>expiretable</application> can be run to remove " "<literal><bruteforce></literal> table entries older than a specified " @@ -85747,18 +85823,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59312 +#: book.translate.xml:58934 #, no-wrap msgid "/usr/local/sbin/expiretable -v -d -t 24h bruteforce" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59316 +#: book.translate.xml:58938 msgid "Protecting Against <acronym>SPAM</acronym>" msgstr "<acronym>SPAM</acronym> 防護" #. (itstool) path: sect3/para -#: book.translate.xml:59318 +#: book.translate.xml:58940 msgid "" "Not to be confused with the <application>spamd</application> daemon which " "comes bundled with <application>spamassassin</application>, <package>mail/" @@ -85769,7 +85845,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59328 +#: book.translate.xml:58950 msgid "" "Spammers tend to send a large number of messages, and <acronym>SPAM</" "acronym> is mainly sent from a few spammer friendly networks and a large " @@ -85778,7 +85854,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59334 +#: book.translate.xml:58956 msgid "" "When an <acronym>SMTP</acronym> connection from an address in a blacklist is " "received, <application>spamd</application> presents its banner and " @@ -85790,7 +85866,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59346 +#: book.translate.xml:58968 msgid "" "This example demonstrates the basic procedure for setting up " "<application>spamd</application> with automatically updated blacklists. " @@ -85799,12 +85875,12 @@ msgid "" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:59353 +#: book.translate.xml:58975 msgid "Configuring <application>spamd</application>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59356 +#: book.translate.xml:58978 msgid "" "Install the <package>mail/spamd</package> package or port. In order to use " "<application>spamd</application>'s greylisting features, " @@ -85814,29 +85890,29 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59363 +#: book.translate.xml:58985 #, no-wrap msgid " fdescfs /dev/fd fdescfs rw 0 0" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59365 +#: book.translate.xml:58987 msgid "Then, mount the filesystem:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59367 +#: book.translate.xml:58989 #, no-wrap msgid "<prompt>#</prompt> <userinput>mount fdescfs</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59371 +#: book.translate.xml:58993 msgid "Next, edit the <application>PF</application> ruleset to include:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59374 +#: book.translate.xml:58996 #, no-wrap msgid "" "table <spamd> persist\n" @@ -85848,7 +85924,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59381 +#: book.translate.xml:59003 msgid "" "The two tables <literal><spamd></literal> and <literal><spamd-" "white></literal> are essential. <acronym>SMTP</acronym> traffic from an " @@ -85858,7 +85934,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59391 +#: book.translate.xml:59013 msgid "" "The next step is to configure <application>spamd</application> in <filename>/" "usr/local/etc/spamd.conf</filename> and to add some <filename>rc.conf</" @@ -85866,7 +85942,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59396 +#: book.translate.xml:59018 msgid "" "The installation of <package>mail/spamd</package> includes a sample " "configuration file (<filename>/usr/local/etc/spamd.conf.sample</filename>) " @@ -85875,7 +85951,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59403 +#: book.translate.xml:59025 msgid "" "One of the first lines in the configuration file that does not begin with a " "<literal>#</literal> comment sign contains the block which defines the " @@ -85883,7 +85959,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59409 +#: book.translate.xml:59031 #, no-wrap msgid "" "all:\\\n" @@ -85891,7 +85967,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59412 +#: book.translate.xml:59034 msgid "" "This entry adds the desired blacklists, separated by colons (<literal>:</" "literal>). To use a whitelist to subtract addresses from a blacklist, add " @@ -85900,12 +85976,12 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59419 +#: book.translate.xml:59041 msgid "This is followed by the specified blacklist's definition:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59422 +#: book.translate.xml:59044 #, no-wrap msgid "" "traplist:\\\n" @@ -85916,7 +85992,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59428 +#: book.translate.xml:59050 msgid "" "where the first line is the name of the blacklist and the second line " "specifies the list type. The <literal>msg</literal> field contains the " @@ -85931,14 +86007,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59443 +#: book.translate.xml:59065 msgid "" "The definition of the specified whitelist is similar, but omits the " "<literal>msg</literal> field since a message is not needed:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59447 +#: book.translate.xml:59069 #, no-wrap msgid "" "whitelist:\\\n" @@ -85948,12 +86024,12 @@ msgid "" msgstr "" #. (itstool) path: tip/title -#: book.translate.xml:59453 +#: book.translate.xml:59075 msgid "Choose Data Sources with Care" msgstr "" #. (itstool) path: tip/para -#: book.translate.xml:59455 +#: book.translate.xml:59077 msgid "" "Using all the blacklists in the sample <filename>spamd.conf</filename> will " "blacklist large blocks of the Internet. Administrators need to edit the file " @@ -85962,20 +86038,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59463 +#: book.translate.xml:59085 msgid "" "Next, add this entry to <filename>/etc/rc.conf</filename>. Additional flags " "are described in the man page specified by the comment:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59468 +#: book.translate.xml:59090 #, no-wrap msgid "spamd_flags=\"-v\" # use \"\" and see spamd-setup(8) for flags" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59470 +#: book.translate.xml:59092 msgid "" "When finished, reload the ruleset, start <application>spamd</application> by " "typing <command>service start obspamd</command>, and complete the " @@ -85986,14 +86062,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59480 +#: book.translate.xml:59102 msgid "" "On a typical gateway in front of a mail server, hosts will soon start " "getting trapped within a few seconds to several minutes." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59484 +#: book.translate.xml:59106 msgid "" "<application>PF</application> also supports <firstterm>greylisting</" "firstterm>, which temporarily rejects messages from unknown hosts with " @@ -86004,7 +86080,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59493 +#: book.translate.xml:59115 msgid "" "More information about greylisting as a technique can be found at the <link " "xlink:href=\"http://www.greylisting.org/\">greylisting.org</link> web site. " @@ -86014,17 +86090,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59500 +#: book.translate.xml:59122 msgid "The basic procedure for configuring greylisting is as follows:" msgstr "" #. (itstool) path: procedure/title -#: book.translate.xml:59504 +#: book.translate.xml:59126 msgid "Configuring Greylisting" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59507 +#: book.translate.xml:59129 msgid "" "Make sure that <citerefentry><refentrytitle>fdescfs</" "refentrytitle><manvolnum>5</manvolnum></citerefentry> is mounted as " @@ -86032,32 +86108,32 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59512 +#: book.translate.xml:59134 msgid "" "To run <application>spamd</application> in greylisting mode, add this line " "to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59516 +#: book.translate.xml:59138 #, no-wrap msgid "spamd_grey=\"YES\" # use spamd greylisting if YES" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59518 +#: book.translate.xml:59140 msgid "" "Refer to the <application>spamd</application> man page for descriptions of " "additional related parameters." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:59524 +#: book.translate.xml:59146 msgid "To complete the greylisting setup:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:59526 +#: book.translate.xml:59148 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service restart obspamd</userinput>\n" @@ -86065,7 +86141,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59531 +#: book.translate.xml:59153 msgid "" "Behind the scenes, the <application>spamdb</application> database tool and " "the <application>spamlogd</application> whitelist updater perform essential " @@ -86075,12 +86151,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59541 +#: book.translate.xml:59163 msgid "Network Hygiene" msgstr "網路保健" #. (itstool) path: sect3/para -#: book.translate.xml:59543 +#: book.translate.xml:59165 msgid "" "This section describes how <literal>block-policy</literal>, <literal>scrub</" "literal>, and <literal>antispoof</literal> can be used to make the ruleset " @@ -86088,7 +86164,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59548 +#: book.translate.xml:59170 msgid "" "The <literal>block-policy</literal> is an option which can be set in the " "<literal>options</literal> part of the ruleset, which precedes the " @@ -86100,20 +86176,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59559 +#: book.translate.xml:59181 msgid "" "If not set, the default policy is <literal>drop</literal>. To change the " "<literal>block-policy</literal>, specify the desired value:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59564 +#: book.translate.xml:59186 #, no-wrap msgid "set block-policy return" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59566 +#: book.translate.xml:59188 msgid "" "In <application>PF</application>, <literal>scrub</literal> is a keyword " "which enables network packet normalization. This process reassembles " @@ -86125,13 +86201,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59576 +#: book.translate.xml:59198 #, no-wrap msgid "scrub in all" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59578 +#: book.translate.xml:59200 msgid "" "Some services, such as <acronym>NFS</acronym>, require specific fragment " "handling options. Refer to <link xlink:href=\"https://home.nuug.no/~peter/pf/" @@ -86140,20 +86216,20 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59582 +#: book.translate.xml:59204 msgid "" "This example reassembles fragments, clears the <quote>do not fragment</" "quote> bit, and sets the maximum segment size to 1440 bytes:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59586 +#: book.translate.xml:59208 #, no-wrap msgid "scrub in all fragment reassemble no-df max-mss 1440" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59588 +#: book.translate.xml:59210 msgid "" "The <literal>antispoof</literal> mechanism protects against activity from " "spoofed or forged <acronym>IP</acronym> addresses, mainly by blocking " @@ -86162,14 +86238,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59594 +#: book.translate.xml:59216 msgid "" "These rules weed out spoofed traffic coming in from the rest of the world as " "well as any spoofed packets which originate in the local network:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59598 +#: book.translate.xml:59220 #, no-wrap msgid "" "antispoof for $ext_if\n" @@ -86177,12 +86253,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:59603 +#: book.translate.xml:59225 msgid "Handling Non-Routable Addresses" msgstr "處理不可路由 (Non-Routable) 的位址" #. (itstool) path: sect3/para -#: book.translate.xml:59605 +#: book.translate.xml:59227 msgid "" "Even with a properly configured gateway to handle network address " "translation, one may have to compensate for other people's " @@ -86194,7 +86270,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:59615 +#: book.translate.xml:59237 msgid "" "In this example, a macro containing non-routable addresses is defined, then " "used in blocking rules. Traffic to and from these addresses is quietly " @@ -86202,7 +86278,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:59621 +#: book.translate.xml:59243 #, no-wrap msgid "" "martians = \"{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, \\\n" @@ -86214,17 +86290,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:59632 +#: book.translate.xml:59254 msgid "<application>IPFW</application>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:59634 +#: book.translate.xml:59256 msgid "<primary>firewall</primary> <secondary>IPFW</secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:59640 +#: book.translate.xml:59262 msgid "" "<application>IPFW</application> is a stateful firewall written for FreeBSD " "which supports both <acronym>IPv4</acronym> and <acronym>IPv6</acronym>. It " @@ -86236,7 +86312,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:59649 +#: book.translate.xml:59271 msgid "" "FreeBSD provides a sample ruleset in <filename>/etc/rc.firewall</filename> " "which defines several firewall types for common scenarios to assist novice " @@ -86246,7 +86322,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:59657 +#: book.translate.xml:59279 msgid "" "This section describes how to enable <application>IPFW</application>, " "provides an overview of its rule syntax, and demonstrates several rulesets " @@ -86254,19 +86330,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:59663 +#: book.translate.xml:59285 msgid "Enabling <application>IPFW</application>" msgstr "開啟 <application>IPFW</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59665 +#: book.translate.xml:59287 msgid "" "<primary><application>IPFW</application></primary> <secondary>enabling</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59671 +#: book.translate.xml:59293 msgid "" "<application>IPFW</application> is included in the basic FreeBSD install as " "a kernel loadable module, meaning that a custom kernel is not needed in " @@ -86274,18 +86350,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59676 +#: book.translate.xml:59298 msgid "<primary>kernel options</primary> <secondary>IPFIREWALL</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59682 +#: book.translate.xml:59304 msgid "" "<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59688 +#: book.translate.xml:59310 msgid "" "<primary>kernel options</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</" "secondary>" @@ -86293,14 +86369,14 @@ msgstr "" "<primary>核心選項</primary> <secondary>IPFIREWALL_VERBOSE_LIMIT</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59694 +#: book.translate.xml:59316 msgid "" "<primary><application>IPFW</application></primary> <secondary>kernel " "options</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59700 +#: book.translate.xml:59322 msgid "" "For those users who wish to statically compile <application>IPFW</" "application> support into a custom kernel, refer to the instructions in " @@ -86309,7 +86385,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59706 +#: book.translate.xml:59328 #, no-wrap msgid "" "options IPFIREWALL\t\t\t# enables IPFW\n" @@ -86320,79 +86396,79 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59712 +#: book.translate.xml:59334 msgid "" "To configure the system to enable <application>IPFW</application> at boot " "time, add the following entry to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59716 +#: book.translate.xml:59338 #, no-wrap msgid "firewall_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59718 +#: book.translate.xml:59340 msgid "" "To use one of the default firewall types provided by FreeBSD, add another " "line which specifies the type:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59721 +#: book.translate.xml:59343 #, no-wrap msgid "firewall_type=\"open\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59723 +#: book.translate.xml:59345 msgid "The available types are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59727 +#: book.translate.xml:59349 msgid "<literal>open</literal>: passes all traffic." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59730 +#: book.translate.xml:59352 msgid "<literal>client</literal>: protects only this machine." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59734 +#: book.translate.xml:59356 msgid "<literal>simple</literal>: protects the whole network." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59738 +#: book.translate.xml:59360 msgid "" "<literal>closed</literal>: entirely disables IP traffic except for the " "loopback interface." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59742 +#: book.translate.xml:59364 msgid "" "<literal>workstation</literal>: protects only this machine using stateful " "rules." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59746 +#: book.translate.xml:59368 msgid "<literal>UNKNOWN</literal>: disables the loading of firewall rules." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59750 +#: book.translate.xml:59372 msgid "" "<filename><replaceable>filename</replaceable></filename>: full path of the " "file containing the firewall ruleset." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59756 +#: book.translate.xml:59378 msgid "" "If <literal>firewall_type</literal> is set to either <literal>client</" "literal> or <literal>simple</literal>, modify the default rules found in " @@ -86400,14 +86476,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59762 +#: book.translate.xml:59384 msgid "" "Note that the <literal>filename</literal> type is used to load a custom " "ruleset." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59765 +#: book.translate.xml:59387 msgid "" "An alternate way to load a custom ruleset is to set the " "<literal>firewall_script</literal> variable to the absolute path of an " @@ -86418,24 +86494,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59773 +#: book.translate.xml:59395 #, no-wrap msgid "firewall_script=\"/etc/ipfw.rules\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59775 +#: book.translate.xml:59397 msgid "To enable logging, include this line:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59777 +#: book.translate.xml:59399 #, no-wrap msgid "firewall_logging=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59779 +#: book.translate.xml:59401 msgid "" "There is no <filename>/etc/rc.conf</filename> variable to set logging " "limits. To limit the number of times a rule is logged per connection " @@ -86444,20 +86520,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:59784 +#: book.translate.xml:59406 #, no-wrap msgid "net.inet.ip.fw.verbose_limit=<replaceable>5</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59786 +#: book.translate.xml:59408 msgid "" "After saving the needed edits, start the firewall. To enable logging limits " "now, also set the <command>sysctl</command> value specified above:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:59790 +#: book.translate.xml:59412 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service ipfw start</userinput>\n" @@ -86465,19 +86541,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:59795 +#: book.translate.xml:59417 msgid "<application>IPFW</application> Rule Syntax" msgstr "<application>IPFW</application> 規則語法" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59797 +#: book.translate.xml:59419 msgid "" "<primary><application>IPFW</application></primary> <secondary>rule " "processing order</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59803 +#: book.translate.xml:59425 msgid "" "When a packet enters the <application>IPFW</application> firewall, it is " "compared against the first rule in the ruleset and progresses one rule at a " @@ -86495,14 +86571,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:59819 +#: book.translate.xml:59441 msgid "" "<primary><application>IPFW</application></primary> <secondary>rule syntax</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59825 +#: book.translate.xml:59447 msgid "" "When creating an <application>IPFW</application> rule, keywords must be " "written in the following order. Some keywords are mandatory while other " @@ -86513,14 +86589,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59835 +#: book.translate.xml:59457 msgid "" "<replaceable>CMD RULE_NUMBER set SET_NUMBER ACTION log LOG_AMOUNT PROTO from " "SRC SRC_PORT to DST DST_PORT OPTIONS</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:59839 +#: book.translate.xml:59461 msgid "" "This section provides an overview of these keywords and their options. It is " "not an exhaustive list of every possible option. Refer to " @@ -86530,22 +86606,22 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59847 +#: book.translate.xml:59469 msgid "CMD" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59849 +#: book.translate.xml:59471 msgid "Every rule must start with <parameter>ipfw add</parameter>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59855 +#: book.translate.xml:59477 msgid "RULE_NUMBER" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59857 +#: book.translate.xml:59479 msgid "" "Each rule is associated with a number from <literal>1</literal> to " "<literal>65534</literal>. The number is used to indicate the order of rule " @@ -86554,12 +86630,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59868 +#: book.translate.xml:59490 msgid "SET_NUMBER" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59870 +#: book.translate.xml:59492 msgid "" "Each rule is associated with a set number from <literal>0</literal> to " "<literal>31</literal>. Sets can be individually disabled or enabled, making " @@ -86568,12 +86644,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59880 book.translate.xml:60858 +#: book.translate.xml:59502 book.translate.xml:60480 msgid "ACTION" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59882 +#: book.translate.xml:59504 msgid "" "A rule can be associated with one of the following actions. The specified " "action will be executed when the packet matches the selection criterion of " @@ -86581,14 +86657,14 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59887 +#: book.translate.xml:59509 msgid "" "<parameter>allow | accept | pass | permit</parameter>: these keywords are " "equivalent and allow packets that match the rule." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59891 +#: book.translate.xml:59513 msgid "" "<parameter>check-state</parameter>: checks the packet against the dynamic " "state table. If a match is found, execute the action associated with the " @@ -86600,21 +86676,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59902 +#: book.translate.xml:59524 msgid "" "<parameter>count</parameter>: updates counters for all packets that match " "the rule. The search continues with the next rule." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59906 +#: book.translate.xml:59528 msgid "" "<parameter>deny | drop</parameter>: either word silently discards packets " "that match this rule." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59909 +#: book.translate.xml:59531 msgid "" "Additional actions are available. Refer to " "<citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>8</manvolnum></" @@ -86622,12 +86698,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59915 +#: book.translate.xml:59537 msgid "LOG_AMOUNT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59917 +#: book.translate.xml:59539 msgid "" "When a packet matches a rule with the <literal>log</literal> keyword, a " "message will be logged to <citerefentry><refentrytitle>syslogd</" @@ -86642,7 +86718,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:59932 +#: book.translate.xml:59554 msgid "" "Logging is done after all other packet matching conditions have been met, " "and before performing the final action on the packet. The administrator " @@ -86650,24 +86726,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59941 +#: book.translate.xml:59563 msgid "PROTO" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59943 +#: book.translate.xml:59565 msgid "" "This optional value can be used to specify any protocol name or number found " "in <filename>/etc/protocols</filename>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59950 +#: book.translate.xml:59572 msgid "SRC" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59952 +#: book.translate.xml:59574 msgid "" "The <literal>from</literal> keyword must be followed by the source address " "or a keyword that represents the source address. An address can be " @@ -86682,24 +86758,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59970 book.translate.xml:60994 +#: book.translate.xml:59592 book.translate.xml:60616 msgid "SRC_PORT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59972 +#: book.translate.xml:59594 msgid "" "An optional source port can be specified using the port number or name from " "<filename>/etc/services</filename>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59979 +#: book.translate.xml:59601 msgid "DST" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59981 +#: book.translate.xml:59603 msgid "" "The <literal>to</literal> keyword must be followed by the destination " "address or a keyword that represents the destination address. The same " @@ -86708,24 +86784,24 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59990 book.translate.xml:61031 +#: book.translate.xml:59612 book.translate.xml:60653 msgid "DST_PORT" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:59992 +#: book.translate.xml:59614 msgid "" "An optional destination port can be specified using the port number or name " "from <filename>/etc/services</filename>." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:59999 book.translate.xml:60910 +#: book.translate.xml:59621 book.translate.xml:60532 msgid "OPTIONS" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60001 +#: book.translate.xml:59623 msgid "" "Several keywords can follow the source and destination. As the name " "suggests, OPTIONS are optional. Commonly used options include <literal>in</" @@ -86735,7 +86811,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60010 +#: book.translate.xml:59632 msgid "" "When a <parameter>keep-state</parameter> rule is matched, the firewall will " "create a dynamic rule which matches bidirectional traffic between the source " @@ -86743,7 +86819,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60016 +#: book.translate.xml:59638 msgid "" "The dynamic rules facility is vulnerable to resource depletion from a SYN-" "flood attack which would open a huge number of dynamic rules. To counter " @@ -86756,7 +86832,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60028 +#: book.translate.xml:59650 msgid "" "Dozens of OPTIONS are available. Refer to <citerefentry><refentrytitle>ipfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> for a description of " @@ -86764,12 +86840,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60037 book.translate.xml:61110 +#: book.translate.xml:59659 book.translate.xml:60732 msgid "Example Ruleset" msgstr "範例規則集" #. (itstool) path: sect2/para -#: book.translate.xml:60039 +#: book.translate.xml:59661 msgid "" "This section demonstrates how to create an example stateful firewall ruleset " "script named <filename>/etc/ipfw.rules</filename>. In this example, all " @@ -86780,20 +86856,20 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:60049 +#: book.translate.xml:59671 msgid "" "When first creating or testing a firewall ruleset, consider temporarily " "setting this tunable:" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:60052 +#: book.translate.xml:59674 #, no-wrap msgid "net.inet.ip.fw.default_to_accept=\"1\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:60054 +#: book.translate.xml:59676 msgid "" "This sets the default policy of <citerefentry><refentrytitle>ipfw</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to be more permissive " @@ -86802,7 +86878,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60060 +#: book.translate.xml:59682 msgid "" "The firewall script begins by indicating that it is a Bourne shell script " "and flushes any existing rules. It then creates the <literal>cmd</literal> " @@ -86813,7 +86889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60068 +#: book.translate.xml:59690 #, no-wrap msgid "" "#!/bin/sh\n" @@ -86826,14 +86902,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60076 +#: book.translate.xml:59698 msgid "" "The first two rules allow all traffic on the trusted internal interface and " "on the loopback interface:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60079 +#: book.translate.xml:59701 #, no-wrap msgid "" "# Change xl0 to LAN NIC interface name\n" @@ -86844,27 +86920,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60085 +#: book.translate.xml:59707 msgid "" "The next rule allows the packet through if it matches an existing entry in " "the dynamic rules table:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60088 +#: book.translate.xml:59710 #, no-wrap msgid "$cmd 00101 check-state" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60090 +#: book.translate.xml:59712 msgid "" "The next set of rules defines which stateful connections internal systems " "can create to hosts on the Internet:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60093 +#: book.translate.xml:59715 #, no-wrap msgid "" "# Allow access to public DNS\n" @@ -86901,7 +86977,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60125 +#: book.translate.xml:59747 msgid "" "The next set of rules controls connections from Internet hosts to the " "internal network. It starts by denying packets typically associated with " @@ -86911,7 +86987,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60132 +#: book.translate.xml:59754 #, no-wrap msgid "" "# Deny all inbound traffic from non-routable reserved address spaces\n" @@ -86958,14 +87034,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60174 +#: book.translate.xml:59796 msgid "" "The last rule logs all packets that do not match any of the rules in the " "ruleset:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60177 +#: book.translate.xml:59799 #, no-wrap msgid "" "# Everything else is denied and logged\n" @@ -86974,19 +87050,19 @@ msgstr "" #. (itstool) path: info/title #. (itstool) path: sect2/title -#: book.translate.xml:60183 book.translate.xml:61264 +#: book.translate.xml:59805 book.translate.xml:60886 msgid "Configuring <acronym>NAT</acronym>" msgstr "設定 <acronym>NAT</acronym>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60195 +#: book.translate.xml:59817 msgid "" "<primary>NAT</primary> <secondary>and <application>IPFW</application></" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60201 +#: book.translate.xml:59823 msgid "" "FreeBSD's built-in <acronym>NAT</acronym> daemon, " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" @@ -86997,7 +87073,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60209 +#: book.translate.xml:59831 msgid "" "To do this, the FreeBSD machine connected to the Internet must act as a " "gateway. This system must have two <acronym>NIC</acronym>s, where one is " @@ -87011,7 +87087,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60221 +#: book.translate.xml:59843 msgid "" "Some additional configuration is needed in order to activate the " "<acronym>NAT</acronym> function of <application>IPFW</application>. If the " @@ -87021,14 +87097,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60228 +#: book.translate.xml:59850 msgid "" "To enable <acronym>NAT</acronym> support at boot time, the following must be " "in <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60231 +#: book.translate.xml:59853 #, no-wrap msgid "" "gateway_enable=\"YES\"\t\t# enables the gateway\n" @@ -87038,7 +87114,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:60237 +#: book.translate.xml:59859 msgid "" "It is also possible to specify a configuration file which contains the " "options to pass to <citerefentry><refentrytitle>natd</" @@ -87046,20 +87122,20 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:60240 +#: book.translate.xml:59862 #, no-wrap msgid "natd_flags=\"-f /etc/natd.conf\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:60242 +#: book.translate.xml:59864 msgid "" "The specified file must contain a list of configuration options, one per " "line. For example:" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:60245 +#: book.translate.xml:59867 #, no-wrap msgid "" "redirect_port tcp 192.168.0.2:6667 6667\n" @@ -87067,7 +87143,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:60248 +#: book.translate.xml:59870 msgid "" "For more information about this configuration file, consult " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" @@ -87075,7 +87151,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60252 +#: book.translate.xml:59874 msgid "" "Next, add the <acronym>NAT</acronym> rules to the firewall ruleset. When the " "rulest contains stateful rules, the positioning of the <acronym>NAT</" @@ -87085,7 +87161,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60259 +#: book.translate.xml:59881 msgid "" "The following example builds upon the firewall ruleset shown in the previous " "section. It adds some additional entries and modifies some existing rules in " @@ -87096,7 +87172,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60268 +#: book.translate.xml:59890 #, no-wrap msgid "" "#!/bin/sh\n" @@ -87109,7 +87185,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60276 +#: book.translate.xml:59898 msgid "" "The inbound <acronym>NAT</acronym> rule is inserted <emphasis>after</" "emphasis> the two rules which allow all traffic on the trusted internal " @@ -87121,7 +87197,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60286 +#: book.translate.xml:59908 #, no-wrap msgid "" "$cmd 005 allow all from any to any via xl0 # exclude LAN traffic\n" @@ -87132,7 +87208,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60292 +#: book.translate.xml:59914 msgid "" "The outbound rules are modified to replace the <literal>allow</literal> " "action with the <literal>$skip</literal> variable, indicating that rule " @@ -87143,7 +87219,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60301 +#: book.translate.xml:59923 #, no-wrap msgid "" "# Authorized outbound packets\n" @@ -87154,7 +87230,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60307 +#: book.translate.xml:59929 msgid "" "The inbound rules remain the same, except for the very last rule which " "removes the <literal> via $pif</literal> in order to catch both inbound and " @@ -87169,7 +87245,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60320 +#: book.translate.xml:59942 #, no-wrap msgid "" "$cmd 499 deny log all from any to any\n" @@ -87178,7 +87254,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60324 +#: book.translate.xml:59946 msgid "" "In this example, rules <literal>100</literal>, <literal>101</literal>, " "<literal>125</literal>, <literal>500</literal>, and <literal>510</literal> " @@ -87188,7 +87264,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60332 +#: book.translate.xml:59954 msgid "" "Consider an internal web browser which initializes a new outbound " "<acronym>HTTP</acronym> session over port 80. When the first outbound packet " @@ -87211,7 +87287,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60356 +#: book.translate.xml:59978 msgid "" "On the inbound side, the ruleset has to deny bad packets and allow only " "authorized services. A packet which matches an inbound rule is posted to the " @@ -87223,12 +87299,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:60368 +#: book.translate.xml:59990 msgid "Port Redirection" msgstr "Port 重新導向" #. (itstool) path: sect3/para -#: book.translate.xml:60370 +#: book.translate.xml:59992 msgid "" "The drawback with <citerefentry><refentrytitle>natd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is that the " @@ -87242,7 +87318,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60380 +#: book.translate.xml:60002 msgid "" "For example, an <acronym>IRC</acronym> server runs on client <systemitem>A</" "systemitem> and a web server runs on client <systemitem>B</systemitem>. For " @@ -87252,12 +87328,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60387 +#: book.translate.xml:60009 msgid "The syntax for <option>-redirect_port</option> is as follows:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60390 +#: book.translate.xml:60012 #, no-wrap msgid "" " -redirect_port proto targetIP:targetPORT[-targetPORT]\n" @@ -87266,12 +87342,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60394 +#: book.translate.xml:60016 msgid "In the above example, the argument should be:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60396 +#: book.translate.xml:60018 #, no-wrap msgid "" " -redirect_port tcp 192.168.0.2:6667 6667\n" @@ -87279,14 +87355,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60399 +#: book.translate.xml:60021 msgid "" "This redirects the proper <acronym>TCP</acronym> ports to the <acronym>LAN</" "acronym> client machines." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60402 +#: book.translate.xml:60024 msgid "" "Port ranges over individual ports can be indicated with <option>-" "redirect_port</option>. For example, <replaceable>tcp 192.168.0.2:2000-3000 " @@ -87295,7 +87371,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60409 +#: book.translate.xml:60031 msgid "" "These options can be used when directly running " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" @@ -87304,7 +87380,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60415 +#: book.translate.xml:60037 msgid "" "For further configuration options, consult " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" @@ -87312,17 +87388,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:60420 +#: book.translate.xml:60042 msgid "Address Redirection" msgstr "位址重新導向" #. (itstool) path: sect3/indexterm -#: book.translate.xml:60422 +#: book.translate.xml:60044 msgid "<primary>address redirection</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60426 +#: book.translate.xml:60048 msgid "" "Address redirection is useful if more than one <acronym>IP</acronym> address " "is available. Each <acronym>LAN</acronym> client can be assigned its own " @@ -87345,47 +87421,47 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60444 +#: book.translate.xml:60066 msgid "The <option>-redirect_address</option> syntax is as follows:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60447 +#: book.translate.xml:60069 #, no-wrap msgid "-redirect_address localIP publicIP" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60454 +#: book.translate.xml:60076 msgid "localIP" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60455 +#: book.translate.xml:60077 msgid "" "The internal <acronym>IP</acronym> address of the <acronym>LAN</acronym> " "client." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60460 +#: book.translate.xml:60082 msgid "publicIP" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:60461 +#: book.translate.xml:60083 msgid "" "The external <acronym>IP</acronym> address corresponding to the " "<acronym>LAN</acronym> client." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60469 +#: book.translate.xml:60091 msgid "In the example, this argument would read:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60471 +#: book.translate.xml:60093 #, no-wrap msgid "" "-redirect_address 192.168.0.2 128.1.1.2\n" @@ -87393,7 +87469,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60474 +#: book.translate.xml:60096 msgid "" "Like <option>-redirect_port</option>, these arguments are placed within the " "<literal>natd_flags=\"\"</literal> option of <filename>/etc/rc.conf</" @@ -87403,7 +87479,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60482 +#: book.translate.xml:60104 msgid "" "The external <acronym>IP</acronym> addresses on the " "<citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></" @@ -87413,17 +87489,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60490 +#: book.translate.xml:60112 msgid "The <application>IPFW</application> Command" msgstr "<application>IPFW</application> 指令" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60492 +#: book.translate.xml:60114 msgid "<primary><command>ipfw</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60494 +#: book.translate.xml:60116 msgid "" "<command>ipfw</command> can be used to make manual, single rule additions or " "deletions to the active firewall while it is running. The problem with using " @@ -87434,7 +87510,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60503 +#: book.translate.xml:60125 msgid "" "<command>ipfw</command> is a useful way to display the running firewall " "rules to the console screen. The <application>IPFW</application> accounting " @@ -87445,31 +87521,31 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60511 +#: book.translate.xml:60133 msgid "To list all the running rules in sequence:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60513 +#: book.translate.xml:60135 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60515 +#: book.translate.xml:60137 msgid "" "To list all the running rules with a time stamp of when the last time the " "rule was matched:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60518 +#: book.translate.xml:60140 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -t list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60520 +#: book.translate.xml:60142 msgid "" "The next example lists accounting information and the packet count for " "matched rules along with the rules themselves. The first column is the rule " @@ -87478,71 +87554,71 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60526 +#: book.translate.xml:60148 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -a list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60528 +#: book.translate.xml:60150 msgid "To list dynamic rules in addition to static rules:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60530 +#: book.translate.xml:60152 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -d list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60532 +#: book.translate.xml:60154 msgid "To also show the expired dynamic rules:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60534 +#: book.translate.xml:60156 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw -d -e list</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60536 +#: book.translate.xml:60158 msgid "To zero the counters:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60538 +#: book.translate.xml:60160 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw zero</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60540 +#: book.translate.xml:60162 msgid "" "To zero the counters for just the rule with number <replaceable>NUM</" "replaceable>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60543 +#: book.translate.xml:60165 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipfw zero <replaceable>NUM</replaceable></userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:60546 +#: book.translate.xml:60168 msgid "Logging Firewall Messages" msgstr "記錄防火牆訊息" #. (itstool) path: sect3/indexterm -#: book.translate.xml:60548 +#: book.translate.xml:60170 msgid "" "<primary><application>IPFW</application></primary> <secondary>logging</" "secondary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60554 +#: book.translate.xml:60176 msgid "" "Even with the logging facility enabled, <application>IPFW</application> will " "not generate any rule logging on its own. The firewall administrator decides " @@ -87555,7 +87631,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60566 +#: book.translate.xml:60188 msgid "" "Logging is a two edged sword. If one is not careful, an over abundance of " "log data or a DoS attack can fill the disk with log files. Log messages are " @@ -87564,7 +87640,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60572 +#: book.translate.xml:60194 msgid "" "The <literal>IPFIREWALL_VERBOSE_LIMIT=5</literal> kernel option limits the " "number of consecutive messages sent to <citerefentry><refentrytitle>syslogd</" @@ -87579,13 +87655,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60586 +#: book.translate.xml:60208 #, no-wrap msgid "last message repeated 45 times" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60588 +#: book.translate.xml:60210 msgid "" "All logged packets messages are written by default to <filename>/var/log/" "security</filename>, which is defined in <filename>/etc/syslog.conf</" @@ -87593,12 +87669,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:60594 +#: book.translate.xml:60216 msgid "Building a Rule Script" msgstr "建立規則 Script" #. (itstool) path: sect3/para -#: book.translate.xml:60596 +#: book.translate.xml:60218 msgid "" "Most experienced <application>IPFW</application> users create a file " "containing the rules and code them in a manner compatible with running them " @@ -87610,7 +87686,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60606 +#: book.translate.xml:60228 msgid "" "This example script is compatible with the syntax used by the " "<citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></" @@ -87623,12 +87699,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60613 +#: book.translate.xml:60235 msgid "Start the rules file like this:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:60615 +#: book.translate.xml:60237 #, no-wrap msgid "" "############### start of example ipfw rules script #############\n" @@ -87649,39 +87725,39 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60631 +#: book.translate.xml:60253 msgid "" "The rules are not important as the focus of this example is how the symbolic " "substitution fields are populated." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60635 +#: book.translate.xml:60257 msgid "" "If the above example was in <filename>/etc/ipfw.rules</filename>, the rules " "could be reloaded by the following command:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:60639 +#: book.translate.xml:60261 #, no-wrap msgid "<prompt>#</prompt> <userinput>sh /etc/ipfw.rules</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60641 +#: book.translate.xml:60263 msgid "" "<filename>/etc/ipfw.rules</filename> can be located anywhere and the file " "can have any name." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:60644 +#: book.translate.xml:60266 msgid "The same thing could be accomplished by running these commands by hand:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:60647 +#: book.translate.xml:60269 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ipfw -q -f flush</userinput>\n" @@ -87694,19 +87770,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: book.translate.xml:60659 +#: book.translate.xml:60281 msgid "IPFILTER (IPF)" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:60661 +#: book.translate.xml:60283 msgid "" "<primary>firewall</primary> <secondary><application>IPFILTER</application></" "secondary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60667 +#: book.translate.xml:60289 msgid "" "<application>IPFILTER</application>, also known as <application>IPF</" "application>, is a cross-platform, open source firewall which has been " @@ -87715,7 +87791,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60672 +#: book.translate.xml:60294 msgid "" "<application>IPFILTER</application> is a kernel-side firewall and " "<acronym>NAT</acronym> mechanism that can be controlled and monitored by " @@ -87729,7 +87805,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60684 +#: book.translate.xml:60306 msgid "" "<application>IPF</application> was originally written using a rule " "processing logic of <quote>the last matching rule wins</quote> and only used " @@ -87739,7 +87815,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60691 +#: book.translate.xml:60313 msgid "" "The <application>IPF</application> FAQ is at <uri xlink:href=\"http://www." "phildev.net/ipf/index.html\">http://www.phildev.net/ipf/index.html</uri>. A " @@ -87748,7 +87824,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:60695 +#: book.translate.xml:60317 msgid "" "This section of the Handbook focuses on <application>IPF</application> as it " "pertains to FreeBSD. It provides examples of rules that contain the " @@ -87756,19 +87832,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60702 +#: book.translate.xml:60324 msgid "Enabling <application>IPF</application>" msgstr "開啟 <application>IPF</application>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60704 +#: book.translate.xml:60326 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>enabling</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60710 +#: book.translate.xml:60332 msgid "" "<application>IPF</application> is included in the basic FreeBSD install as a " "kernel loadable module, meaning that a custom kernel is not needed in order " @@ -87776,7 +87852,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60715 +#: book.translate.xml:60337 msgid "" "<primary>kernel options</primary> <secondary><application>IPFILTER</" "application></secondary>" @@ -87785,12 +87861,12 @@ msgstr "" "secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60721 +#: book.translate.xml:60343 msgid "<primary>kernel options</primary> <secondary>IPFILTER_LOG</secondary>" msgstr "<primary>核心選項</primary> <secondary>IPFILTER_LOG</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60727 +#: book.translate.xml:60349 msgid "" "<primary>kernel options</primary> <secondary>IPFILTER_DEFAULT_BLOCK</" "secondary>" @@ -87798,14 +87874,14 @@ msgstr "" "<primary>核心選項</primary> <secondary>IPFILTER_DEFAULT_BLOCK</secondary>" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60733 +#: book.translate.xml:60355 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>kernel " "options</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60739 +#: book.translate.xml:60361 msgid "" "For users who prefer to statically compile <application>IPF</application> " "support into a custom kernel, refer to the instructions in <xref linkend=" @@ -87813,7 +87889,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60744 +#: book.translate.xml:60366 #, no-wrap msgid "" "options IPFILTER\n" @@ -87823,7 +87899,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60749 +#: book.translate.xml:60371 msgid "" "where <literal>options IPFILTER</literal> enables support for " "<application>IPFILTER</application>, <literal>options IPFILTER_LOG</literal> " @@ -87837,7 +87913,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60762 +#: book.translate.xml:60384 msgid "" "To configure the system to enable <application>IPF</application> at boot " "time, add the following entries to <filename>/etc/rc.conf</filename>. These " @@ -87848,7 +87924,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60771 +#: book.translate.xml:60393 #, no-wrap msgid "" "ipfilter_enable=\"YES\" # Start ipf firewall\n" @@ -87861,13 +87937,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60779 +#: book.translate.xml:60401 msgid "" "If <acronym>NAT</acronym> functionality is needed, also add these lines:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60782 +#: book.translate.xml:60404 #, no-wrap msgid "" "gateway_enable=\"YES\" # Enable as LAN gateway\n" @@ -87876,18 +87952,18 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60786 +#: book.translate.xml:60408 msgid "Then, to start <application>IPF</application> now:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:60788 +#: book.translate.xml:60410 #, no-wrap msgid "<prompt>#</prompt> <userinput>service ipfilter start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60790 +#: book.translate.xml:60412 msgid "" "To load the firewall rules, specify the name of the ruleset file using " "<command>ipf</command>. The following command can be used to replace the " @@ -87895,20 +87971,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:60795 +#: book.translate.xml:60417 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipf -Fa -f /etc/ipf.rules</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60797 +#: book.translate.xml:60419 msgid "" "where <option>-Fa</option> flushes all the internal rules tables and " "<option>-f</option> specifies the file containing the rules to load." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60801 +#: book.translate.xml:60423 msgid "" "This provides the ability to make changes to a custom ruleset and update the " "running firewall with a fresh copy of the rules without having to reboot the " @@ -87917,7 +87993,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60807 +#: book.translate.xml:60429 msgid "" "Refer to <citerefentry><refentrytitle>ipf</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for details on the other flags available with this " @@ -87925,19 +88001,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:60812 +#: book.translate.xml:60434 msgid "<application>IPF</application> Rule Syntax" msgstr "<application>IPF</application> 規則語法" #. (itstool) path: sect2/indexterm -#: book.translate.xml:60814 +#: book.translate.xml:60436 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>rule " "syntax</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60820 +#: book.translate.xml:60442 msgid "" "This section describes the <application>IPF</application> rule syntax used " "to create stateful rules. When creating rules, keep in mind that unless the " @@ -87950,7 +88026,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60831 +#: book.translate.xml:60453 msgid "" "When creating rules, a <literal>#</literal> character is used to mark the " "start of a comment and may appear at the end of a rule, to explain that " @@ -87958,7 +88034,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60836 +#: book.translate.xml:60458 msgid "" "The keywords which are used in rules must be written in a specific order, " "from left to right. Some keywords are mandatory while others are optional. " @@ -87969,7 +88045,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60845 +#: book.translate.xml:60467 msgid "" "<replaceable>ACTION DIRECTION OPTIONS proto PROTO_TYPE from SRC_ADDR " "SRC_PORT to DST_ADDR DST_PORT TCP_FLAG|ICMP_TYPE keep state STATE</" @@ -87977,7 +88053,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:60849 +#: book.translate.xml:60471 msgid "" "This section describes each of these keywords and their options. It is not " "an exhaustive list of every possible option. Refer to " @@ -87988,7 +88064,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60860 +#: book.translate.xml:60482 msgid "" "The action keyword indicates what to do with the packet if it matches that " "rule. Every rule <emphasis>must</emphasis> have an action. The following " @@ -87996,91 +88072,91 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60865 +#: book.translate.xml:60487 msgid "<literal>block</literal>: drops the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60867 +#: book.translate.xml:60489 msgid "<literal>pass</literal>: allows the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60869 +#: book.translate.xml:60491 msgid "<literal>log</literal>: generates a log record." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60872 +#: book.translate.xml:60494 msgid "" "<literal>count</literal>: counts the number of packets and bytes which can " "provide an indication of how often a rule is used." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60876 +#: book.translate.xml:60498 msgid "" "<literal>auth</literal>: queues the packet for further processing by another " "program." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60879 +#: book.translate.xml:60501 msgid "" "<literal>call</literal>: provides access to functions built into " "<application>IPF</application> that allow more complex actions." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60883 +#: book.translate.xml:60505 msgid "" "<literal>decapsulate</literal>: removes any headers in order to process the " "contents of the packet." msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60889 +#: book.translate.xml:60511 msgid "DIRECTION" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60891 +#: book.translate.xml:60513 msgid "" "Next, each rule must explicitly state the direction of traffic using one of " "these keywords:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60894 +#: book.translate.xml:60516 msgid "<literal>in</literal>: the rule is applied against an inbound packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60897 +#: book.translate.xml:60519 msgid "<literal>out</literal>: the rule is applied against an outbound packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60900 +#: book.translate.xml:60522 msgid "<literal>all</literal>: the rule applies to either direction." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60903 +#: book.translate.xml:60525 msgid "" "If the system has multiple interfaces, the interface can be specified along " "with the direction. An example would be <literal>in on fxp0</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60912 +#: book.translate.xml:60534 msgid "" "Options are optional. However, if multiple options are specified, they must " "be used in the order shown here." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60916 +#: book.translate.xml:60538 msgid "" "<literal>log</literal>: when performing the specified ACTION, the contents " "of the packet's headers will be written to the " @@ -88089,7 +88165,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60921 +#: book.translate.xml:60543 msgid "" "<literal>quick</literal>: if a packet matches this rule, the ACTION " "specified by the rule occurs and no further processing of any following " @@ -88097,7 +88173,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60926 +#: book.translate.xml:60548 msgid "" "<literal>on</literal>: must be followed by the interface name as displayed " "by <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -88106,21 +88182,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60931 +#: book.translate.xml:60553 msgid "" "When using the <literal>log</literal> keyword, the following qualifiers may " "be used in this order:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60935 +#: book.translate.xml:60557 msgid "" "<literal>body</literal>: indicates that the first 128 bytes of the packet " "contents will be logged after the headers." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60939 +#: book.translate.xml:60561 msgid "" "<literal>first</literal>: if the <literal>log</literal> keyword is being " "used in conjunction with a <literal>keep state</literal> option, this option " @@ -88129,7 +88205,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60946 +#: book.translate.xml:60568 msgid "" "Additional options are available to specify error return messages. Refer to " "<citerefentry><refentrytitle>ipf</refentrytitle><manvolnum>5</manvolnum></" @@ -88137,12 +88213,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60954 +#: book.translate.xml:60576 msgid "PROTO_TYPE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60956 +#: book.translate.xml:60578 msgid "" "The protocol type is optional. However, it is mandatory if the rule needs to " "specify a SRC_PORT or a DST_PORT as it defines the type of protocol. When " @@ -88155,12 +88231,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:60972 +#: book.translate.xml:60594 msgid "SRC_ADDR" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60974 +#: book.translate.xml:60596 msgid "" "The <literal>from</literal> keyword is mandatory and is followed by a " "keyword which represents the source of the packet. The source can be a " @@ -88171,7 +88247,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60982 +#: book.translate.xml:60604 msgid "" "There is no way to match ranges of <acronym>IP</acronym> addresses which do " "not express themselves easily using the dotted numeric form / mask-length " @@ -88182,7 +88258,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:60996 +#: book.translate.xml:60618 msgid "" "The port number of the source is optional. However, if it is used, it " "requires PROTO_TYPE to be first defined in the rule. The port number must " @@ -88190,7 +88266,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61001 +#: book.translate.xml:60623 msgid "" "A number of different comparison operators are supported: <literal>=</" "literal> (equal to), <literal>!=</literal> (not equal to), <literal><</" @@ -88200,7 +88276,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61010 +#: book.translate.xml:60632 msgid "" "To specify port ranges, place the two port numbers between <literal><>" "</literal> (less than and greater than ), <literal>><</literal> " @@ -88209,12 +88285,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61019 +#: book.translate.xml:60641 msgid "DST_ADDR" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61021 +#: book.translate.xml:60643 msgid "" "The <literal>to</literal> keyword is mandatory and is followed by a keyword " "which represents the destination of the packet. Similar to SRC_ADDR, it can " @@ -88224,7 +88300,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61033 +#: book.translate.xml:60655 msgid "" "Similar to SRC_PORT, the port number of the destination is optional. " "However, if it is used, it requires PROTO_TYPE to be first defined in the " @@ -88233,12 +88309,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61042 +#: book.translate.xml:60664 msgid "TCP_FLAG|ICMP_TYPE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61044 +#: book.translate.xml:60666 msgid "" "If <literal>tcp</literal> is specifed as the PROTO_TYPE, flags can be " "specified as letters, where each letter represents one of the possible " @@ -88250,7 +88326,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61058 +#: book.translate.xml:60680 msgid "" "If <literal>icmp</literal> is specifed as the PROTO_TYPE, the <acronym>ICMP</" "acronym> type to match can be specified. Refer to " @@ -88259,12 +88335,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61066 +#: book.translate.xml:60688 msgid "STATE" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61068 +#: book.translate.xml:60690 msgid "" "If a <literal>pass</literal> rule contains <literal>keep state</literal>, " "<application>IPF</application> will add an entry to its dynamic state table " @@ -88276,7 +88352,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61080 +#: book.translate.xml:60702 msgid "" "In <application>IPF</application>, packets destined to go out through the " "interface connected to the public Internet are first checked against the " @@ -88293,7 +88369,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61098 +#: book.translate.xml:60720 msgid "" "Several keywords can be added after <literal>keep state</literal>. If used, " "these keywords set various options that control stateful filtering, such as " @@ -88303,14 +88379,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61112 +#: book.translate.xml:60734 msgid "" "This section demonstrates how to create an example ruleset which only allows " "services matching <literal>pass</literal> rules and blocks all others." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61116 +#: book.translate.xml:60738 msgid "" "FreeBSD uses the loopback interface (<filename>lo0</filename>) and the " "<acronym>IP</acronym> address <systemitem class=\"ipaddress\">127.0.0.1</" @@ -88319,7 +88395,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61123 +#: book.translate.xml:60745 #, no-wrap msgid "" "# no restrictions on loopback interface\n" @@ -88328,7 +88404,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61127 +#: book.translate.xml:60749 msgid "" "The public interface connected to the Internet is used to authorize and " "control access of all outbound and inbound connections. If one or more " @@ -88341,14 +88417,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61138 +#: book.translate.xml:60760 msgid "" "These two rules allow all traffic to pass through a trusted <acronym>LAN</" "acronym> interface named <filename>xl0</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61142 +#: book.translate.xml:60764 #, no-wrap msgid "" "# no restrictions on inside LAN interface for private network\n" @@ -88357,7 +88433,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61146 +#: book.translate.xml:60768 msgid "" "The rules for the public interface's outbound and inbound sections should " "have the most frequently matched rules placed before less commonly matched " @@ -88366,7 +88442,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61152 +#: book.translate.xml:60774 msgid "" "This set of rules defines the outbound section of the public interface named " "<filename>dc0</filename>. These rules keep state and identify the specific " @@ -88376,7 +88452,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61160 +#: book.translate.xml:60782 #, no-wrap msgid "" "# interface facing Internet (outbound)\n" @@ -88421,7 +88497,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61200 +#: book.translate.xml:60822 msgid "" "This example of the rules in the inbound section of the public interface " "blocks all undesirable packets first. This reduces the number of packets " @@ -88429,7 +88505,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61205 +#: book.translate.xml:60827 #, no-wrap msgid "" "# interface facing Internet (inbound)\n" @@ -88470,7 +88546,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61241 +#: book.translate.xml:60863 msgid "" "Any time there are logged messages on a rule with the <literal>log first</" "literal> option, run <command>ipfstat -hio</command> to evaluate how many " @@ -88479,7 +88555,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61247 +#: book.translate.xml:60869 msgid "" "The rest of the rules in the inbound section define which connections are " "allowed to be initiated from the Internet. The last rule denies all " @@ -88488,7 +88564,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61252 +#: book.translate.xml:60874 #, no-wrap msgid "" "# Allow traffic in from ISP's DHCP server. Replace z.z.z.z with\n" @@ -88503,22 +88579,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61268 +#: book.translate.xml:60890 msgid "<primary>IP masquerading</primary> <see>NAT</see>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61274 +#: book.translate.xml:60896 msgid "<primary>network address translation</primary> <see>NAT</see>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61280 +#: book.translate.xml:60902 msgid "<primary><command>ipnat</command></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61282 +#: book.translate.xml:60904 msgid "" "To enable <acronym>NAT</acronym>, add these statements to <filename>/etc/rc." "conf</filename> and specify the name of the file containing the " @@ -88526,7 +88602,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61286 +#: book.translate.xml:60908 #, no-wrap msgid "" "gateway_enable=\"YES\"\n" @@ -88535,7 +88611,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61290 +#: book.translate.xml:60912 msgid "" "<acronym>NAT</acronym> rules are flexible and can accomplish many different " "things to fit the needs of both commercial and home users. The rule syntax " @@ -88546,7 +88622,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61296 +#: book.translate.xml:60918 msgid "" "The basic syntax for a <acronym>NAT</acronym> rule is as follows, where " "<literal>map</literal> starts the rule and <replaceable>IF</replaceable> " @@ -88554,13 +88630,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61301 +#: book.translate.xml:60923 #, no-wrap msgid "map <replaceable>IF</replaceable> <replaceable>LAN_IP_RANGE</replaceable> -> <replaceable>PUBLIC_ADDRESS</replaceable>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61303 +#: book.translate.xml:60925 msgid "" "The <replaceable>LAN_IP_RANGE</replaceable> is the range of <acronym>IP</" "acronym> addresses used by internal clients. Usually, it is a private " @@ -88572,7 +88648,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61312 +#: book.translate.xml:60934 msgid "" "In <application>IPF</application>, when a packet arrives at the firewall " "from the <acronym>LAN</acronym> with a public destination, it first passes " @@ -88594,7 +88670,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61335 +#: book.translate.xml:60957 msgid "" "For networks that have large numbers of internal systems or multiple " "subnets, the process of funneling every private <acronym>IP</acronym> " @@ -88603,7 +88679,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61341 +#: book.translate.xml:60963 msgid "" "The first method is to assign a range of ports to use as source ports. By " "adding the <literal>portmap</literal> keyword, <acronym>NAT</acronym> can be " @@ -88611,26 +88687,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61346 +#: book.translate.xml:60968 #, no-wrap msgid "map dc0 192.168.1.0/24 -> 0/32 portmap tcp/udp 20000:60000" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61348 +#: book.translate.xml:60970 msgid "" "Alternately, use the <literal>auto</literal> keyword which tells " "<acronym>NAT</acronym> to determine the ports that are available for use:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61352 +#: book.translate.xml:60974 #, no-wrap msgid "map dc0 192.168.1.0/24 -> 0/32 portmap tcp/udp auto" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61354 +#: book.translate.xml:60976 msgid "" "The second method is to use a pool of public addresses. This is useful when " "there are too many <acronym>LAN</acronym> addresses to fit into a single " @@ -88641,14 +88717,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61363 +#: book.translate.xml:60985 msgid "" "The range of public <acronym>IP</acronym> addresses can be specified using a " "netmask or <acronym>CIDR</acronym> notation. These two rules are equivalent:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61367 +#: book.translate.xml:60989 #, no-wrap msgid "" "map dc0 192.168.1.0/24 -> 204.134.75.0/255.255.255.0\n" @@ -88656,7 +88732,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61370 +#: book.translate.xml:60992 msgid "" "A common practice is to have a publically accessible web server or mail " "server segregated to an internal network segment. The traffic from these " @@ -88668,26 +88744,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61379 +#: book.translate.xml:61001 #, no-wrap msgid "rdr dc0 20.20.20.5/32 port 80 -> 10.0.10.25 port 80" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61381 +#: book.translate.xml:61003 msgid "" "If it is the only web server, this rule would also work as it redirects all " "external <acronym>HTTP</acronym> requests to <literal>10.0.10.25</literal>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61385 +#: book.translate.xml:61007 #, no-wrap msgid "rdr dc0 0.0.0.0/0 port 80 -> 10.0.10.25 port 80" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61387 +#: book.translate.xml:61009 msgid "" "<application>IPF</application> has a built in <acronym>FTP</acronym> proxy " "which can be used with <acronym>NAT</acronym>. It monitors all outbound " @@ -88698,7 +88774,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61396 +#: book.translate.xml:61018 msgid "" "In this example, the first rule calls the proxy for outbound <acronym>FTP</" "acronym> traffic from the internal <acronym>LAN</acronym>. The second rule " @@ -88708,7 +88784,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61404 +#: book.translate.xml:61026 #, no-wrap msgid "" "map dc0 10.0.10.0/29 -> 0/32 proxy port 21 ftp/tcp\n" @@ -88717,7 +88793,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61408 +#: book.translate.xml:61030 msgid "" "The <acronym>FTP</acronym> <literal>map</literal> rules go before the " "<acronym>NAT</acronym> rule so that when a packet matches an <acronym>FTP</" @@ -88729,7 +88805,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61418 +#: book.translate.xml:61040 msgid "" "Without the <acronym>FTP</acronym> proxy, the following firewall rules would " "instead be needed. Note that without the proxy, all ports above " @@ -88737,7 +88813,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61423 +#: book.translate.xml:61045 #, no-wrap msgid "" "# Allow out LAN PC client FTP to public Internet\n" @@ -88752,7 +88828,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61433 +#: book.translate.xml:61055 msgid "" "Whenever the file containing the <acronym>NAT</acronym> rules is edited, run " "<command>ipnat</command> with <option>-CF</option> to delete the current " @@ -88762,65 +88838,65 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61441 +#: book.translate.xml:61063 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -CF -f /etc/ipnat.rules</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61443 +#: book.translate.xml:61065 msgid "To display the <acronym>NAT</acronym> statistics:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61445 +#: book.translate.xml:61067 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -s</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61447 +#: book.translate.xml:61069 msgid "To list the <acronym>NAT</acronym> table's current mappings:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61450 +#: book.translate.xml:61072 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -l</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61452 +#: book.translate.xml:61074 msgid "" "To turn verbose mode on and display information relating to rule processing " "and active rules and table entries:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61455 +#: book.translate.xml:61077 #, no-wrap msgid "<prompt>#</prompt> <userinput>ipnat -v</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:61571 +#: book.translate.xml:61193 msgid "Viewing <application>IPF</application> Statistics" msgstr "檢視 <application>IPF</application> 統計資訊" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61573 +#: book.translate.xml:61195 msgid "<primary><command>ipfstat</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61575 +#: book.translate.xml:61197 msgid "" "<primary><application>IPFILTER</application></primary> " "<secondary>statistics</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61581 +#: book.translate.xml:61203 msgid "" "<application>IPF</application> includes " "<citerefentry><refentrytitle>ipfstat</refentrytitle><manvolnum>8</" @@ -88831,12 +88907,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61590 +#: book.translate.xml:61212 msgid "The default <command>ipfstat</command> output looks like this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61593 +#: book.translate.xml:61215 #, no-wrap msgid "" "input packets: blocked 99286 passed 1255609 nomatch 14686 counted 0\n" @@ -88859,7 +88935,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61611 +#: book.translate.xml:61233 msgid "" "Several options are available. When supplied with either <option>-i</option> " "for inbound or <option>-o</option> for outbound, the command will retrieve " @@ -88870,7 +88946,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61620 +#: book.translate.xml:61242 #, no-wrap msgid "" "@1 pass out on xl0 from any to any\n" @@ -88879,7 +88955,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61624 +#: book.translate.xml:61246 msgid "" "Include <option>-h</option> to prefix each rule with a count of how many " "times the rule was matched. For example, <command>ipfstat -oh</command> " @@ -88888,7 +88964,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61629 +#: book.translate.xml:61251 #, no-wrap msgid "" "2451423 pass out on xl0 from any to any\n" @@ -88897,7 +88973,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61633 +#: book.translate.xml:61255 msgid "" "To display the state table in a format similar to " "<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></" @@ -88910,24 +88986,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:61643 +#: book.translate.xml:61265 msgid "<application>IPF</application> Logging" msgstr "<application>IPF</application> 日誌" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61645 +#: book.translate.xml:61267 msgid "<primary><command>ipmon</command></primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:61647 +#: book.translate.xml:61269 msgid "" "<primary><application>IPFILTER</application></primary> <secondary>logging</" "secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61653 +#: book.translate.xml:61275 msgid "" "<application>IPF</application> provides <command>ipmon</command>, which can " "be used to write the firewall's logging information in a human readable " @@ -88937,7 +89013,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61659 +#: book.translate.xml:61281 msgid "" "This command is typically run in daemon mode in order to provide a " "continuous system log file so that logging of past events may be reviewed. " @@ -88948,7 +89024,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61667 +#: book.translate.xml:61289 #, no-wrap msgid "" "ipmon_flags=\"-Ds\" # D = start as daemon\n" @@ -88958,7 +89034,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61672 +#: book.translate.xml:61294 msgid "" "Logging provides the ability to review, after the fact, information such as " "which packets were dropped, what addresses they came from, and where they " @@ -88966,7 +89042,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61677 +#: book.translate.xml:61299 msgid "" "Once the logging facility is enabled in <filename>rc.conf</filename> and " "started with <command>service ipmon start</command>, <application>IPF</" @@ -88979,7 +89055,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61688 +#: book.translate.xml:61310 msgid "" "By default, <command>ipmon -Ds</command> mode uses <literal>local0</literal> " "as the logging facility. The following logging levels can be used to further " @@ -88987,7 +89063,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61693 +#: book.translate.xml:61315 #, no-wrap msgid "" "LOG_INFO - packets logged using the \"log\" keyword as the action rather than pass or block.\n" @@ -88997,33 +89073,33 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61698 +#: book.translate.xml:61320 msgid "" "In order to setup <application>IPF</application> to log all data to " "<filename>/var/log/ipfilter.log</filename>, first create the empty file:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61702 +#: book.translate.xml:61324 #, no-wrap msgid "<prompt>#</prompt> <userinput>touch /var/log/ipfilter.log</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61704 +#: book.translate.xml:61326 msgid "" "Then, to write all logged messages to the specified file, add the following " "statement to <filename>/etc/syslog.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:61708 +#: book.translate.xml:61330 #, no-wrap msgid "local0.* /var/log/ipfilter.log" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61710 +#: book.translate.xml:61332 msgid "" "To activate the changes and instruct <citerefentry><refentrytitle>syslogd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to read the modified " @@ -89032,44 +89108,44 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61714 +#: book.translate.xml:61336 msgid "" "Do not forget to edit <filename>/etc/newsyslog.conf</filename> to rotate the " "new log file." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61718 +#: book.translate.xml:61340 msgid "" "Messages generated by <command>ipmon</command> consist of data fields " "separated by white space. Fields common to all messages are:" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61724 +#: book.translate.xml:61346 msgid "The date of packet receipt." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61728 +#: book.translate.xml:61350 msgid "" "The time of packet receipt. This is in the form HH:MM:SS.F, for hours, " "minutes, seconds, and fractions of a second." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61734 +#: book.translate.xml:61356 msgid "The name of the interface that processed the packet." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61739 +#: book.translate.xml:61361 msgid "" "The group and rule number of the rule in the format <literal>@0:17</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61744 +#: book.translate.xml:61366 msgid "" "The action: <literal>p</literal> for passed, <literal>b</literal> for " "blocked, <literal>S</literal> for a short packet, <literal>n</literal> did " @@ -89077,7 +89153,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61751 +#: book.translate.xml:61373 msgid "" "The addresses written as three fields: the source address and port separated " "by a comma, the -> symbol, and the destination address and port. For " @@ -89085,21 +89161,21 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61759 +#: book.translate.xml:61381 msgid "" "<literal>PR</literal> followed by the protocol name or number: for example, " "<literal>PR tcp</literal>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61764 +#: book.translate.xml:61386 msgid "" "<literal>len</literal> followed by the header length and total length of the " "packet: for example, <literal>len 20 40</literal>." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61770 +#: book.translate.xml:61392 msgid "" "If the packet is a <acronym>TCP</acronym> packet, there will be an " "additional field starting with a hyphen followed by letters corresponding to " @@ -89109,7 +89185,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61775 +#: book.translate.xml:61397 msgid "" "If the packet is an <acronym>ICMP</acronym> packet, there will be two fields " "at the end: the first always being <quote>icmp</quote> and the next being " @@ -89119,100 +89195,100 @@ msgid "" msgstr "" #. (itstool) path: chapter/title -#: book.translate.xml:61793 +#: book.translate.xml:61415 msgid "Advanced Networking" msgstr "進階網路設定" #. (itstool) path: sect1/para -#: book.translate.xml:61798 +#: book.translate.xml:61420 msgid "This chapter covers a number of advanced networking topics." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61805 +#: book.translate.xml:61427 msgid "The basics of gateways and routes." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61809 +#: book.translate.xml:61431 msgid "How to set up USB tethering." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61813 +#: book.translate.xml:61435 msgid "" "How to set up <trademark class=\"registered\">IEEE</trademark> 802.11 and " "<trademark class=\"registered\">Bluetooth</trademark> devices." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61818 +#: book.translate.xml:61440 msgid "How to make FreeBSD act as a bridge." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61822 +#: book.translate.xml:61444 msgid "How to set up network <acronym>PXE</acronym> booting." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61827 +#: book.translate.xml:61449 msgid "How to set up <acronym>IPv6</acronym> on a FreeBSD machine." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61832 +#: book.translate.xml:61454 msgid "" "How to enable and utilize the features of the Common Address Redundancy " "Protocol (<acronym>CARP</acronym>) in FreeBSD." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61838 +#: book.translate.xml:61460 msgid "How to configure multiple <acronym>VLANs</acronym> on FreeBSD." msgstr "如何在 FreeBSD 上設定多個 <acronym>VLAN</acronym>。" #. (itstool) path: listitem/para -#: book.translate.xml:61847 +#: book.translate.xml:61469 msgid "Understand the basics of the <filename>/etc/rc</filename> scripts." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61856 +#: book.translate.xml:61478 msgid "" "Know how to configure and install a new FreeBSD kernel (<xref linkend=" "\"kernelconfig\"/>)." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:61870 +#: book.translate.xml:61492 msgid "Gateways and Routes" msgstr "通訊閘與路由" #. (itstool) path: authorgroup/author -#: book.translate.xml:61873 +#: book.translate.xml:61495 msgid "" "<personname> <firstname>Coranth</firstname> <surname>Gryphon</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:61883 +#: book.translate.xml:61505 msgid "<primary>routing</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:61886 +#: book.translate.xml:61508 msgid "<primary>gateway</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:61889 +#: book.translate.xml:61511 msgid "<primary>subnet</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:61893 +#: book.translate.xml:61515 msgid "" "<firstterm>Routing</firstterm> is the mechanism that allows a system to find " "the network path to another system. A <firstterm>route</firstterm> is a " @@ -89227,7 +89303,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:61907 +#: book.translate.xml:61529 msgid "" "This section provides an overview of routing basics. It then demonstrates " "how to configure a FreeBSD system as a router and offers some " @@ -89235,12 +89311,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:61912 +#: book.translate.xml:61534 msgid "Routing Basics" msgstr "路由基礎概念" #. (itstool) path: sect2/para -#: book.translate.xml:61914 +#: book.translate.xml:61536 msgid "" "To view the routing table of a FreeBSD system, use " "<citerefentry><refentrytitle>netstat</refentrytitle><manvolnum>1</" @@ -89248,7 +89324,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:61917 +#: book.translate.xml:61539 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>netstat -r</userinput>\n" @@ -89268,17 +89344,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:61932 +#: book.translate.xml:61554 msgid "The entries in this example are as follows:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61936 +#: book.translate.xml:61558 msgid "default" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61938 +#: book.translate.xml:61560 msgid "" "The first route in this table specifies the <literal>default</literal> " "route. When the local system needs to make a connection to a remote host, it " @@ -89288,7 +89364,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61946 +#: book.translate.xml:61568 msgid "" "If the destination does not match an entry, or if all known paths fail, the " "system uses the entry for the default route. For hosts on a local area " @@ -89299,7 +89375,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61955 +#: book.translate.xml:61577 msgid "" "The default route for a machine which itself is functioning as the gateway " "to the outside world will be the gateway machine at the Internet Service " @@ -89307,12 +89383,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61963 +#: book.translate.xml:61585 msgid "localhost" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61965 +#: book.translate.xml:61587 msgid "" "The second route is the <literal>localhost</literal> route. The interface " "specified in the <literal>Netif</literal> column for <literal>localhost</" @@ -89322,12 +89398,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61977 +#: book.translate.xml:61599 msgid "MAC address" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:61979 +#: book.translate.xml:61601 msgid "" "The addresses beginning with <systemitem class=\"etheraddress\">0:e0:</" "systemitem> are <acronym>MAC</acronym> addresses. FreeBSD will automatically " @@ -89342,12 +89418,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:61998 +#: book.translate.xml:61620 msgid "subnet" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62000 +#: book.translate.xml:61622 msgid "" "FreeBSD will automatically add subnet routes for the local subnet. In this " "example, <systemitem class=\"ipaddress\">10.20.30.255</systemitem> is the " @@ -89358,7 +89434,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62008 +#: book.translate.xml:61630 msgid "" "Local network hosts and local subnets have their routes automatically " "configured by a daemon called <citerefentry><refentrytitle>routed</" @@ -89367,12 +89443,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:62017 +#: book.translate.xml:61639 msgid "host" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62019 +#: book.translate.xml:61641 msgid "" "The <literal>host1</literal> line refers to the host by its Ethernet " "address. Since it is the sending host, FreeBSD knows to use the loopback " @@ -89380,7 +89456,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62025 +#: book.translate.xml:61647 msgid "" "The two <literal>host2</literal> lines represent aliases which were created " "using <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -89392,19 +89468,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:62037 +#: book.translate.xml:61659 msgid "224" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:62039 +#: book.translate.xml:61661 msgid "" "The final line (destination subnet <systemitem class=\"ipaddress\">224</" "systemitem>) deals with multicasting." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62045 +#: book.translate.xml:61667 msgid "" "Various attributes of each route can be seen in the <literal>Flags</literal> " "column. <xref linkend=\"routeflags\"/> summarizes some of these flags and " @@ -89412,40 +89488,40 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:62050 +#: book.translate.xml:61672 msgid "Commonly Seen Routing Table Flags" msgstr "常見路由表標記" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62062 book.translate.xml:65535 +#: book.translate.xml:61684 book.translate.xml:65535 msgid "U" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62063 +#: book.translate.xml:61685 msgid "The route is active (up)." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62067 book.translate.xml:65535 +#: book.translate.xml:61689 book.translate.xml:65535 msgid "H" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62068 +#: book.translate.xml:61690 msgid "The route destination is a single host." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62072 book.translate.xml:65535 +#: book.translate.xml:61694 book.translate.xml:65535 msgid "G" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62073 +#: book.translate.xml:61695 msgid "" "Send anything for this destination on to this gateway, which will figure out " "from there where to send it." @@ -89453,52 +89529,52 @@ msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62079 book.translate.xml:65535 +#: book.translate.xml:61701 book.translate.xml:65535 msgid "S" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62080 +#: book.translate.xml:61702 msgid "This route was statically configured." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62084 book.translate.xml:65535 +#: book.translate.xml:61706 book.translate.xml:65535 msgid "C" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62085 +#: book.translate.xml:61707 msgid "" "Clones a new route based upon this route for machines to connect to. This " "type of route is normally used for local networks." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62091 +#: book.translate.xml:61713 msgid "W" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62092 +#: book.translate.xml:61714 msgid "" "The route was auto-configured based upon a local area network (clone) route." msgstr "" #. (itstool) path: row/entry #. (itstool) path: glossdiv/title -#: book.translate.xml:62097 book.translate.xml:65535 +#: book.translate.xml:61719 book.translate.xml:65535 msgid "L" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62098 +#: book.translate.xml:61720 msgid "Route involves references to Ethernet (link) hardware." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62105 +#: book.translate.xml:61727 msgid "" "On a FreeBSD system, the default route can defined in <filename>/etc/rc." "conf</filename> by specifying the <acronym>IP</acronym> address of the " @@ -89506,25 +89582,25 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62109 +#: book.translate.xml:61731 #, no-wrap msgid "defaultrouter=\"10.20.30.1\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62111 +#: book.translate.xml:61733 msgid "" "It is also possible to manually add the route using <command>route</command>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62114 +#: book.translate.xml:61736 #, no-wrap msgid "<prompt>#</prompt> <userinput>route add default 10.20.30.1</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62116 +#: book.translate.xml:61738 msgid "" "Note that manually added routes will not survive a reboot. For more " "information on manual manipulation of network routing tables, refer to " @@ -89533,24 +89609,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:62123 +#: book.translate.xml:61745 msgid "Configuring a Router with Static Routes" msgstr "設定路由器使用靜態路由" #. (itstool) path: authorgroup/author -#: book.translate.xml:62126 +#: book.translate.xml:61748 msgid "" "<personname> <firstname>Al</firstname> <surname>Hoang</surname> </" "personname> <contrib>Contributed by </contrib>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62137 +#: book.translate.xml:61759 msgid "<primary>dual homed hosts</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62141 +#: book.translate.xml:61763 msgid "" "A FreeBSD system can be configured as the default gateway, or router, for a " "network if it is a dual-homed system. A dual-homed system is a host which " @@ -89561,7 +89637,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62153 +#: book.translate.xml:61775 msgid "" "In order for the system to forward packets between interfaces, FreeBSD must " "be configured as a router. Internet standards and good engineering practice " @@ -89571,13 +89647,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62160 +#: book.translate.xml:61782 #, no-wrap msgid "gateway_enable=\"YES\" # Set to YES if this host will be a gateway" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62162 +#: book.translate.xml:61784 msgid "" "To enable routing now, set the <citerefentry><refentrytitle>sysctl</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> variable <varname>net." @@ -89586,22 +89662,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62167 +#: book.translate.xml:61789 msgid "<primary>BGP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62170 +#: book.translate.xml:61792 msgid "<primary>RIP</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62173 +#: book.translate.xml:61795 msgid "<primary>OSPF</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62177 +#: book.translate.xml:61799 msgid "" "The routing table of a router needs additional routes so it knows how to " "reach other networks. Routes can be either added manually using static " @@ -89611,7 +89687,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62185 +#: book.translate.xml:61807 msgid "" "For large networks, static routes quickly become unscalable. FreeBSD comes " "with the standard <acronym>BSD</acronym> routing daemon " @@ -89623,7 +89699,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62195 +#: book.translate.xml:61817 msgid "Consider the following network:" msgstr "" @@ -89632,13 +89708,13 @@ msgstr "" #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. -#: book.translate.xml:62199 +#: book.translate.xml:61821 msgctxt "_" msgid "external ref='advanced-networking/static-routes' md5='__failed__'" msgstr "" #. (itstool) path: textobject/literallayout -#: book.translate.xml:62203 +#: book.translate.xml:61825 #, no-wrap msgid "" "\n" @@ -89667,7 +89743,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62229 +#: book.translate.xml:61851 msgid "" "In this scenario, <systemitem>RouterA</systemitem> is a FreeBSD machine that " "is acting as a router to the rest of the Internet. It has a default route " @@ -89678,14 +89754,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62237 +#: book.translate.xml:61859 msgid "" "Before adding any static routes, the routing table on <systemitem>RouterA</" "systemitem> looks like this:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62240 +#: book.translate.xml:61862 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>netstat -nr</userinput>\n" @@ -89700,7 +89776,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62250 +#: book.translate.xml:61872 msgid "" "With the current routing table, <systemitem>RouterA</systemitem> does not " "have a route to the <systemitem class=\"ipaddress\">192.168.2.0/24</" @@ -89710,13 +89786,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:62258 +#: book.translate.xml:61880 #, no-wrap msgid "<prompt>#</prompt> <userinput>route add -net 192.168.2.0/24 192.168.1.2</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62260 +#: book.translate.xml:61882 msgid "" "Now, <systemitem>RouterA</systemitem> can reach any host on the <systemitem " "class=\"ipaddress\">192.168.2.0/24</systemitem> network. However, the " @@ -89726,7 +89802,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62266 +#: book.translate.xml:61888 #, no-wrap msgid "" "# Add Internal Net 2 as a persistent static route\n" @@ -89735,7 +89811,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62270 +#: book.translate.xml:61892 msgid "" "The <literal>static_routes</literal> configuration variable is a list of " "strings separated by a space, where each string references a route name. The " @@ -89744,7 +89820,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62276 +#: book.translate.xml:61898 msgid "" "Using more than one string in <literal>static_routes</literal> creates " "multiple static routes. The following shows an example of adding static " @@ -89753,7 +89829,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62283 +#: book.translate.xml:61905 #, no-wrap msgid "" "static_routes=\"net1 net2\"\n" @@ -89762,7 +89838,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62291 +#: book.translate.xml:61913 msgid "" "When an address space is assigned to a network, the service provider " "configures their routing tables so that all traffic for the network will be " @@ -89771,7 +89847,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62297 +#: book.translate.xml:61919 msgid "" "There is a system that keeps track of all assigned address spaces and " "defines their point of connection to the Internet backbone, or the main " @@ -89783,7 +89859,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62306 +#: book.translate.xml:61928 msgid "" "It is the task of the service provider to advertise to the backbone sites " "that they are the point of connection, and thus the path inward, for a site. " @@ -89791,14 +89867,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62311 +#: book.translate.xml:61933 msgid "" "<primary><citerefentry><refentrytitle>traceroute</" "refentrytitle><manvolnum>8</manvolnum></citerefentry></primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62315 +#: book.translate.xml:61937 msgid "" "Sometimes, there is a problem with route propagation and some sites are " "unable to connect. Perhaps the most useful command for trying to figure out " @@ -89807,7 +89883,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62321 +#: book.translate.xml:61943 msgid "" "When using <command>traceroute</command>, include the address of the remote " "host to connect to. The output will show the gateway hosts along the path of " @@ -89818,22 +89894,22 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62330 +#: book.translate.xml:61952 msgid "Multicast Considerations" msgstr "群播 (Multicast) 注意事項" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62332 +#: book.translate.xml:61954 msgid "<primary>multicast routing</primary>" msgstr "" #. (itstool) path: sect2/indexterm -#: book.translate.xml:62335 +#: book.translate.xml:61957 msgid "<primary>kernel options</primary> <secondary>MROUTING</secondary>" msgstr "<primary>核心選項</primary> <secondary>MROUTING</secondary>" #. (itstool) path: sect2/para -#: book.translate.xml:62340 +#: book.translate.xml:61962 msgid "" "FreeBSD natively supports both multicast applications and multicast routing. " "Multicast applications do not require any special configuration in order to " @@ -89842,13 +89918,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:62346 +#: book.translate.xml:61968 #, no-wrap msgid "options MROUTING" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62348 +#: book.translate.xml:61970 msgid "" "The multicast routing daemon, <application>mrouted</application> can be " "installed using the <package>net/mrouted</package> package or port. This " @@ -89862,7 +89938,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62361 +#: book.translate.xml:61983 msgid "" "<acronym>DVMRP</acronym> has largely been replaced by the <acronym>PIM</" "acronym> protocol in many multicast installations. Refer to " @@ -89871,39 +89947,39 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:62371 +#: book.translate.xml:61993 msgid "Wireless Networking" msgstr "無線網路" #. (itstool) path: authorgroup/author -#: book.translate.xml:62374 +#: book.translate.xml:61996 msgid "<personname> <othername>Loader</othername> </personname>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:62379 +#: book.translate.xml:62001 msgid "" "<personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </" "personname>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:62394 +#: book.translate.xml:62016 msgid "<primary>wireless networking</primary>" msgstr "<primary>無線網路</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:62397 +#: book.translate.xml:62019 msgid "<primary>802.11</primary> <see>wireless networking</see>" msgstr "<primary>802.11</primary> <see>無線網路</see>" #. (itstool) path: sect2/title -#: book.translate.xml:62403 +#: book.translate.xml:62025 msgid "Wireless Networking Basics" msgstr "無線網路基礎" #. (itstool) path: sect2/para -#: book.translate.xml:62405 +#: book.translate.xml:62027 msgid "" "Most wireless networks are based on the <trademark class=\"registered" "\">IEEE</trademark> 802.11 standards. A basic wireless network consists of " @@ -89913,7 +89989,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62412 +#: book.translate.xml:62034 msgid "" "802.11 networks are organized in two ways. In <emphasis>infrastructure mode</" "emphasis>, one station acts as a master with all the other stations " @@ -89928,7 +90004,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62427 +#: book.translate.xml:62049 msgid "" "802.11 networks were first deployed in the 2.4GHz band using protocols " "defined by the <trademark class=\"registered\">IEEE</trademark> 802.11 and " @@ -89943,7 +90019,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62440 +#: book.translate.xml:62062 msgid "" "Separate from the underlying transmission techniques, 802.11 networks have a " "variety of security mechanisms. The original 802.11 specifications defined a " @@ -89970,7 +90046,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62470 +#: book.translate.xml:62092 msgid "" "The other standard to be aware of is 802.11e. It defines protocols for " "deploying multimedia applications, such as streaming video and voice over IP " @@ -89987,7 +90063,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62487 +#: book.translate.xml:62109 msgid "" "FreeBSD supports networks that operate using 802.11a, 802.11b, and 802.11g. " "The <acronym>WPA</acronym> and 802.11i security protocols are likewise " @@ -89998,14 +90074,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:62499 +#: book.translate.xml:62121 msgid "" "Connecting a computer to an existing wireless network is a very common " "situation. This procedure shows the steps required." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62505 +#: book.translate.xml:62127 msgid "" "Obtain the <acronym>SSID</acronym> (Service Set Identifier) and " "<acronym>PSK</acronym> (Pre-Shared Key) for the wireless network from the " @@ -90013,7 +90089,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62512 +#: book.translate.xml:62134 msgid "" "Identify the wireless adapter. The FreeBSD <filename>GENERIC</filename> " "kernel includes drivers for many common wireless adapters. If the wireless " @@ -90023,26 +90099,37 @@ msgid "" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:62518 +#: book.translate.xml:62140 #, no-wrap msgid "<prompt>%</prompt> <userinput>ifconfig | grep -B3 -i wireless</userinput>" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62520 +#: book.translate.xml:62142 +msgid "On FreeBSD 11 or higher, use this command instead:" +msgstr "" + +#. (itstool) path: step/screen +#: book.translate.xml:62145 +#, no-wrap +msgid "<prompt>%</prompt> <userinput>sysctl net.wlan.devices</userinput>" +msgstr "" + +#. (itstool) path: step/para +#: book.translate.xml:62147 msgid "" "If a wireless adapter is not listed, an additional kernel module might be " "required, or it might be a model not supported by FreeBSD." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62526 +#: book.translate.xml:62153 msgid "" "This example shows the Atheros <literal>ath0</literal> wireless adapter." msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62531 +#: book.translate.xml:62158 msgid "" "Add an entry for this network to <filename>/etc/wpa_supplicant.conf</" "filename>. If the file does not exist, create it. Replace " @@ -90052,7 +90139,7 @@ msgid "" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:62539 +#: book.translate.xml:62166 #, no-wrap msgid "" "network={\n" @@ -90062,14 +90149,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62546 +#: book.translate.xml:62173 msgid "" "Add entries to <filename>/etc/rc.conf</filename> to configure the network on " "startup:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:62549 +#: book.translate.xml:62176 #, no-wrap msgid "" "wlans_<replaceable>ath0</replaceable>=\"wlan0\"\n" @@ -90077,19 +90164,19 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:62554 +#: book.translate.xml:62181 msgid "" "Restart the computer, or restart the network service to connect to the " "network:" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62563 +#: book.translate.xml:62190 msgid "Basic Setup" msgstr "基礎設定" #. (itstool) path: sect3/para -#: book.translate.xml:62568 +#: book.translate.xml:62195 msgid "" "To use wireless networking, a wireless networking card is needed and the " "kernel needs to be configured with the appropriate wireless networking " @@ -90098,7 +90185,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62574 +#: book.translate.xml:62201 msgid "" "The most commonly used wireless devices are those that use parts made by " "Atheros. These devices are supported by <citerefentry><refentrytitle>ath</" @@ -90107,13 +90194,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:62580 +#: book.translate.xml:62207 #, no-wrap msgid "if_ath_load=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62582 +#: book.translate.xml:62209 msgid "" "The Atheros driver is split up into three separate pieces: the driver " "(<citerefentry><refentrytitle>ath</refentrytitle><manvolnum>4</manvolnum></" @@ -90128,13 +90215,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:62593 +#: book.translate.xml:62220 #, no-wrap msgid "if_wi_load=\"YES\"" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62596 +#: book.translate.xml:62223 msgid "" "The examples in this section use an <citerefentry><refentrytitle>ath</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> device and the device " @@ -90149,7 +90236,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62609 +#: book.translate.xml:62236 msgid "" "In addition, the modules that implement cryptographic support for the " "security protocols to use must be loaded. These are intended to be " @@ -90172,7 +90259,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:62622 +#: book.translate.xml:62249 #, no-wrap msgid "" "wlan_wep_load=\"YES\"\n" @@ -90181,7 +90268,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62626 +#: book.translate.xml:62253 msgid "" "Once this information has been added to <filename>/boot/loader.conf</" "filename>, reboot the FreeBSD box. Alternately, load the modules by hand " @@ -90190,7 +90277,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62632 +#: book.translate.xml:62259 msgid "" "For users who do not want to use modules, it is possible to compile these " "drivers into the kernel by adding the following lines to a custom kernel " @@ -90198,7 +90285,7 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:62637 +#: book.translate.xml:62264 #, no-wrap msgid "" "device wlan # 802.11 support\n" @@ -90213,21 +90300,21 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62647 +#: book.translate.xml:62274 msgid "" "With this information in the kernel configuration file, recompile the kernel " "and reboot the FreeBSD machine." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:62652 +#: book.translate.xml:62279 msgid "" "Information about the wireless device should appear in the boot messages, " "like this:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:62655 +#: book.translate.xml:62282 #, no-wrap msgid "" "ath0: <Atheros 5212> mem 0x88000000-0x8800ffff irq 11 at device 0.0 on cardbus1\n" @@ -90236,12 +90323,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:62662 +#: book.translate.xml:62289 msgid "Infrastructure Mode" msgstr "主從式 (Infrastructure)" #. (itstool) path: sect2/para -#: book.translate.xml:62664 +#: book.translate.xml:62291 msgid "" "Infrastructure (<acronym>BSS</acronym>) mode is the mode that is typically " "used. In this mode, a number of wireless access points are connected to a " @@ -90251,17 +90338,17 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:62672 +#: book.translate.xml:62299 msgid "FreeBSD Clients" msgstr "FreeBSD 客戶端" #. (itstool) path: sect4/title -#: book.translate.xml:62675 +#: book.translate.xml:62302 msgid "How to Find Access Points" msgstr "如何尋找存取點" #. (itstool) path: sect4/para -#: book.translate.xml:62677 +#: book.translate.xml:62304 msgid "" "To scan for available networks, use <citerefentry><refentrytitle>ifconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>. This request may take " @@ -90271,7 +90358,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62683 +#: book.translate.xml:62310 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -90282,14 +90369,14 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62690 +#: book.translate.xml:62317 msgid "" "The interface must be <option>up</option> before it can scan. Subsequent " "scan requests do not require the interface to be marked as up again." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62695 +#: book.translate.xml:62322 msgid "" "The output of a scan request lists each <acronym>BSS</acronym>/" "<acronym>IBSS</acronym> network found. Besides listing the name of the " @@ -90300,22 +90387,22 @@ msgid "" msgstr "" #. (itstool) path: table/title -#: book.translate.xml:62706 +#: book.translate.xml:62333 msgid "Station Capability Codes" msgstr "站台功能代號" #. (itstool) path: row/entry -#: book.translate.xml:62711 +#: book.translate.xml:62338 msgid "Capability Code" msgstr "功能代號" #. (itstool) path: row/entry -#: book.translate.xml:62718 +#: book.translate.xml:62345 msgid "<literal>E</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62719 +#: book.translate.xml:62346 msgid "" "Extended Service Set (<acronym>ESS</acronym>). Indicates that the station is " "part of an infrastructure network rather than an <acronym>IBSS</acronym>/ad-" @@ -90323,24 +90410,24 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62727 +#: book.translate.xml:62354 msgid "<literal>I</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62728 +#: book.translate.xml:62355 msgid "" "<acronym>IBSS</acronym>/ad-hoc network. Indicates that the station is part " "of an ad-hoc network rather than an <acronym>ESS</acronym> network." msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62735 +#: book.translate.xml:62362 msgid "<literal>P</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62736 +#: book.translate.xml:62363 msgid "" "Privacy. Encryption is required for all data frames exchanged within the " "<acronym>BSS</acronym> using cryptographic means such as <acronym>WEP</" @@ -90349,12 +90436,12 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62745 +#: book.translate.xml:62372 msgid "<literal>S</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62746 +#: book.translate.xml:62373 msgid "" "Short Preamble. Indicates that the network is using short preambles, defined " "in 802.11b High Rate/DSSS PHY, and utilizes a 56 bit sync field rather than " @@ -90362,30 +90449,30 @@ msgid "" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62754 +#: book.translate.xml:62381 msgid "<literal>s</literal>" msgstr "" #. (itstool) path: row/entry -#: book.translate.xml:62755 +#: book.translate.xml:62382 msgid "" "Short slot time. Indicates that the 802.11g network is using a short slot " "time because there are no legacy (802.11b) stations present." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62763 +#: book.translate.xml:62390 msgid "One can also display the current list of known networks with:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:62766 +#: book.translate.xml:62393 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> list scan</userinput>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62768 +#: book.translate.xml:62395 msgid "" "This information may be updated automatically by the adapter or manually " "with a <option>scan</option> request. Old data is automatically removed from " @@ -90394,12 +90481,12 @@ msgstr "" #. (itstool) path: sect4/title #. (itstool) path: sect3/title -#: book.translate.xml:62776 book.translate.xml:63604 +#: book.translate.xml:62403 book.translate.xml:63231 msgid "Basic Settings" msgstr "基礎設定" #. (itstool) path: sect4/para -#: book.translate.xml:62778 +#: book.translate.xml:62405 msgid "" "This section provides a simple example of how to make the wireless network " "adapter work in FreeBSD without encryption. Once familiar with these " @@ -90408,7 +90495,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62784 +#: book.translate.xml:62411 msgid "" "There are three basic steps to configure a wireless network: select an " "access point, authenticate the station, and configure an <acronym>IP</" @@ -90416,12 +90503,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62790 +#: book.translate.xml:62417 msgid "Selecting an Access Point" msgstr "選擇存取點" #. (itstool) path: sect5/para -#: book.translate.xml:62792 +#: book.translate.xml:62419 msgid "" "Most of the time, it is sufficient to let the system choose an access point " "using the builtin heuristics. This is the default behavior when an interface " @@ -90429,7 +90516,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62798 book.translate.xml:62898 +#: book.translate.xml:62425 book.translate.xml:62525 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90437,14 +90524,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62801 +#: book.translate.xml:62428 msgid "" "If there are multiple access points, a specific one can be selected by its " "<acronym>SSID</acronym>:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62805 +#: book.translate.xml:62432 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90452,7 +90539,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62808 +#: book.translate.xml:62435 msgid "" "In an environment where there are multiple access points with the same " "<acronym>SSID</acronym>, which is often done to simplify roaming, it may be " @@ -90462,7 +90549,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62816 +#: book.translate.xml:62443 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90470,7 +90557,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62819 +#: book.translate.xml:62446 msgid "" "There are other ways to constrain the choice of an access point, such as " "limiting the set of frequencies the system will scan on. This may be useful " @@ -90480,7 +90567,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62827 +#: book.translate.xml:62454 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90488,7 +90575,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62830 +#: book.translate.xml:62457 msgid "" "This example will force the card to operate in 802.11g, which is defined " "only for 2.4GHz frequencies so any 5GHz channels will not be considered. " @@ -90501,7 +90588,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62844 +#: book.translate.xml:62471 msgid "" "Once an access point is selected, the station needs to authenticate before " "it can pass data. Authentication can happen in several ways. The most common " @@ -90517,7 +90604,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62861 +#: book.translate.xml:62488 msgid "" "If using an <trademark class=\"registered\">Apple</trademark> <trademark " "class=\"registered\">AirPort</trademark> Extreme base station for an access " @@ -90530,7 +90617,7 @@ msgid "" msgstr "" #. (itstool) path: note/programlisting -#: book.translate.xml:62869 +#: book.translate.xml:62496 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90538,7 +90625,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:62872 +#: book.translate.xml:62499 msgid "" "In general, shared key authentication should be avoided because it uses the " "<acronym>WEP</acronym> key material in a highly-constrained manner, making " @@ -90550,12 +90637,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62885 +#: book.translate.xml:62512 msgid "Getting an <acronym>IP</acronym> Address with <acronym>DHCP</acronym>" msgstr "使用 <acronym>DHCP</acronym> 取得 <acronym>IP</acronym> 位址" #. (itstool) path: sect5/para -#: book.translate.xml:62888 +#: book.translate.xml:62515 msgid "" "Once an access point is selected and the authentication parameters are set, " "an <acronym>IP</acronym> address must be obtained in order to communicate. " @@ -90566,18 +90653,18 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62901 +#: book.translate.xml:62528 msgid "The wireless interface is now ready to bring up:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:62904 +#: book.translate.xml:62531 #, no-wrap msgid "<prompt>#</prompt> <userinput>service netif start</userinput>" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62906 +#: book.translate.xml:62533 msgid "" "Once the interface is running, use <citerefentry><refentrytitle>ifconfig</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to see the status of " @@ -90585,7 +90672,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:62910 +#: book.translate.xml:62537 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -90601,7 +90688,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62921 +#: book.translate.xml:62548 msgid "" "The <literal>status: associated</literal> line means that it is connected to " "the wireless network. The <literal>bssid 00:13:46:49:41:76</literal> is the " @@ -90610,12 +90697,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62930 +#: book.translate.xml:62557 msgid "Static <acronym>IP</acronym> Address" msgstr "靜態 <acronym>IP</acronym> 位址" #. (itstool) path: sect5/para -#: book.translate.xml:62932 +#: book.translate.xml:62559 msgid "" "If an <acronym>IP</acronym> address cannot be obtained from a <acronym>DHCP</" "acronym> server, set a fixed <acronym>IP</acronym> address. Replace the " @@ -90624,7 +90711,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:62939 +#: book.translate.xml:62566 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90632,12 +90719,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:62945 +#: book.translate.xml:62572 msgid "<acronym>WPA</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62947 +#: book.translate.xml:62574 msgid "" "Wi-Fi Protected Access (<acronym>WPA</acronym>) is a security protocol used " "together with 802.11 networks to address the lack of proper authentication " @@ -90658,7 +90745,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62970 +#: book.translate.xml:62597 msgid "" "<acronym>WPA</acronym> defines authentication and encryption protocols. " "Authentication is most commonly done using one of two techniques: by 802.1X " @@ -90672,7 +90759,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:62984 +#: book.translate.xml:62611 msgid "" "The control of the wireless connection and the key negotiation or " "authentication with a server is done using " @@ -90685,12 +90772,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:62993 +#: book.translate.xml:62620 msgid "<acronym>WPA-PSK</acronym>" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:62995 +#: book.translate.xml:62622 msgid "" "<acronym>WPA-PSK</acronym>, also known as <acronym>WPA</acronym> Personal, " "is based on a pre-shared key (<acronym>PSK</acronym>) which is generated " @@ -90701,14 +90788,14 @@ msgid "" msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:63006 +#: book.translate.xml:62633 msgid "" "Always use strong passwords that are sufficiently long and made from a rich " "alphabet so that they will not be easily guessed or attacked." msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63011 +#: book.translate.xml:62638 msgid "" "The first step is the configuration of <filename>/etc/wpa_supplicant.conf</" "filename> with the <acronym>SSID</acronym> and the pre-shared key of the " @@ -90716,7 +90803,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:63016 +#: book.translate.xml:62643 #, no-wrap msgid "" "network={\n" @@ -90726,7 +90813,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63021 +#: book.translate.xml:62648 msgid "" "Then, in <filename>/etc/rc.conf</filename>, indicate that the wireless " "device configuration will be done with <acronym>WPA</acronym> and the " @@ -90734,8 +90821,8 @@ msgid "" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:63027 book.translate.xml:63227 book.translate.xml:63321 -#: book.translate.xml:63445 +#: book.translate.xml:62654 book.translate.xml:62854 book.translate.xml:62948 +#: book.translate.xml:63072 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -90743,12 +90830,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63030 book.translate.xml:63448 +#: book.translate.xml:62657 book.translate.xml:63075 msgid "Then, bring up the interface:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63032 +#: book.translate.xml:62659 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -90772,14 +90859,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63051 +#: book.translate.xml:62678 msgid "" "Or, try to configure the interface manually using the information in " "<filename>/etc/wpa_supplicant.conf</filename>:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63055 +#: book.translate.xml:62682 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>wpa_supplicant -i <replaceable>wlan0</replaceable> -c /etc/wpa_supplicant.conf</userinput>\n" @@ -90790,7 +90877,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63061 +#: book.translate.xml:62688 msgid "" "The next operation is to launch <citerefentry><refentrytitle>dhclient</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to get the " @@ -90798,7 +90885,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63065 +#: book.translate.xml:62692 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>dhclient <replaceable>wlan0</replaceable></userinput>\n" @@ -90819,7 +90906,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63082 +#: book.translate.xml:62709 msgid "" "If <filename>/etc/rc.conf</filename> has an <literal>ifconfig_wlan0=\"DHCP" "\"</literal> entry, <citerefentry><refentrytitle>dhclient</" @@ -90830,7 +90917,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63089 +#: book.translate.xml:62716 msgid "" "If <acronym>DHCP</acronym> is not possible or desired, set a static " "<acronym>IP</acronym> address after " @@ -90839,7 +90926,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63094 +#: book.translate.xml:62721 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> inet <replaceable>192.168.0.100</replaceable> netmask <replaceable>255.255.255.0</replaceable></userinput>\n" @@ -90857,14 +90944,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63107 +#: book.translate.xml:62734 msgid "" "When <acronym>DHCP</acronym> is not used, the default gateway and the " "nameserver also have to be manually set:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63111 +#: book.translate.xml:62738 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>route add default <replaceable>your_default_router</replaceable></userinput>\n" @@ -90872,12 +90959,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:63116 +#: book.translate.xml:62743 msgid "<acronym>WPA</acronym> with <acronym>EAP-TLS</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-TLS</acronym>" #. (itstool) path: sect5/para -#: book.translate.xml:63119 +#: book.translate.xml:62746 msgid "" "The second way to use <acronym>WPA</acronym> is with an 802.1X backend " "authentication server. In this case, <acronym>WPA</acronym> is called " @@ -90888,7 +90975,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63128 +#: book.translate.xml:62755 msgid "" "<acronym>EAP</acronym> does not come with an encryption method. Instead, " "<acronym>EAP</acronym> is embedded inside an encrypted tunnel. There are " @@ -90898,7 +90985,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63136 +#: book.translate.xml:62763 msgid "" "EAP with Transport Layer Security (<acronym>EAP-TLS</acronym>) is a well-" "supported wireless authentication protocol since it was the first " @@ -90914,14 +91001,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63153 +#: book.translate.xml:62780 msgid "" "As previously, the configuration is done via <filename>/etc/wpa_supplicant." "conf</filename>:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:63156 +#: book.translate.xml:62783 #, no-wrap msgid "" "network={\n" @@ -90938,19 +91025,19 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63170 +#: book.translate.xml:62797 msgid "This field indicates the network name (<acronym>SSID</acronym>)." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63175 +#: book.translate.xml:62802 msgid "" "This example uses the <acronym>RSN</acronym> <trademark class=\"registered" "\">IEEE</trademark> 802.11i protocol, also known as <acronym>WPA2</acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63181 +#: book.translate.xml:62808 msgid "" "The <literal>key_mgmt</literal> line refers to the key management protocol " "to use. In this example, it is <acronym>WPA</acronym> using <acronym>EAP</" @@ -90958,20 +91045,20 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63188 +#: book.translate.xml:62815 msgid "" "This field indicates the <acronym>EAP</acronym> method for the connection." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63193 +#: book.translate.xml:62820 msgid "" "The <literal>identity</literal> field contains the identity string for " "<acronym>EAP</acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63199 book.translate.xml:63302 book.translate.xml:63415 +#: book.translate.xml:62826 book.translate.xml:62929 book.translate.xml:63042 msgid "" "The <literal>ca_cert</literal> field indicates the pathname of the " "<acronym>CA</acronym> certificate file. This file is needed to verify the " @@ -90979,7 +91066,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63206 +#: book.translate.xml:62833 msgid "" "The <literal>client_cert</literal> line gives the pathname to the client " "certificate file. This certificate is unique to each wireless client of the " @@ -90987,31 +91074,31 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63213 +#: book.translate.xml:62840 msgid "" "The <literal>private_key</literal> field is the pathname to the client " "certificate private key file." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63219 +#: book.translate.xml:62846 msgid "" "The <literal>private_key_passwd</literal> field contains the passphrase for " "the private key." msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63224 +#: book.translate.xml:62851 msgid "Then, add the following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63230 book.translate.xml:63324 +#: book.translate.xml:62857 book.translate.xml:62951 msgid "The next step is to bring up the interface:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63232 +#: book.translate.xml:62859 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -91033,7 +91120,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63249 +#: book.translate.xml:62876 msgid "" "It is also possible to bring up the interface manually using " "<citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" @@ -91042,12 +91129,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:63255 +#: book.translate.xml:62882 msgid "<acronym>WPA</acronym> with <acronym>EAP-TTLS</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-TTLS</acronym>" #. (itstool) path: sect5/para -#: book.translate.xml:63258 +#: book.translate.xml:62885 msgid "" "With <acronym>EAP-TLS</acronym>, both the authentication server and the " "client need a certificate. With <acronym>EAP-TTLS</acronym>, a client " @@ -91058,14 +91145,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63268 +#: book.translate.xml:62895 msgid "" "The required configuration can be added to <filename>/etc/wpa_supplicant." "conf</filename>:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:63271 +#: book.translate.xml:62898 #, no-wrap msgid "" "network={\n" @@ -91081,13 +91168,13 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63284 book.translate.xml:63397 +#: book.translate.xml:62911 book.translate.xml:63024 msgid "" "This field specifies the <acronym>EAP</acronym> method for the connection." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63289 book.translate.xml:63402 +#: book.translate.xml:62916 book.translate.xml:63029 msgid "" "The <literal>identity</literal> field contains the identity string for " "<acronym>EAP</acronym> authentication inside the encrypted <acronym>TLS</" @@ -91095,14 +91182,14 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63296 book.translate.xml:63409 +#: book.translate.xml:62923 book.translate.xml:63036 msgid "" "The <literal>password</literal> field contains the passphrase for the " "<acronym>EAP</acronym> authentication." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63309 +#: book.translate.xml:62936 msgid "" "This field specifies the authentication method used in the encrypted " "<acronym>TLS</acronym> tunnel. In this example, <acronym>EAP</acronym> with " @@ -91111,12 +91198,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63318 +#: book.translate.xml:62945 msgid "Next, add the following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect5/screen -#: book.translate.xml:63326 book.translate.xml:63450 +#: book.translate.xml:62953 book.translate.xml:63077 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service netif start</userinput>\n" @@ -91139,12 +91226,12 @@ msgid "" msgstr "" #. (itstool) path: sect5/title -#: book.translate.xml:63346 +#: book.translate.xml:62973 msgid "<acronym>WPA</acronym> with <acronym>EAP-PEAP</acronym>" msgstr "<acronym>WPA</acronym> 加上 <acronym>EAP-PEAP</acronym>" #. (itstool) path: note/para -#: book.translate.xml:63350 +#: book.translate.xml:62977 msgid "" "<acronym>PEAPv0/EAP-MSCHAPv2</acronym> is the most common <acronym>PEAP</" "acronym> method. In this chapter, the term <acronym>PEAP</acronym> is used " @@ -91152,7 +91239,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63356 +#: book.translate.xml:62983 msgid "" "Protected EAP (<acronym>PEAP</acronym>) is designed as an alternative to " "<acronym>EAP-TTLS</acronym> and is the most used <acronym>EAP</acronym> " @@ -91162,7 +91249,7 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63364 +#: book.translate.xml:62991 msgid "" "<acronym>PEAP</acronym> is similar to <acronym>EAP-TTLS</acronym> as it uses " "a server-side certificate to authenticate clients by creating an encrypted " @@ -91176,14 +91263,14 @@ msgid "" msgstr "" #. (itstool) path: sect5/para -#: book.translate.xml:63378 +#: book.translate.xml:63005 msgid "" "Add the following lines to <filename>/etc/wpa_supplicant.conf</filename> to " "configure the <acronym>EAP-PEAP</acronym> related settings:" msgstr "" #. (itstool) path: sect5/programlisting -#: book.translate.xml:63383 +#: book.translate.xml:63010 #, no-wrap msgid "" "network={\n" @@ -91200,7 +91287,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63422 +#: book.translate.xml:63049 msgid "" "This field contains the parameters for the first phase of authentication, " "the <acronym>TLS</acronym> tunnel. According to the authentication server " @@ -91212,7 +91299,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63434 +#: book.translate.xml:63061 msgid "" "This field specifies the authentication protocol used in the encrypted " "<acronym>TLS</acronym> tunnel. In the case of <acronym>PEAP</acronym>, it is " @@ -91220,12 +91307,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:63471 +#: book.translate.xml:63098 msgid "<acronym>WEP</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63473 +#: book.translate.xml:63100 msgid "" "Wired Equivalent Privacy (<acronym>WEP</acronym>) is part of the original " "802.11 standard. There is no authentication mechanism, only a weak form of " @@ -91233,7 +91320,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63478 +#: book.translate.xml:63105 msgid "" "<acronym>WEP</acronym> can be set up using " "<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -91241,7 +91328,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:63481 +#: book.translate.xml:63108 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91250,7 +91337,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63488 +#: book.translate.xml:63115 msgid "" "The <literal>weptxkey</literal> specifies which <acronym>WEP</acronym> key " "will be used in the transmission. This example uses the third key. This must " @@ -91259,7 +91346,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63498 +#: book.translate.xml:63125 msgid "" "The <literal>wepkey</literal> selects one of the <acronym>WEP</acronym> " "keys. It should be in the format <replaceable>index:key</replaceable>. Key " @@ -91268,21 +91355,21 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63506 +#: book.translate.xml:63133 msgid "" "Replace the <literal>0x3456789012</literal> with the key configured for use " "on the access point." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63513 +#: book.translate.xml:63140 msgid "" "Refer to <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> for further information." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63516 +#: book.translate.xml:63143 msgid "" "The <citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> facility can be used to configure a wireless " @@ -91291,7 +91378,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:63522 +#: book.translate.xml:63149 #, no-wrap msgid "" "network={\n" @@ -91303,12 +91390,12 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63529 +#: book.translate.xml:63156 msgid "Then:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:63531 +#: book.translate.xml:63158 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>wpa_supplicant -i <replaceable>wlan0</replaceable> -c /etc/wpa_supplicant.conf</userinput>\n" @@ -91317,12 +91404,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63539 +#: book.translate.xml:63166 msgid "Ad-hoc Mode" msgstr "對等式 (Ad-hoc)" #. (itstool) path: sect2/para -#: book.translate.xml:63541 +#: book.translate.xml:63168 msgid "" "<acronym>IBSS</acronym> mode, also called ad-hoc mode, is designed for point " "to point connections. For example, to establish an ad-hoc network between " @@ -91331,12 +91418,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63548 +#: book.translate.xml:63175 msgid "On <systemitem>A</systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63550 +#: book.translate.xml:63177 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode adhoc</userinput>\n" @@ -91353,21 +91440,21 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63562 +#: book.translate.xml:63189 msgid "" "The <literal>adhoc</literal> parameter indicates that the interface is " "running in <acronym>IBSS</acronym> mode." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63565 +#: book.translate.xml:63192 msgid "" "<systemitem>B</systemitem> should now be able to detect <systemitem>A</" "systemitem>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63568 +#: book.translate.xml:63195 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode adhoc</userinput>\n" @@ -91377,7 +91464,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63573 +#: book.translate.xml:63200 msgid "" "The <literal>I</literal> in the output confirms that <systemitem>A</" "systemitem> is in ad-hoc mode. Now, configure <systemitem>B</systemitem> " @@ -91385,7 +91472,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:63578 +#: book.translate.xml:63205 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> inet <replaceable>192.168.0.2</replaceable> netmask <replaceable>255.255.255.0</replaceable> ssid <replaceable>freebsdap</replaceable></userinput>\n" @@ -91401,19 +91488,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63589 +#: book.translate.xml:63216 msgid "" "Both <systemitem>A</systemitem> and <systemitem>B</systemitem> are now ready " "to exchange information." msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63595 +#: book.translate.xml:63222 msgid "FreeBSD Host Access Points" msgstr "FreeBSD 主機存取點" #. (itstool) path: sect2/para -#: book.translate.xml:63597 +#: book.translate.xml:63224 msgid "" "FreeBSD can act as an Access Point (<acronym>AP</acronym>) which eliminates " "the need to buy a hardware <acronym>AP</acronym> or run an ad-hoc network. " @@ -91422,7 +91509,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63606 +#: book.translate.xml:63233 msgid "" "Before configuring a FreeBSD machine as an <acronym>AP</acronym>, the kernel " "must be configured with the appropriate networking support for the wireless " @@ -91431,7 +91518,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:63613 +#: book.translate.xml:63240 msgid "" "The <acronym>NDIS</acronym> driver wrapper for <trademark class=\"registered" "\">Windows</trademark> drivers does not currently support <acronym>AP</" @@ -91440,14 +91527,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63620 +#: book.translate.xml:63247 msgid "" "Once wireless networking support is loaded, check if the wireless device " "supports the host-based access point mode, also known as hostap mode:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63624 +#: book.translate.xml:63251 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91457,7 +91544,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63629 +#: book.translate.xml:63256 msgid "" "This output displays the card's capabilities. The <literal>HOSTAP</literal> " "word confirms that this wireless card can act as an <acronym>AP</acronym>. " @@ -91467,7 +91554,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63637 +#: book.translate.xml:63264 msgid "" "The wireless device can only be put into hostap mode during the creation of " "the network pseudo-device, so a previously created device must be destroyed " @@ -91475,19 +91562,19 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63641 +#: book.translate.xml:63268 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> destroy</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63643 +#: book.translate.xml:63270 msgid "" "then regenerated with the correct option before setting the other parameters:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63646 +#: book.translate.xml:63273 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode hostap</userinput>\n" @@ -91495,7 +91582,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63649 +#: book.translate.xml:63276 msgid "" "Use <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> again to see the status of the <filename>wlan0</" @@ -91503,7 +91590,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63652 +#: book.translate.xml:63279 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91518,21 +91605,21 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63662 +#: book.translate.xml:63289 msgid "" "The <literal>hostap</literal> parameter indicates the interface is running " "in the host-based access point mode." msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63666 +#: book.translate.xml:63293 msgid "" "The interface configuration can be done automatically at boot time by adding " "the following lines to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:63670 +#: book.translate.xml:63297 #, no-wrap msgid "" "wlans_ath0=\"wlan0\"\n" @@ -91541,12 +91628,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63676 +#: book.translate.xml:63303 msgid "Host-based Access Point Without Authentication or Encryption" msgstr "無認證或加密的 Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:63679 +#: book.translate.xml:63306 msgid "" "Although it is not recommended to run an <acronym>AP</acronym> without any " "authentication or encryption, this is a simple way to check if the " @@ -91555,14 +91642,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63685 +#: book.translate.xml:63312 msgid "" "Once the <acronym>AP</acronym> is configured, initiate a scan from another " "wireless machine to find the <acronym>AP</acronym>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63689 +#: book.translate.xml:63316 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91572,14 +91659,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63694 +#: book.translate.xml:63321 msgid "" "The client machine found the <acronym>AP</acronym> and can be associated " "with it:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63697 +#: book.translate.xml:63324 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> inet <replaceable>192.168.0.2</replaceable> netmask <replaceable>255.255.255.0</replaceable> ssid <replaceable>freebsdap</replaceable></userinput>\n" @@ -91596,12 +91683,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63711 +#: book.translate.xml:63338 msgid "<acronym>WPA2</acronym> Host-based Access Point" msgstr "<acronym>WPA2</acronym> Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:63713 +#: book.translate.xml:63340 msgid "" "This section focuses on setting up a FreeBSD access point using the " "<acronym>WPA2</acronym> security protocol. More details regarding " @@ -91610,7 +91697,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63720 +#: book.translate.xml:63347 msgid "" "The <citerefentry><refentrytitle>hostapd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is used to deal with client authentication " @@ -91619,7 +91706,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63725 +#: book.translate.xml:63352 msgid "" "The following configuration operations are performed on the FreeBSD machine " "acting as the <acronym>AP</acronym>. Once the <acronym>AP</acronym> is " @@ -91629,13 +91716,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:63732 +#: book.translate.xml:63359 #, no-wrap msgid "hostapd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63734 +#: book.translate.xml:63361 msgid "" "Before trying to configure <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, first configure the " @@ -91643,24 +91730,24 @@ msgid "" msgstr "" #. (itstool) path: sect4/title -#: book.translate.xml:63738 +#: book.translate.xml:63365 msgid "<acronym>WPA2-PSK</acronym>" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63740 +#: book.translate.xml:63367 msgid "" "<acronym>WPA2-PSK</acronym> is intended for small networks where the use of " "a backend authentication server is not possible or desired." msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63744 +#: book.translate.xml:63371 msgid "The configuration is done in <filename>/etc/hostapd.conf</filename>:" msgstr "" #. (itstool) path: sect4/programlisting -#: book.translate.xml:63747 +#: book.translate.xml:63374 #, no-wrap msgid "" "interface=wlan0 <co xml:id=\"co-ap-wpapsk-iface\"/>\n" @@ -91675,12 +91762,12 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63759 +#: book.translate.xml:63386 msgid "Wireless interface used for the access point." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63764 +#: book.translate.xml:63391 msgid "" "Level of verbosity used during the execution of " "<citerefentry><refentrytitle>hostapd</refentrytitle><manvolnum>8</" @@ -91689,7 +91776,7 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63771 +#: book.translate.xml:63398 msgid "" "Pathname of the directory used by <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> to store domain socket " @@ -91699,19 +91786,19 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63778 +#: book.translate.xml:63405 msgid "The group allowed to access the control interface files." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63783 +#: book.translate.xml:63410 msgid "" "The wireless network name, or <acronym>SSID</acronym>, that will appear in " "wireless scans." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63789 +#: book.translate.xml:63416 msgid "" "Enable <acronym>WPA</acronym> and specify which <acronym>WPA</acronym> " "authentication protocol will be required. A value of <literal>2</literal> " @@ -91721,26 +91808,26 @@ msgid "" msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63800 +#: book.translate.xml:63427 msgid "ASCII passphrase for <acronym>WPA</acronym> authentication." msgstr "" #. (itstool) path: warning/para -#: book.translate.xml:63804 +#: book.translate.xml:63431 msgid "" "Always use strong passwords that are at least 8 characters long and made " "from a rich alphabet so that they will not be easily guessed or attacked." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63812 +#: book.translate.xml:63439 msgid "" "The key management protocol to use. This example sets <acronym>WPA-PSK</" "acronym>." msgstr "" #. (itstool) path: callout/para -#: book.translate.xml:63818 +#: book.translate.xml:63445 msgid "" "Encryption algorithms accepted by the access point. In this example, only " "the <acronym>CCMP</acronym> (<acronym>AES</acronym>) cipher is accepted. " @@ -91750,20 +91837,20 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63831 +#: book.translate.xml:63458 msgid "" "The next step is to start <citerefentry><refentrytitle>hostapd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>:" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:63833 +#: book.translate.xml:63460 #, no-wrap msgid "<prompt>#</prompt> <userinput>service hostapd forcestart</userinput>" msgstr "" #. (itstool) path: sect4/screen -#: book.translate.xml:63835 +#: book.translate.xml:63462 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91782,7 +91869,7 @@ msgid "" msgstr "" #. (itstool) path: sect4/para -#: book.translate.xml:63849 +#: book.translate.xml:63476 msgid "" "Once the <acronym>AP</acronym> is running, the clients can associate with " "it. See <xref linkend=\"network-wireless-wpa\"/> for more details. It is " @@ -91791,12 +91878,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:63859 +#: book.translate.xml:63486 msgid "<acronym>WEP</acronym> Host-based Access Point" msgstr "<acronym>WEP</acronym> Host-based 存取點" #. (itstool) path: sect3/para -#: book.translate.xml:63861 +#: book.translate.xml:63488 msgid "" "It is not recommended to use <acronym>WEP</acronym> for setting up an " "<acronym>AP</acronym> since there is no authentication mechanism and the " @@ -91806,14 +91893,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63869 +#: book.translate.xml:63496 msgid "" "The wireless device can now be put into hostap mode and configured with the " "correct <acronym>SSID</acronym> and <acronym>IP</acronym> address:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63873 +#: book.translate.xml:63500 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable> wlanmode hostap</userinput>\n" @@ -91822,7 +91909,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63879 +#: book.translate.xml:63506 msgid "" "The <literal>weptxkey</literal> indicates which <acronym>WEP</acronym> key " "will be used in the transmission. This example uses the third key as key " @@ -91831,7 +91918,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63888 +#: book.translate.xml:63515 msgid "" "The <literal>wepkey</literal> sets the selected <acronym>WEP</acronym> key. " "It should be in the format <replaceable>index:key</replaceable>. If the " @@ -91840,7 +91927,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63897 +#: book.translate.xml:63524 msgid "" "Use <citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> to see the status of the <filename>wlan0</" @@ -91848,7 +91935,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63900 +#: book.translate.xml:63527 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable></userinput>\n" @@ -91863,14 +91950,14 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63910 +#: book.translate.xml:63537 msgid "" "From another wireless machine, it is now possible to initiate a scan to find " "the <acronym>AP</acronym>:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:63913 +#: book.translate.xml:63540 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>ath0</replaceable></userinput>\n" @@ -91880,7 +91967,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:63918 +#: book.translate.xml:63545 msgid "" "In this example, the client machine found the <acronym>AP</acronym> and can " "associate with it using the correct parameters. See <xref linkend=\"network-" @@ -91888,12 +91975,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:63925 +#: book.translate.xml:63552 msgid "Using Both Wired and Wireless Connections" msgstr "同時使用有線及無線連線" #. (itstool) path: sect2/para -#: book.translate.xml:63927 +#: book.translate.xml:63554 msgid "" "A wired connection provides better performance and reliability, while a " "wireless connection provides flexibility and mobility. Laptop users " @@ -91901,7 +91988,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63932 +#: book.translate.xml:63559 msgid "" "On FreeBSD, it is possible to combine two or even more network interfaces " "together in a <quote>failover</quote> fashion. This type of configuration " @@ -91911,7 +91998,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63939 +#: book.translate.xml:63566 msgid "" "Link aggregation and failover is covered in <xref linkend=\"network-" "aggregation\"/> and an example for using both wired and wireless connections " @@ -91919,14 +92006,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:63946 +#: book.translate.xml:63573 msgid "" "This section describes a number of steps to help troubleshoot common " "wireless networking problems." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63952 +#: book.translate.xml:63579 msgid "" "If the access point is not listed when scanning, check that the " "configuration has not limited the wireless device to a limited set of " @@ -91934,7 +92021,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63958 +#: book.translate.xml:63585 msgid "" "If the device cannot associate with an access point, verify that the " "configuration matches the settings on the access point. This includes the " @@ -91945,7 +92032,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63967 +#: book.translate.xml:63594 msgid "" "Debugging support is provided by " "<citerefentry><refentrytitle>wpa_supplicant</refentrytitle><manvolnum>8</" @@ -91954,7 +92041,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63974 +#: book.translate.xml:63601 msgid "" "Once the system can associate with the access point, diagnose the network " "configuration using tools like <citerefentry><refentrytitle>ping</" @@ -91962,7 +92049,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63980 +#: book.translate.xml:63607 msgid "" "There are many lower-level debugging tools. Debugging messages can be " "enabled in the 802.11 protocol support layer using " @@ -91973,15 +92060,15 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:63987 +#: book.translate.xml:63614 #, no-wrap msgid "" -"<prompt>#</prompt> <userinput>wlandebug -i <replaceable>ath0</replaceable> +scan+auth+debug+assoc</userinput>\n" +"<prompt>#</prompt> <userinput>wlandebug -i <replaceable>wlan0</replaceable> +scan+auth+debug+assoc</userinput>\n" " net.wlan.0.debug: 0 => 0xc80000<assoc,auth,scan>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:63990 +#: book.translate.xml:63617 msgid "" "Many useful statistics are maintained by the 802.11 layer and " "<command>wlanstats</command>, found in <filename>/usr/src/tools/tools/" @@ -91993,24 +92080,24 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64001 +#: book.translate.xml:63628 msgid "" "If the above information does not help to clarify the problem, submit a " "problem report and include output from the above tools." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64009 +#: book.translate.xml:63636 msgid "USB Tethering" msgstr "USB 網路共享" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64012 +#: book.translate.xml:63639 msgid "<primary>tether</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64016 +#: book.translate.xml:63643 msgid "" "Many cellphones provide the option to share their data connection over USB " "(often called \"tethering\"). This feature uses either the <acronym>RNDIS</" @@ -92020,7 +92107,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64024 +#: book.translate.xml:63651 msgid "" "<trademark>Android</trademark> devices generally use the " "<citerefentry><refentrytitle>urndis</refentrytitle><manvolnum>4</manvolnum></" @@ -92028,7 +92115,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64029 +#: book.translate.xml:63656 msgid "" "<trademark class=\"registered\">Apple</trademark> devices use the " "<citerefentry><refentrytitle>ipheth</refentrytitle><manvolnum>4</manvolnum></" @@ -92036,19 +92123,19 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64033 +#: book.translate.xml:63660 msgid "" "Older devices will often use the <citerefentry><refentrytitle>cdce</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> driver." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64038 +#: book.translate.xml:63665 msgid "Before attaching a device, load the appropriate driver into the kernel:" msgstr "" #. (itstool) path: sect1/screen -#: book.translate.xml:64041 +#: book.translate.xml:63668 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>kldload if_urndis\n" @@ -92057,7 +92144,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64045 +#: book.translate.xml:63672 msgid "" "Once the device is attached <literal>ue</literal><replaceable>0</" "replaceable> will be available for use like a normal network device. Be sure " @@ -92065,24 +92152,24 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64054 +#: book.translate.xml:63681 msgid "Bluetooth" msgstr "藍牙" #. (itstool) path: authorgroup/author -#: book.translate.xml:64057 +#: book.translate.xml:63684 msgid "" "<personname> <firstname>Pav</firstname> <surname>Lucistnik</surname> </" "personname> <contrib>Written by </contrib> <email>pav@FreeBSD.org</email>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64068 +#: book.translate.xml:63695 msgid "<primary>Bluetooth</primary>" msgstr "<primary>藍牙</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:64072 +#: book.translate.xml:63699 msgid "" "Bluetooth is a wireless technology for creating personal networks operating " "in the 2.4 GHz unlicensed band, with a range of 10 meters. Networks are " @@ -92093,7 +92180,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64081 +#: book.translate.xml:63708 msgid "" "This section describes the use of a <acronym>USB</acronym> Bluetooth dongle " "on a FreeBSD system. It then describes the various Bluetooth protocols and " @@ -92101,12 +92188,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64086 +#: book.translate.xml:63713 msgid "Loading Bluetooth Support" msgstr "載入藍牙支援" #. (itstool) path: sect2/para -#: book.translate.xml:64088 +#: book.translate.xml:63715 msgid "" "The Bluetooth stack in FreeBSD is implemented using the " "<citerefentry><refentrytitle>netgraph</refentrytitle><manvolnum>4</" @@ -92128,7 +92215,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64098 +#: book.translate.xml:63725 msgid "" "Before attaching a device, determine which of the above drivers it uses, " "then load the driver. For example, if the device uses the " @@ -92137,13 +92224,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64102 +#: book.translate.xml:63729 #, no-wrap msgid "<prompt>#</prompt> <userinput>kldload ng_ubt</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64104 +#: book.translate.xml:63731 msgid "" "If the Bluetooth device will be attached to the system during system " "startup, the system can be configured to load the module at boot time by " @@ -92151,13 +92238,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64109 +#: book.translate.xml:63736 #, no-wrap msgid "ng_ubt_load=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64111 +#: book.translate.xml:63738 msgid "" "Once the driver is loaded, plug in the <acronym>USB</acronym> dongle. If the " "driver load was successful, output similar to the following should appear on " @@ -92165,7 +92252,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64117 +#: book.translate.xml:63744 #, no-wrap msgid "" "ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2\n" @@ -92175,7 +92262,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64122 +#: book.translate.xml:63749 msgid "" "To start and stop the Bluetooth stack, use its startup script. It is a good " "idea to stop the stack before unplugging the device. When starting the " @@ -92183,7 +92270,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64127 +#: book.translate.xml:63754 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>service bluetooth start ubt0</userinput>\n" @@ -92201,17 +92288,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64142 +#: book.translate.xml:63769 msgid "Finding Other Bluetooth Devices" msgstr "尋找其他藍牙裝置" #. (itstool) path: sect2/indexterm -#: book.translate.xml:64144 +#: book.translate.xml:63771 msgid "<primary>HCI</primary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64148 +#: book.translate.xml:63775 msgid "" "The Host Controller Interface (<acronym>HCI</acronym>) provides a uniform " "method for accessing Bluetooth baseband capabilities. In FreeBSD, a netgraph " @@ -92221,7 +92308,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64154 +#: book.translate.xml:63781 msgid "" "One of the most common tasks is discovery of Bluetooth devices within " "<acronym>RF</acronym> proximity. This operation is called <emphasis>inquiry</" @@ -92235,7 +92322,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64164 +#: book.translate.xml:63791 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci inquiry</userinput>\n" @@ -92251,7 +92338,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64175 +#: book.translate.xml:63802 msgid "" "The <literal>BD_ADDR</literal> is the unique address of a Bluetooth device, " "similar to the <acronym>MAC</acronym> address of a network card. This " @@ -92263,7 +92350,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64185 +#: book.translate.xml:63812 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci remote_name_request 00:80:37:29:19:a4</userinput>\n" @@ -92272,7 +92359,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64189 +#: book.translate.xml:63816 msgid "" "If an inquiry is performed on a remote Bluetooth device, it will find the " "computer as <quote>your.host.name (ubt0)</quote>. The name assigned to the " @@ -92280,7 +92367,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64194 +#: book.translate.xml:63821 msgid "" "The Bluetooth system provides a point-to-point connection between two " "Bluetooth units, or a point-to-multipoint connection which is shared among " @@ -92289,7 +92376,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64200 +#: book.translate.xml:63827 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>hccontrol -n ubt0hci read_connection_list</userinput>\n" @@ -92298,7 +92385,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64204 +#: book.translate.xml:63831 msgid "" "A <emphasis>connection handle</emphasis> is useful when termination of the " "baseband connection is required, though it is normally not required to do " @@ -92307,7 +92394,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64210 +#: book.translate.xml:63837 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>hccontrol -n ubt0hci disconnect 41</userinput>\n" @@ -92316,7 +92403,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64214 +#: book.translate.xml:63841 msgid "" "Type <command>hccontrol help</command> for a complete listing of available " "<acronym>HCI</acronym> commands. Most of the <acronym>HCI</acronym> commands " @@ -92324,12 +92411,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64221 +#: book.translate.xml:63848 msgid "Device Pairing" msgstr "裝置配對" #. (itstool) path: sect2/para -#: book.translate.xml:64223 +#: book.translate.xml:63850 msgid "" "By default, Bluetooth communication is not authenticated, and any device can " "talk to any other device. A Bluetooth device, such as a cellular phone, may " @@ -92346,7 +92433,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64240 +#: book.translate.xml:63867 msgid "" "The <citerefentry><refentrytitle>hcsecd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon is responsible for handling Bluetooth " @@ -92357,7 +92444,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64247 +#: book.translate.xml:63874 #, no-wrap msgid "" "device {\n" @@ -92369,7 +92456,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64254 +#: book.translate.xml:63881 msgid "" "The only limitation on <acronym>PIN</acronym> codes is length. Some devices, " "such as Bluetooth headsets, may have a fixed <acronym>PIN</acronym> code " @@ -92385,7 +92472,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64268 +#: book.translate.xml:63895 msgid "" "The following line can be added to <filename>/etc/rc.conf</filename> to " "configure <citerefentry><refentrytitle>hcsecd</refentrytitle><manvolnum>8</" @@ -92393,20 +92480,20 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64272 +#: book.translate.xml:63899 #, no-wrap msgid "hcsecd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64274 +#: book.translate.xml:63901 msgid "" "The following is a sample of the <citerefentry><refentrytitle>hcsecd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> daemon output:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64277 +#: book.translate.xml:63904 #, no-wrap msgid "" "hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4\n" @@ -92418,12 +92505,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64286 +#: book.translate.xml:63913 msgid "Network Access with <acronym>PPP</acronym> Profiles" msgstr "使用 <acronym>PPP</acronym> Profile 存取網路 " #. (itstool) path: sect2/para -#: book.translate.xml:64289 +#: book.translate.xml:63916 msgid "" "A Dial-Up Networking (<acronym>DUN</acronym>) profile can be used to " "configure a cellular phone as a wireless modem for connecting to a dial-up " @@ -92432,7 +92519,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64295 +#: book.translate.xml:63922 msgid "" "Network access with a <acronym>PPP</acronym> profile can be used to provide " "<acronym>LAN</acronym> access for a single Bluetooth device or multiple " @@ -92442,7 +92529,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64302 +#: book.translate.xml:63929 msgid "" "In FreeBSD, these profiles are implemented with " "<citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></" @@ -92456,7 +92543,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64310 +#: book.translate.xml:63937 msgid "" "In this example, <citerefentry><refentrytitle>rfcomm_pppd</" "refentrytitle><manvolnum>8</manvolnum></citerefentry> is used to open a " @@ -92466,13 +92553,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64317 +#: book.translate.xml:63944 #, no-wrap msgid "<prompt>#</prompt> <userinput>rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64319 +#: book.translate.xml:63946 msgid "" "The actual channel number will be obtained from the remote device using the " "<acronym>SDP</acronym> protocol. It is possible to specify the " @@ -92485,7 +92572,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64327 +#: book.translate.xml:63954 msgid "" "In order to provide network access with the <acronym>PPP</acronym> " "<acronym>LAN</acronym> service, <citerefentry><refentrytitle>sdpd</" @@ -92502,35 +92589,35 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64341 +#: book.translate.xml:63968 #, no-wrap msgid "<prompt>#</prompt> <userinput>rfcomm_pppd -s -C 7 -l rfcomm-server</userinput>" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64345 +#: book.translate.xml:63972 msgid "Bluetooth Protocols" msgstr "藍牙通訊協定" #. (itstool) path: sect2/para -#: book.translate.xml:64347 +#: book.translate.xml:63974 msgid "" "This section provides an overview of the various Bluetooth protocols, their " "function, and associated utilities." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:64351 +#: book.translate.xml:63978 msgid "Logical Link Control and Adaptation Protocol (<acronym>L2CAP</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:64354 +#: book.translate.xml:63981 msgid "<primary>L2CAP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64358 +#: book.translate.xml:63985 msgid "" "The Logical Link Control and Adaptation Protocol (<acronym>L2CAP</acronym>) " "provides connection-oriented and connectionless data services to upper layer " @@ -92540,7 +92627,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64366 +#: book.translate.xml:63993 msgid "" "<acronym>L2CAP</acronym> is based around the concept of <emphasis>channels</" "emphasis>. A channel is a logical connection on top of a baseband " @@ -92552,7 +92639,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64377 +#: book.translate.xml:64004 msgid "" "In FreeBSD, a netgraph <acronym>L2CAP</acronym> node is created for each " "Bluetooth device. This node is normally connected to the downstream " @@ -92564,7 +92651,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64385 +#: book.translate.xml:64012 msgid "" "A useful command is <citerefentry><refentrytitle>l2ping</" "refentrytitle><manvolnum>8</manvolnum></citerefentry>, which can be used to " @@ -92574,7 +92661,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64390 +#: book.translate.xml:64017 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>l2ping -a 00:80:37:29:19:a4</userinput>\n" @@ -92585,7 +92672,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64396 +#: book.translate.xml:64023 msgid "" "The <citerefentry><refentrytitle>l2control</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> utility is used to perform various operations on " @@ -92595,7 +92682,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64402 +#: book.translate.xml:64029 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>l2control -a 00:02:72:00:d4:1a read_channel_list</userinput>\n" @@ -92609,7 +92696,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64411 +#: book.translate.xml:64038 msgid "" "Another diagnostic tool is <citerefentry><refentrytitle>btsockstat</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>. It is similar to " @@ -92621,7 +92708,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64417 +#: book.translate.xml:64044 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>btsockstat</userinput>\n" @@ -92637,12 +92724,12 @@ msgid "" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:64430 +#: book.translate.xml:64057 msgid "Radio Frequency Communication (<acronym>RFCOMM</acronym>)" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64433 +#: book.translate.xml:64060 msgid "" "The <acronym>RFCOMM</acronym> protocol provides emulation of serial ports " "over the <acronym>L2CAP</acronym> protocol. <acronym>RFCOMM</acronym> is a " @@ -92653,7 +92740,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64442 +#: book.translate.xml:64069 msgid "" "For the purposes of <acronym>RFCOMM</acronym>, a complete communication path " "involves two applications running on the communication endpoints with a " @@ -92664,7 +92751,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64451 +#: book.translate.xml:64078 msgid "" "<acronym>RFCOMM</acronym> is only concerned with the connection between the " "devices in the direct connect case, or between the device and a modem in the " @@ -92674,24 +92761,24 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64459 +#: book.translate.xml:64086 msgid "" "In FreeBSD, <acronym>RFCOMM</acronym> is implemented at the Bluetooth " "sockets layer." msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:64464 +#: book.translate.xml:64091 msgid "Service Discovery Protocol (<acronym>SDP</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:64467 +#: book.translate.xml:64094 msgid "<primary>SDP</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64471 +#: book.translate.xml:64098 msgid "" "The Service Discovery Protocol (<acronym>SDP</acronym>) provides the means " "for client applications to discover the existence of services provided by " @@ -92701,7 +92788,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64479 +#: book.translate.xml:64106 msgid "" "<acronym>SDP</acronym> involves communication between a <acronym>SDP</" "acronym> server and a <acronym>SDP</acronym> client. The server maintains a " @@ -92717,7 +92804,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64494 +#: book.translate.xml:64121 msgid "" "Normally, a <acronym>SDP</acronym> client searches for services based on " "some desired characteristics of the services. However, there are times when " @@ -92728,7 +92815,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64503 +#: book.translate.xml:64130 msgid "" "The Bluetooth <acronym>SDP</acronym> server, " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92740,7 +92827,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64509 +#: book.translate.xml:64136 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>sdpcontrol -a 00:01:03:fc:6e:ec browse</userinput>\n" @@ -92768,7 +92855,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64532 +#: book.translate.xml:64159 msgid "" "Note that each service has a list of attributes, such as the " "<acronym>RFCOMM</acronym> channel. Depending on the service, the user might " @@ -92780,13 +92867,13 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64542 +#: book.translate.xml:64169 #, no-wrap msgid "<prompt>%</prompt> <userinput>sdpcontrol -a 00:01:03:fc:6e:ec search OPUSH</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64544 +#: book.translate.xml:64171 msgid "" "Offering services on FreeBSD to Bluetooth clients is done with the " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92795,26 +92882,26 @@ msgid "" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:64548 +#: book.translate.xml:64175 #, no-wrap msgid "sdpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64550 +#: book.translate.xml:64177 msgid "" "Then the <citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> daemon can be started with:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64552 +#: book.translate.xml:64179 #, no-wrap msgid "<prompt>#</prompt> <userinput>service sdpd start</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64554 +#: book.translate.xml:64181 msgid "" "The local server application that wants to provide a Bluetooth service to " "remote clients will register the service with the local <acronym>SDP</" @@ -92825,7 +92912,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64561 +#: book.translate.xml:64188 msgid "" "The list of services registered with the local <acronym>SDP</acronym> server " "can be obtained by issuing a <acronym>SDP</acronym> browse query via the " @@ -92833,23 +92920,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64566 +#: book.translate.xml:64193 #, no-wrap msgid "<prompt>#</prompt> <userinput>sdpcontrol -l browse</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:64570 +#: book.translate.xml:64197 msgid "<acronym>OBEX</acronym> Object Push (<acronym>OPUSH</acronym>)" msgstr "" #. (itstool) path: sect3/indexterm -#: book.translate.xml:64573 +#: book.translate.xml:64200 msgid "<primary>OBEX</primary>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64577 +#: book.translate.xml:64204 msgid "" "Object Exchange (<acronym>OBEX</acronym>) is a widely used protocol for " "simple file transfers between mobile devices. Its main use is in infrared " @@ -92860,7 +92947,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64586 +#: book.translate.xml:64213 msgid "" "The <acronym>OBEX</acronym> server and client are implemented by " "<application>obexapp</application>, which can be installed using the " @@ -92868,7 +92955,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64591 +#: book.translate.xml:64218 msgid "" "The <acronym>OBEX</acronym> client is used to push and/or pull objects from " "the <acronym>OBEX</acronym> server. An example object is a business card or " @@ -92885,7 +92972,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64607 +#: book.translate.xml:64234 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>obexapp -a 00:80:37:29:19:a4 -C IrMC</userinput>\n" @@ -92898,7 +92985,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64615 +#: book.translate.xml:64242 msgid "" "In order to provide the <acronym>OPUSH</acronym> service, " "<citerefentry><refentrytitle>sdpd</refentrytitle><manvolnum>8</manvolnum></" @@ -92913,18 +93000,18 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64627 +#: book.translate.xml:64254 #, no-wrap msgid "<prompt>#</prompt> <userinput>obexapp -s -C 10</userinput>" msgstr "" #. (itstool) path: sect3/title -#: book.translate.xml:64631 +#: book.translate.xml:64258 msgid "Serial Port Profile (<acronym>SPP</acronym>)" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64633 +#: book.translate.xml:64260 msgid "" "The Serial Port Profile (<acronym>SPP</acronym>) allows Bluetooth devices to " "perform serial cable emulation. This profile allows legacy applications to " @@ -92933,7 +93020,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64639 +#: book.translate.xml:64266 msgid "" "In FreeBSD, <citerefentry><refentrytitle>rfcomm_sppd</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> implements " @@ -92947,7 +93034,7 @@ msgid "" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64649 +#: book.translate.xml:64276 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>rfcomm_sppd -a 00:07:E0:00:0B:CA -t</userinput>\n" @@ -92956,23 +93043,23 @@ msgid "" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64653 +#: book.translate.xml:64280 msgid "Once connected, the pseudo tty can be used as serial port:" msgstr "" #. (itstool) path: sect3/screen -#: book.translate.xml:64656 +#: book.translate.xml:64283 #, no-wrap msgid "<prompt>#</prompt> <userinput>cu -l /dev/pts/6</userinput>" msgstr "" #. (itstool) path: sect3/para -#: book.translate.xml:64658 +#: book.translate.xml:64285 msgid "The pseudo tty is printed on stdout and can be read by wrapper scripts:" msgstr "" #. (itstool) path: sect3/programlisting -#: book.translate.xml:64661 +#: book.translate.xml:64288 #, no-wrap msgid "" "PTS=`rfcomm_sppd -a 00:07:E0:00:0B:CA -t`\n" @@ -92980,7 +93067,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64669 +#: book.translate.xml:64296 msgid "" "By default, when FreeBSD is accepting a new connection, it tries to perform " "a role switch and become master. Some older Bluetooth devices which do not " @@ -92991,13 +93078,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64678 +#: book.translate.xml:64305 #, no-wrap msgid "<prompt>#</prompt> <userinput>hccontrol -n ubt0hci write_node_role_switch 0</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64680 +#: book.translate.xml:64307 msgid "" "To display Bluetooth packets, use the third-party package " "<application>hcidump</application>, which can be installed using the " @@ -93009,29 +93096,29 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:64691 +#: book.translate.xml:64318 msgid "Bridging" msgstr "橋接" #. (itstool) path: authorgroup/author -#: book.translate.xml:64694 book.translate.xml:65155 +#: book.translate.xml:64321 book.translate.xml:64782 msgid "" "<personname> <firstname>Andrew</firstname> <surname>Thompson</surname> </" "personname> <contrib>Written by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64704 +#: book.translate.xml:64331 msgid "<primary><acronym>IP</acronym> subnet</primary>" msgstr "<primary><acronym>IP</acronym> 子網段</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:64707 +#: book.translate.xml:64334 msgid "<primary>bridge</primary>" msgstr "<primary>橋接</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:64711 +#: book.translate.xml:64338 msgid "" "It is sometimes useful to divide a network, such as an Ethernet segment, " "into network segments without having to create <acronym>IP</acronym> subnets " @@ -93040,7 +93127,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64718 +#: book.translate.xml:64345 msgid "" "A bridge works by learning the <acronym>MAC</acronym> addresses of the " "devices on each of its network interfaces. It forwards traffic between " @@ -93051,17 +93138,17 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64726 +#: book.translate.xml:64353 msgid "Bridging can be useful in the following situations:" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64730 +#: book.translate.xml:64357 msgid "Connecting Networks" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64732 +#: book.translate.xml:64359 msgid "" "The basic operation of a bridge is to join two or more network segments. " "There are many reasons to use a host-based bridge instead of networking " @@ -93071,19 +93158,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64742 +#: book.translate.xml:64369 msgid "Filtering/Traffic Shaping Firewall" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64744 +#: book.translate.xml:64371 msgid "" "A bridge can be used when firewall functionality is needed without routing " "or Network Address Translation (<acronym>NAT</acronym>)." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64748 +#: book.translate.xml:64375 msgid "" "An example is a small company that is connected via <acronym>DSL</acronym> " "or <acronym>ISDN</acronym> to an <acronym>ISP</acronym>. There are thirteen " @@ -93094,12 +93181,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64761 +#: book.translate.xml:64388 msgid "Network Tap" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64763 +#: book.translate.xml:64390 msgid "" "A bridge can join two network segments in order to inspect all Ethernet " "frames that pass between them using <citerefentry><refentrytitle>bpf</" @@ -93110,12 +93197,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64772 +#: book.translate.xml:64399 msgid "Layer 2 <acronym>VPN</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64774 +#: book.translate.xml:64401 msgid "" "Two Ethernet networks can be joined across an <acronym>IP</acronym> link by " "bridging the networks to an EtherIP tunnel or a " @@ -93124,19 +93211,19 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64782 +#: book.translate.xml:64409 msgid "Layer 2 Redundancy" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64784 +#: book.translate.xml:64411 msgid "" "A network can be connected together with multiple links and use the Spanning " "Tree Protocol (<acronym>STP</acronym>) to block redundant paths." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:64791 +#: book.translate.xml:64418 msgid "" "This section describes how to configure a FreeBSD system as a bridge using " "<citerefentry><refentrytitle>if_bridge</refentrytitle><manvolnum>4</" @@ -93146,7 +93233,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:64796 +#: book.translate.xml:64423 msgid "" "Packet filtering can be used with any firewall package that hooks into the " "<citerefentry><refentrytitle>pfil</refentrytitle><manvolnum>9</manvolnum></" @@ -93157,12 +93244,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64803 +#: book.translate.xml:64430 msgid "Enabling the Bridge" msgstr "開啟橋接" #. (itstool) path: sect2/para -#: book.translate.xml:64805 +#: book.translate.xml:64432 msgid "" "In FreeBSD, <citerefentry><refentrytitle>if_bridge</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> is a kernel module " @@ -93174,14 +93261,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64812 +#: book.translate.xml:64439 msgid "" "The bridge is created using interface cloning. To create the bridge " "interface:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64815 +#: book.translate.xml:64442 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge create</userinput>\n" @@ -93195,7 +93282,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64824 +#: book.translate.xml:64451 msgid "" "When a bridge interface is created, it is automatically assigned a randomly " "generated Ethernet address. The <literal>maxaddr</literal> and " @@ -93206,7 +93293,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64833 +#: book.translate.xml:64460 msgid "" "Next, specify which network interfaces to add as members of the bridge. For " "the bridge to forward packets, all member interfaces and the bridge need to " @@ -93214,7 +93301,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64837 +#: book.translate.xml:64464 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm fxp0 addm fxp1 up</userinput>\n" @@ -93223,7 +93310,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64841 +#: book.translate.xml:64468 msgid "" "The bridge can now forward Ethernet frames between <filename>fxp0</filename> " "and <filename>fxp1</filename>. Add the following lines to <filename>/etc/rc." @@ -93231,7 +93318,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:64846 +#: book.translate.xml:64473 #, no-wrap msgid "" "cloned_interfaces=\"bridge0\"\n" @@ -93241,7 +93328,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64851 +#: book.translate.xml:64478 msgid "" "If the bridge host needs an <acronym>IP</acronym> address, set it on the " "bridge interface, not on the member interfaces. The address can be set " @@ -93250,13 +93337,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64857 +#: book.translate.xml:64484 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 inet 192.168.0.1/24</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64859 +#: book.translate.xml:64486 msgid "" "It is also possible to assign an <acronym>IPv6</acronym> address to a bridge " "interface. To make the changes permanent, add the addressing information to " @@ -93264,7 +93351,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:64865 +#: book.translate.xml:64492 msgid "" "When packet filtering is enabled, bridged packets will pass through the " "filter inbound on the originating interface on the bridge interface, and " @@ -93274,7 +93361,7 @@ msgid "" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:64872 +#: book.translate.xml:64499 msgid "" "The bridge has several configurable settings for passing non-<acronym>IP</" "acronym> and <acronym>IP</acronym> packets, and layer2 firewalling with " @@ -93284,12 +93371,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64880 +#: book.translate.xml:64507 msgid "Enabling Spanning Tree" msgstr "開啟 Spanning Tree" #. (itstool) path: sect2/para -#: book.translate.xml:64882 +#: book.translate.xml:64509 msgid "" "For an Ethernet network to function properly, only one active path can exist " "between two devices. The <acronym>STP</acronym> protocol detects loops and " @@ -93299,7 +93386,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64890 +#: book.translate.xml:64517 msgid "" "The Rapid Spanning Tree Protocol (<acronym>RSTP</acronym> or 802.1w) " "provides backwards compatibility with legacy <acronym>STP</acronym>. " @@ -93311,7 +93398,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64899 +#: book.translate.xml:64526 msgid "" "<acronym>STP</acronym> can be enabled on member interfaces using " "<citerefentry><refentrytitle>ifconfig</refentrytitle><manvolnum>8</" @@ -93321,7 +93408,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64904 +#: book.translate.xml:64531 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 stp fxp0 stp fxp1</userinput>\n" @@ -93339,7 +93426,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64917 +#: book.translate.xml:64544 msgid "" "This bridge has a spanning tree ID of <literal>00:01:02:4b:d4:50</literal> " "and a priority of <literal>32768</literal>. As the <literal>root id</" @@ -93347,12 +93434,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64923 +#: book.translate.xml:64550 msgid "Another bridge on the network also has <acronym>STP</acronym> enabled:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:64926 +#: book.translate.xml:64553 #, no-wrap msgid "" "bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500\n" @@ -93369,7 +93456,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:64938 +#: book.translate.xml:64565 msgid "" "The line <literal>root id 00:01:02:4b:d4:50 priority 32768 ifcost 400000 " "port 4</literal> shows that the root bridge is <literal>00:01:02:4b:d4:50</" @@ -93379,12 +93466,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:64947 +#: book.translate.xml:64574 msgid "Bridge Interface Parameters" msgstr "橋接介面參數" #. (itstool) path: sect2/para -#: book.translate.xml:64949 +#: book.translate.xml:64576 msgid "" "Several <command>ifconfig</command> parameters are unique to bridge " "interfaces. This section summarizes some common uses for these parameters. " @@ -93394,12 +93481,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64956 +#: book.translate.xml:64583 msgid "private" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64958 +#: book.translate.xml:64585 msgid "" "A private interface does not forward any traffic to any other port that is " "also designated as a private interface. The traffic is blocked " @@ -93409,12 +93496,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64969 +#: book.translate.xml:64596 msgid "span" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64971 +#: book.translate.xml:64598 msgid "" "A span port transmits a copy of every Ethernet frame received by the bridge. " "The number of span ports configured on a bridge is unlimited, but if an " @@ -93426,18 +93513,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:64981 +#: book.translate.xml:64608 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 span fxp4</userinput>" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:64986 +#: book.translate.xml:64613 msgid "sticky" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64988 +#: book.translate.xml:64615 msgid "" "If a bridge member interface is marked as sticky, dynamically learned " "address entries are treated as static entries in the forwarding cache. " @@ -93449,7 +93536,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:64998 +#: book.translate.xml:64625 msgid "" "An example of using sticky addresses is to combine the bridge with " "<acronym>VLAN</acronym>s in order to isolate customer networks without " @@ -93461,7 +93548,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:65007 +#: book.translate.xml:64634 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm vlan100 sticky vlan100 addm vlan101 sticky vlan101</userinput>\n" @@ -93469,7 +93556,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65010 +#: book.translate.xml:64637 msgid "" "In this example, both clients see <systemitem class=\"ipaddress" "\">192.168.0.1</systemitem> as their default gateway. Since the bridge cache " @@ -93478,20 +93565,20 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65016 +#: book.translate.xml:64643 msgid "" "Any communication between the <acronym>VLAN</acronym>s can be blocked using " "a firewall or, as seen in this example, private interfaces:" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:65020 +#: book.translate.xml:64647 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 private vlan100 private vlan101</userinput>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65022 +#: book.translate.xml:64649 msgid "" "The customers are completely isolated from each other and the full " "<systemitem class=\"netmask\">/24</systemitem> address range can be " @@ -93499,7 +93586,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65026 +#: book.translate.xml:64653 msgid "" "The number of unique source <acronym>MAC</acronym> addresses behind an " "interface can be limited. Once the limit is reached, packets with unknown " @@ -93508,7 +93595,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65032 +#: book.translate.xml:64659 msgid "" "The following example sets the maximum number of Ethernet devices for " "<systemitem class=\"fqdomainname\">CustomerA</systemitem> on " @@ -93516,13 +93603,13 @@ msgid "" msgstr "" #. (itstool) path: listitem/screen -#: book.translate.xml:65036 +#: book.translate.xml:64663 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig bridge0 ifmaxaddr vlan100 10</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65041 +#: book.translate.xml:64668 msgid "" "Bridge interfaces also support monitor mode, where the packets are discarded " "after <citerefentry><refentrytitle>bpf</refentrytitle><manvolnum>4</" @@ -93536,7 +93623,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65050 +#: book.translate.xml:64677 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig bridge0 addm fxp0 addm fxp1 addm fxp2 addm fxp3 monitor up</userinput>\n" @@ -93544,12 +93631,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65055 +#: book.translate.xml:64682 msgid "<acronym>SNMP</acronym> Monitoring" msgstr "<acronym>SNMP</acronym> 監視" #. (itstool) path: sect2/para -#: book.translate.xml:65057 +#: book.translate.xml:64684 msgid "" "The bridge interface and <acronym>STP</acronym> parameters can be monitored " "via <citerefentry><refentrytitle>bsnmpd</refentrytitle><manvolnum>1</" @@ -93560,7 +93647,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65064 +#: book.translate.xml:64691 msgid "" "To enable monitoring on the bridge, uncomment this line in <filename>/etc/" "snmpd.config</filename> by removing the beginning <literal>#</literal> " @@ -93568,13 +93655,13 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65068 +#: book.translate.xml:64695 #, no-wrap msgid "begemotSnmpdModulePath.\"bridge\" = \"/usr/lib/snmp_bridge.so\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65070 +#: book.translate.xml:64697 msgid "" "Other configuration settings, such as community names and access lists, may " "need to be modified in this file. See <citerefentry><refentrytitle>bsnmpd</" @@ -93585,26 +93672,26 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65076 +#: book.translate.xml:64703 #, no-wrap msgid "bsnmpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65078 +#: book.translate.xml:64705 msgid "" "Then, start <citerefentry><refentrytitle>bsnmpd</refentrytitle><manvolnum>1</" "manvolnum></citerefentry>:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65080 +#: book.translate.xml:64707 #, no-wrap msgid "<prompt>#</prompt> <userinput>service bsnmpd start</userinput>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65082 +#: book.translate.xml:64709 msgid "" "The following examples use the <application>Net-SNMP</application> software " "(<package>net-mgmt/net-snmp</package>) to query a bridge from a client " @@ -93616,7 +93703,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65092 +#: book.translate.xml:64719 #, no-wrap msgid "" "mibdirs +/usr/share/snmp/mibs\n" @@ -93624,12 +93711,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65095 +#: book.translate.xml:64722 msgid "To monitor a single bridge using the IETF BRIDGE-MIB (RFC4188):" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65098 +#: book.translate.xml:64725 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpwalk -v 2c -c public bridge1.example.com mib-2.dot1dBridge</userinput>\n" @@ -93651,7 +93738,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65115 +#: book.translate.xml:64742 msgid "" "The <literal>dot1dStpTopChanges.0</literal> value is two, indicating that " "the <acronym>STP</acronym> bridge topology has changed twice. A topology " @@ -93662,14 +93749,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65123 +#: book.translate.xml:64750 msgid "" "To monitor multiple bridge interfaces, the private BEGEMOT-BRIDGE-MIB can be " "used:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65126 +#: book.translate.xml:64753 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpwalk -v 2c -c public bridge1.example.com</userinput>\n" @@ -93690,14 +93777,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65142 +#: book.translate.xml:64769 msgid "" "To change the bridge interface being monitored via the <literal>mib-2." "dot1dBridge</literal> subtree:" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65145 +#: book.translate.xml:64772 #, no-wrap msgid "" "<prompt>%</prompt> <userinput>snmpset -v 2c -c private bridge1.example.com</userinput>\n" @@ -93705,42 +93792,42 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:65152 +#: book.translate.xml:64779 msgid "Link Aggregation and Failover" msgstr "Link Aggregation 與容錯移轉" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65165 +#: book.translate.xml:64792 msgid "<primary>lagg</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65168 +#: book.translate.xml:64795 msgid "<primary>failover</primary>" msgstr "<primary>容錯移轉</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65171 +#: book.translate.xml:64798 msgid "<primary><acronym>FEC</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65174 +#: book.translate.xml:64801 msgid "<primary><acronym>LACP</acronym></primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65177 +#: book.translate.xml:64804 msgid "<primary>loadbalance</primary>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65180 +#: book.translate.xml:64807 msgid "<primary>roundrobin</primary>" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65184 +#: book.translate.xml:64811 msgid "" "FreeBSD provides the <citerefentry><refentrytitle>lagg</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> interface which can be " @@ -93753,7 +93840,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65194 +#: book.translate.xml:64821 msgid "" "The aggregation protocols supported by the lagg interface determine which " "ports are used for outgoing traffic and whether or not a specific port " @@ -93763,12 +93850,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65201 +#: book.translate.xml:64828 msgid "failover" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65203 +#: book.translate.xml:64830 msgid "" "This mode sends and receives traffic only through the master port. If the " "master port becomes unavailable, the next active port is used. The first " @@ -93779,12 +93866,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65215 +#: book.translate.xml:64842 msgid "fec / loadbalance" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65217 +#: book.translate.xml:64844 msgid "" "<trademark class=\"registered\">Cisco</trademark> Fast <trademark class=" "\"registered\">EtherChannel</trademark> (<acronym>FEC</acronym>) is found on " @@ -93795,12 +93882,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65227 +#: book.translate.xml:64854 msgid "<acronym>lacp</acronym>" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65229 +#: book.translate.xml:64856 msgid "" "The <trademark class=\"registered\">IEEE</trademark> 802.3ad Link " "Aggregation Control Protocol (<acronym>LACP</acronym>) negotiates a set of " @@ -93814,7 +93901,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65243 +#: book.translate.xml:64870 msgid "" "<acronym>LACP</acronym> balances outgoing traffic across the active ports " "based on hashed protocol header information and accepts incoming traffic " @@ -93825,12 +93912,12 @@ msgid "" msgstr "" #. (itstool) path: varlistentry/term -#: book.translate.xml:65255 +#: book.translate.xml:64882 msgid "roundrobin" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65257 +#: book.translate.xml:64884 msgid "" "This mode distributes outgoing traffic using a round-robin scheduler through " "all active ports and accepts incoming traffic from any active port. Since " @@ -93838,12 +93925,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65267 +#: book.translate.xml:64894 msgid "Configuration Examples" msgstr "設定範例" #. (itstool) path: sect2/para -#: book.translate.xml:65269 +#: book.translate.xml:64896 msgid "" "This section demonstrates how to configure a <trademark class=\"registered" "\">Cisco</trademark> switch and a FreeBSD system for <acronym>LACP</acronym> " @@ -93853,7 +93940,7 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:65277 +#: book.translate.xml:64904 msgid "" "<acronym>LACP</acronym> Aggregation with a <trademark class=\"registered" "\">Cisco</trademark> Switch" @@ -93862,7 +93949,7 @@ msgstr "" "<acronym>LACP</acronym> Aggregation" #. (itstool) path: example/para -#: book.translate.xml:65280 +#: book.translate.xml:64907 msgid "" "This example connects two <citerefentry><refentrytitle>fxp</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> Ethernet interfaces on " @@ -93875,7 +93962,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65289 +#: book.translate.xml:64916 msgid "" "Frame ordering is mandatory on Ethernet links and any traffic between two " "stations always flows over the same physical link, limiting the maximum " @@ -93885,7 +93972,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65297 +#: book.translate.xml:64924 msgid "" "On the <trademark class=\"registered\">Cisco</trademark> switch, add the " "<replaceable>FastEthernet0/1</replaceable> and <replaceable>FastEthernet0/2</" @@ -93893,7 +93980,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65302 +#: book.translate.xml:64929 #, no-wrap msgid "" "<userinput>interface <replaceable>FastEthernet0/1</replaceable>\n" @@ -93906,7 +93993,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65310 +#: book.translate.xml:64937 msgid "" "On the FreeBSD system, create the <citerefentry><refentrytitle>lagg</" "refentrytitle><manvolnum>4</manvolnum></citerefentry> interface using the " @@ -93916,7 +94003,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65317 +#: book.translate.xml:64944 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>fxp0</replaceable> up</userinput>\n" @@ -93926,12 +94013,12 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65322 +#: book.translate.xml:64949 msgid "Next, verify the status of the virtual interface:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65324 +#: book.translate.xml:64951 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -93946,7 +94033,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65334 +#: book.translate.xml:64961 msgid "" "Ports marked as <literal>ACTIVE</literal> are part of the <acronym>LAG</" "acronym> that has been negotiated with the remote switch. Traffic will be " @@ -93955,14 +94042,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65342 +#: book.translate.xml:64969 msgid "" "To see the port status on the <trademark class=\"registered\">Cisco</" "trademark> switch:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65344 +#: book.translate.xml:64971 #, no-wrap msgid "" "switch# <userinput>show lacp neighbor</userinput>\n" @@ -93981,19 +94068,19 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65358 +#: book.translate.xml:64985 msgid "For more detail, type <userinput>show lacp neighbor detail</userinput>." msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65361 +#: book.translate.xml:64988 msgid "" "To retain this configuration across reboots, add the following entries to " "<filename>/etc/rc.conf</filename> on the FreeBSD system:" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:65365 +#: book.translate.xml:64992 #, no-wrap msgid "" "ifconfig_<replaceable>fxp0</replaceable>=\"up\"\n" @@ -94003,12 +94090,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:65372 +#: book.translate.xml:64999 msgid "Failover Mode" msgstr "容錯移轉模式" #. (itstool) path: example/para -#: book.translate.xml:65374 +#: book.translate.xml:65001 msgid "" "Failover mode can be used to switch over to a secondary interface if the " "link is lost on the master interface. To configure failover, make sure that " @@ -94021,7 +94108,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65384 +#: book.translate.xml:65011 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>fxp0</replaceable> up</userinput>\n" @@ -94031,12 +94118,12 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65389 book.translate.xml:65478 +#: book.translate.xml:65016 book.translate.xml:65105 msgid "The virtual interface should look something like this:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65392 +#: book.translate.xml:65019 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -94052,7 +94139,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65403 +#: book.translate.xml:65030 msgid "" "Traffic will be transmitted and received on <replaceable>fxp0</replaceable>. " "If the link is lost on <replaceable>fxp0</replaceable>, <replaceable>fxp1</" @@ -94061,14 +94148,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65410 book.translate.xml:65496 +#: book.translate.xml:65037 book.translate.xml:65123 msgid "" "To retain this configuration across reboots, add the following entries to " "<filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:65414 +#: book.translate.xml:65041 #, no-wrap msgid "" "ifconfig_<replaceable>fxp0</replaceable>=\"up\"\n" @@ -94078,12 +94165,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: book.translate.xml:65421 +#: book.translate.xml:65048 msgid "Failover Mode Between Ethernet and Wireless Interfaces" msgstr "乙太網路與無線介面間的容錯移轉模式" #. (itstool) path: example/para -#: book.translate.xml:65424 +#: book.translate.xml:65051 msgid "" "For laptop users, it is usually desirable to configure the wireless device " "as a secondary which is only used when the Ethernet connection is not " @@ -94095,14 +94182,14 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65432 +#: book.translate.xml:65059 msgid "" "This is achieved by overriding the physical wireless interface's " "<acronym>MAC</acronym> address with that of the Ethernet interface." msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65436 +#: book.translate.xml:65063 msgid "" "In this example, the Ethernet interface, <replaceable>bge0</replaceable>, is " "the master and the wireless interface, <replaceable>wlan0</replaceable>, is " @@ -94113,7 +94200,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65446 +#: book.translate.xml:65073 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>bge0</replaceable></userinput>\n" @@ -94127,7 +94214,7 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65455 +#: book.translate.xml:65082 msgid "" "Replace <replaceable>bge0</replaceable> to match the system's Ethernet " "interface name. The <literal>ether</literal> line will contain the " @@ -94136,26 +94223,26 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65462 +#: book.translate.xml:65089 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>iwn0</replaceable> ether <replaceable>00:21:70:da:ae:37</replaceable></userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65464 +#: book.translate.xml:65091 msgid "" "Bring the wireless interface up, but do not set an <acronym>IP</acronym> " "address:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65467 +#: book.translate.xml:65094 #, no-wrap msgid "<prompt>#</prompt> <userinput>ifconfig <replaceable>wlan0</replaceable> create wlandev <replaceable>iwn0</replaceable> ssid <replaceable>my_router</replaceable> up</userinput>" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65469 +#: book.translate.xml:65096 msgid "" "Make sure the <replaceable>bge0</replaceable> interface is up, then create " "the <citerefentry><refentrytitle>lagg</refentrytitle><manvolnum>4</" @@ -94164,7 +94251,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65474 +#: book.translate.xml:65101 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <replaceable>bge0</replaceable> up</userinput>\n" @@ -94173,7 +94260,7 @@ msgid "" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65481 +#: book.translate.xml:65108 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>ifconfig <literal>lagg<replaceable>0</replaceable></literal></userinput>\n" @@ -94188,20 +94275,20 @@ msgid "" msgstr "" #. (itstool) path: example/para -#: book.translate.xml:65491 +#: book.translate.xml:65118 msgid "" "Then, start the <acronym>DHCP</acronym> client to obtain an <acronym>IP</" "acronym> address:" msgstr "" #. (itstool) path: example/screen -#: book.translate.xml:65494 +#: book.translate.xml:65121 #, no-wrap msgid "<prompt>#</prompt> <userinput>dhclient <literal>lagg<replaceable>0</replaceable></literal></userinput>" msgstr "" #. (itstool) path: example/programlisting -#: book.translate.xml:65500 +#: book.translate.xml:65127 #, no-wrap msgid "" "ifconfig_bge0=\"up\"\n" @@ -94213,36 +94300,36 @@ msgid "" msgstr "" #. (itstool) path: info/title -#: book.translate.xml:65512 +#: book.translate.xml:65139 msgid "Diskless Operation with <acronym>PXE</acronym>" msgstr "<acronym>PXE</acronym> 無磁碟作業" #. (itstool) path: authorgroup/author -#: book.translate.xml:65515 +#: book.translate.xml:65142 msgid "" "<personname> <firstname>Jean-François</firstname> <surname>Dockès</surname> " "</personname> <contrib>Updated by </contrib>" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:65524 +#: book.translate.xml:65151 msgid "" "<personname> <firstname>Alex</firstname> <surname>Dupre</surname> </" "personname> <contrib>Reorganized and enhanced by </contrib>" msgstr "" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65534 +#: book.translate.xml:65161 msgid "<primary>diskless workstation</primary>" msgstr "<primary>無磁碟工作站</primary>" #. (itstool) path: sect1/indexterm -#: book.translate.xml:65535 +#: book.translate.xml:65164 msgid "<primary>diskless operation</primary>" msgstr "<primary>無磁碟作業</primary>" #. (itstool) path: sect1/para -#: book.translate.xml:65535 +#: book.translate.xml:65168 msgid "" "The <trademark class=\"registered\">Intel</trademark> Preboot eXecution " "Environment (<acronym>PXE</acronym>) allows an operating system to boot over " @@ -94256,7 +94343,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65535 +#: book.translate.xml:65179 msgid "" "In order to provide the files needed for an operating system to boot over " "the network, a <acronym>PXE</acronym> setup also requires properly " @@ -94265,7 +94352,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65535 +#: book.translate.xml:65187 msgid "" "Initial parameters, such as an <acronym>IP</acronym> address, executable " "boot filename and location, server name, and root path are obtained from the " @@ -94273,18 +94360,18 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65535 +#: book.translate.xml:65194 msgid "" "The operating system loader file is booted using <acronym>TFTP</acronym>." msgstr "" #. (itstool) path: listitem/para -#: book.translate.xml:65535 +#: book.translate.xml:65199 msgid "The file systems are loaded using <acronym>NFS</acronym>." msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65535 +#: book.translate.xml:65204 msgid "" "When a computer <acronym>PXE</acronym> boots, it receives information over " "<acronym>DHCP</acronym> about where to obtain the initial boot loader file. " @@ -94297,7 +94384,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: book.translate.xml:65535 +#: book.translate.xml:65215 msgid "" "This section describes how to configure these services on a FreeBSD system " "so that other systems can <acronym>PXE</acronym> boot into FreeBSD. Refer to " @@ -94306,25 +94393,25 @@ msgid "" msgstr "" #. (itstool) path: caution/para -#: book.translate.xml:65535 +#: book.translate.xml:65221 msgid "" "As described, the system providing these services is insecure. It should " "live in a protected area of a network and be untrusted by other hosts." msgstr "" #. (itstool) path: info/title -#: book.translate.xml:65535 +#: book.translate.xml:65228 msgid "Setting Up the <acronym>PXE</acronym> Environment" msgstr "設定 <acronym>PXE</acronym> 環境" #. (itstool) path: affiliation/address -#: book.translate.xml:65535 +#: book.translate.xml:65238 #, no-wrap msgid "rodrigc@FreeBSD.org" msgstr "" #. (itstool) path: authorgroup/author -#: book.translate.xml:65535 +#: book.translate.xml:65232 msgid "" "<personname> <firstname>Craig</firstname> <surname>Rodrigues</surname> </" "personname> <affiliation> <_:address-1/> </affiliation> <contrib>Written by " @@ -94332,7 +94419,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65245 msgid "" "The steps shown in this section configure the built-in <acronym>NFS</" "acronym> and <acronym>TFTP</acronym> servers. The next section demonstrates " @@ -94345,14 +94432,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65259 msgid "" "Create the root directory which will contain a FreeBSD installation to be " "<acronym>NFS</acronym> mounted:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:65535 +#: book.translate.xml:65262 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>export NFSROOTDIR=/b/tftpboot/FreeBSD/install</userinput>\n" @@ -94360,38 +94447,38 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65267 msgid "" "Enable the <acronym>NFS</acronym> server by adding this line to <filename>/" "etc/rc.conf</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65270 #, no-wrap msgid "nfs_server_enable=\"YES\"" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65274 msgid "" "Export the diskless root directory via <acronym>NFS</acronym> by adding the " "following to <filename>/etc/exports</filename>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65278 #, no-wrap msgid "/b -ro -alldirs" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65282 msgid "Start the <acronym>NFS</acronym> server:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65288 msgid "" "Enable <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry> by adding the following line to <filename>/etc/rc." @@ -94399,20 +94486,20 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65295 msgid "" "Uncomment the following line in <filename>/etc/inetd.conf</filename> by " "making sure it does not start with a <literal>#</literal> symbol:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65299 #, no-wrap msgid "tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /b/tftpboot" msgstr "" #. (itstool) path: note/para -#: book.translate.xml:65535 +#: book.translate.xml:65302 msgid "" "Some <acronym>PXE</acronym> versions require the <acronym>TCP</acronym> " "version of <acronym>TFTP</acronym>. In this case, uncomment the second " @@ -94420,35 +94507,26 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65311 msgid "" "Start <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</" "manvolnum></citerefentry>:" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65317 msgid "" "Rebuild the FreeBSD kernel and userland (refer to <xref linkend=\"makeworld" "\"/> for more detailed instructions):" msgstr "" -#. (itstool) path: step/screen -#: book.translate.xml:65535 -#, no-wrap -msgid "" -"<prompt>#</prompt> <userinput>cd /usr/src</userinput>\n" -"<prompt>#</prompt> <userinput>make buildworld</userinput>\n" -"<prompt>#</prompt> <userinput>make buildkernel</userinput>" -msgstr "" - #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65326 msgid "Install FreeBSD into the directory mounted over <acronym>NFS</acronym>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:65535 +#: book.translate.xml:65329 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>make installworld DESTDIR=${NFSROOTDIR}</userinput>\n" @@ -94457,14 +94535,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65335 msgid "" "Test that the <acronym>TFTP</acronym> server works and can download the boot " "loader which will be obtained via <acronym>PXE</acronym>:" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:65535 +#: book.translate.xml:65339 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>tftp localhost</userinput>\n" @@ -94473,14 +94551,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65345 msgid "" "Edit <filename>${NFSROOTDIR}/etc/fstab</filename> and create an entry to " "mount the root file system over <acronym>NFS</acronym>:" msgstr "" #. (itstool) path: step/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65349 #, no-wrap msgid "" "# Device Mountpoint FSType Options Dump Pass\n" @@ -94488,7 +94566,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65352 msgid "" "Replace <replaceable>myhost.example.com</replaceable> with the hostname or " "<acronym>IP</acronym> address of the <acronym>NFS</acronym> server. In this " @@ -94498,14 +94576,14 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65361 msgid "" "Set the root password in the <acronym>PXE</acronym> environment for client " "machines which are <acronym>PXE</acronym> booting :" msgstr "" #. (itstool) path: step/screen -#: book.translate.xml:65535 +#: book.translate.xml:65365 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chroot ${NFSROOTDIR}</userinput>\n" @@ -94513,7 +94591,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65370 msgid "" "If needed, enable <citerefentry><refentrytitle>ssh</" "refentrytitle><manvolnum>1</manvolnum></citerefentry> root logins for client " @@ -94525,7 +94603,7 @@ msgid "" msgstr "" #. (itstool) path: step/para -#: book.translate.xml:65535 +#: book.translate.xml:65379 msgid "" "Perform any other needed customizations of the <acronym>PXE</acronym> " "environment in <filename>${NFSROOTDIR}</filename>. These customizations " @@ -94535,7 +94613,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65387 msgid "" "When booting from an <acronym>NFS</acronym> root volume, <filename>/etc/rc</" "filename> detects the <acronym>NFS</acronym> boot and runs <filename>/etc/rc." @@ -94546,7 +94624,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/screen -#: book.translate.xml:65535 +#: book.translate.xml:65396 #, no-wrap msgid "" "<prompt>#</prompt> <userinput>chroot ${NFSROOTDIR}</userinput>\n" @@ -94556,7 +94634,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65401 msgid "" "When the system boots, memory file systems for <filename>/etc</filename> and " "<filename>/var</filename> will be created and mounted and the contents of " @@ -94564,17 +94642,17 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: book.translate.xml:65535 +#: book.translate.xml:65409 msgid "Configuring the <acronym>DHCP</acronym> Server" msgstr "設定 <acronym>DHCP</acronym> 伺服器" #. (itstool) path: sect2/indexterm -#: book.translate.xml:65535 +#: book.translate.xml:65411 msgid "<primary>DHCP</primary> <secondary>diskless operation</secondary>" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65416 msgid "" "The <acronym>DHCP</acronym> server does not need to be the same machine as " "the <acronym>TFTP</acronym> and <acronym>NFS</acronym> server, but it needs " @@ -94582,14 +94660,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65421 msgid "" "<acronym>DHCP</acronym> is not part of the FreeBSD base system but can be " "installed using the <package>net/isc-dhcp42-server</package> port or package." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65426 msgid "" "Once installed, edit the configuration file, <filename>/usr/local/etc/dhcpd." "conf</filename>. Configure the <literal>next-server</literal>, " @@ -94598,7 +94676,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65433 #, no-wrap msgid "" "subnet 192.168.0.0 netmask 255.255.255.0 {\n" @@ -94622,14 +94700,14 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65463 msgid "" "The <literal>next-server</literal> directive is used to specify the " "<acronym>IP</acronym> address of the <acronym>TFTP</acronym> server." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65467 msgid "" "The <literal>filename</literal> directive defines the path to <filename>/" "boot/pxeboot</filename>. A relative filename is used, meaning that " @@ -94637,27 +94715,27 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65472 msgid "" "The <literal>root-path</literal> option defines the path to the " "<acronym>NFS</acronym> root file system." msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65475 msgid "" "Once the edits are saved, enable <acronym>DHCP</acronym> at boot time by " "adding the following line to <filename>/etc/rc.conf</filename>:" msgstr "" #. (itstool) path: sect2/programlisting -#: book.translate.xml:65535 +#: book.translate.xml:65479 #, no-wrap msgid "dhcpd_enable=\"YES\"" msgstr "" #. (itstool) path: sect2/para -#: book.translate.xml:65535 +#: book.translate.xml:65481 msgid "Then start the <acronym>DHCP</acronym> service:" msgstr "" @@ -95259,13 +95337,6 @@ msgstr "" #. (itstool) path: listitem/para #: book.translate.xml:65535 msgid "" -"<link xlink:href=\"http://www.sixxs.net\">SixXS</link> offers tunnels with " -"end-points all around the globe." -msgstr "" - -#. (itstool) path: listitem/para -#: book.translate.xml:65535 -msgid "" "<link xlink:href=\"http://www.tunnelbroker.net\">Hurricane Electric</link> " "offers tunnels with end-points all around the globe." msgstr "" @@ -105281,6 +105352,1117 @@ msgstr "" "<application>JadeTeX</application> 巨集套件的重要貢獻,本文件的印刷版本將無以" "完成。" +#~ msgid "Using FreeBSD-STABLE" +#~ msgstr "使用 FreeBSD-STABLE" + +#~ msgid "" +#~ "FreeBSD-STABLE is the development branch from which major releases are " +#~ "made. Changes go into this branch at a slower pace and with the general " +#~ "assumption that they have first been tested in FreeBSD-CURRENT. This is " +#~ "<emphasis>still</emphasis> a development branch and, at any given time, " +#~ "the sources for FreeBSD-STABLE may or may not be suitable for general " +#~ "use. It is simply another engineering development track, not a resource " +#~ "for end-users. Users who do not have the resources to perform testing " +#~ "should instead run the most recent release of FreeBSD." +#~ msgstr "" +#~ "主要發行版便是使用 FreeBSD-STABLE 這個開發分支所產生。變更進入這個分支的速" +#~ "度比較慢,並假設這些變更已經先在 FreeBSD-CURRENT 測試過。但這 <emphasis>仍" +#~ "然</emphasis> 是一個開發分支,而且 FreeBSD-STABLE 的原始碼在任何時候都有可" +#~ "能不適合一般的使用。它只是另一個開發分支,並非專門提供給終端使用者使用。若" +#~ "沒有替代資源可供測試的使用者應該改使用最新的 FreeBSD 發行版。" + +#~ msgid "" +#~ "Those interested in tracking or contributing to the FreeBSD development " +#~ "process, especially as it relates to the next release of FreeBSD, should " +#~ "consider following FreeBSD-STABLE." +#~ msgstr "" +#~ "有興趣追蹤或對 FreeBSD 開發流程貢獻的人,尤其是對 FreeBSD 接下來的發行版相" +#~ "關內容有興趣的人,應該考慮追蹤 FreeBSD-STABLE。" + +#~ msgid "" +#~ "While the FreeBSD-STABLE branch should compile and run at all times, this " +#~ "cannot be guaranteed. Since more people run FreeBSD-STABLE than FreeBSD-" +#~ "CURRENT, it is inevitable that bugs and corner cases will sometimes be " +#~ "found in FreeBSD-STABLE that were not apparent in FreeBSD-CURRENT. For " +#~ "this reason, one should not blindly track FreeBSD-STABLE. It is " +#~ "particularly important <emphasis>not</emphasis> to update any production " +#~ "servers to FreeBSD-STABLE without thoroughly testing the code in a " +#~ "development or testing environment." +#~ msgstr "" +#~ "儘管 FreeBSD-STABLE 分支應該在任何時候均能正確編譯、執行,但是並不保証不會" +#~ "有問題。因為使用 FreeBSD-STABLE 的人比 FreeBSD-CURRENT 多,有時無可避免地" +#~ "會在 FreeBSD-STABLE 發現在 FreeBSD-CURRENT 並非顯而易見的錯誤和極端的狀" +#~ "況。也因此,我們並不建議盲目追蹤 FreeBSD-STABLE。 特別重要的是 <emphasis>" +#~ "不要</emphasis> 在尚未使用開發或測試環境對程式碼做完整的測試之前,升級任何" +#~ "上線的伺服器為 FreeBSD-STABLE。" + +#~ msgid "To track FreeBSD-STABLE:" +#~ msgstr "若要追蹤 FreeBSD-STABLE:" + +#~ msgid "" +#~ "Join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" +#~ "freebsd-stable\">freebsd-stable</link> list in order to stay informed of " +#~ "build dependencies that may appear in FreeBSD-STABLE or any other issues " +#~ "requiring special attention. Developers will also make announcements in " +#~ "this mailing list when they are contemplating some controversial fix or " +#~ "update, giving the users a chance to respond if they have any issues to " +#~ "raise concerning the proposed change." +#~ msgstr "" +#~ "加入 <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-" +#~ "stable\">freebsd-stable</link> 郵遞論壇來隨時瞭解 FreeBSD-STABLE 編譯的相" +#~ "依關係或是任何其他需特別注意的議題。開發者在評估一些有爭議的修正或更新時," +#~ "也會先在這裡發信公告,讓使用者有機會可以對提案的更改提出問題。" + +#~ msgid "" +#~ "Join the relevant <application>svn</application> list for the branch " +#~ "being tracked. For example, users tracking the 9-STABLE branch should " +#~ "join the <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/svn-" +#~ "src-stable-9\">svn-src-stable-9</link> list. This list records the commit " +#~ "log entry for each change as it is made, along with any pertinent " +#~ "information on possible side effects." +#~ msgstr "" +#~ "加入 <application>svn</application> 相關郵遞論壇來追蹤該分支的修訂。 例" +#~ "如,要追蹤 9-STABLE 分支的使用者應該加入 <link xlink:href=\"http://lists." +#~ "FreeBSD.org/mailman/listinfo/svn-src-stable-9\">svn-src-stable-9</link> 郵" +#~ "遞論壇。這個郵遞論壇會記錄每一次修改的提交項目,以及可能產生的副作用的相關" +#~ "資訊。" + +#~ msgid "" +#~ "To join these lists, go to <link xlink:href=\"http://lists.FreeBSD.org/" +#~ "mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link>, " +#~ "click on the list to subscribe to, and follow the instructions. In order " +#~ "to track changes for the whole source tree, subscribe to <link xlink:href=" +#~ "\"http://lists.FreeBSD.org/mailman/listinfo/svn-src-all\">svn-src-all</" +#~ "link>." +#~ msgstr "" +#~ "要加入這兩個郵遞論壇,請前往 <link xlink:href=\"http://lists.FreeBSD.org/" +#~ "mailman/listinfo\">http://lists.FreeBSD.org/mailman/listinfo</link> 點選要" +#~ "訂閱的郵遞論壇,並依照網頁指示的步驟操作。要追蹤整個原始碼樹,不單只有 " +#~ "FreeBSD-CURRENT 的變更,可訂閱 <link xlink:href=\"http://lists.FreeBSD." +#~ "org/mailman/listinfo/svn-src-all\">svn-src-all</link> 郵遞論壇。" + +#~ msgid "" +#~ "To install a new FreeBSD-STABLE system, install the most recent FreeBSD-" +#~ "STABLE release from the <link linkend=\"mirrors\">FreeBSD mirror sites</" +#~ "link> or use a monthly snapshot built from FreeBSD-STABLE. Refer to <link " +#~ "xlink:href=\"@@URL_RELPREFIX@@/snapshots/\">www.freebsd.org/snapshots</" +#~ "link> for more information about snapshots." +#~ msgstr "" +#~ "要安裝新的 FreeBSD-STABLE 系統, 可從 <link linkend=\"mirrors\">FreeBSD 鏡" +#~ "像站</link> 或從 FreeBSD-STABLE 每個月的快照 (Snapshot) 來安裝最新的 " +#~ "FreeBSD-STABLE 發行版。請參考 <link xlink:href=\"@@URL_RELPREFIX@@/" +#~ "snapshots/\">www.freebsd.org/snapshots</link> 來取得更多有關快照的資訊。" + +#~ msgid "" +#~ "To compile or upgrade to an existing FreeBSD system to FreeBSD-STABLE, " +#~ "use <link linkend=\"svn\">svn</link> <_:indexterm-1/> to check out the " +#~ "source for the desired branch. Branch names, such as <literal>stable/9</" +#~ "literal>, are listed at <link xlink:href=\"@@URL_RELPREFIX@@/releng/" +#~ "\">www.freebsd.org/releng</link>." +#~ msgstr "" +#~ "要編譯或升級已經安裝的 FreeBSD 系統至 FreeBSD-STABLE,可使用 <link " +#~ "linkend=\"svn\">svn</link> <_:indexterm-1/> 來取得欲安裝分支的原始碼。分支" +#~ "的名稱列在 <link xlink:href=\"@@URL_RELPREFIX@@/releng/\">www.freebsd.org/" +#~ "releng</link>,例如 <literal>stable/9</literal>。" + +#~ msgid "" +#~ "Before compiling or upgrading to FreeBSD-STABLE <_:indexterm-1/>, read " +#~ "<filename>/usr/src/Makefile</filename> carefully and follow the " +#~ "instructions in <xref linkend=\"makeworld\"/>. Read <link xlink:href=" +#~ "\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-stable\">FreeBSD-" +#~ "STABLE mailing list</link> and <filename>/usr/src/UPDATING</filename> to " +#~ "keep up-to-date on other bootstrapping procedures that sometimes become " +#~ "necessary on the road to the next release." +#~ msgstr "" +#~ "在編譯或升級到 FreeBSD-STABLE <_:indexterm-1/> 之前 , 請仔細閱讀 " +#~ "<filename>/usr/src/Makefile</filename> 並依照 <xref linkend=\"makeworld\"/" +#~ "> 的指示操作。閱讀 <link xlink:href=\"http://lists.FreeBSD.org/mailman/" +#~ "listinfo/freebsd-stable\">FreeBSD-STABLE 郵遞論壇</link> 以及 <filename>/" +#~ "usr/src/UPDATING</filename> 來了解升級的相關資訊,有時會含有升級下一個發行" +#~ "版的必要資訊。" + +#~ msgid "Synchronizing Source" +#~ msgstr "同步原始碼" + +#~ msgid "" +#~ "There are various methods for staying up-to-date with the FreeBSD " +#~ "sources. This section describes the primary service, " +#~ "<application>Subversion</application>." +#~ msgstr "" +#~ "有多許方法可以更新 FreeBSD 的原始碼,本節將說明主要的方法:" +#~ "<application>Subversion</application>。" + +#~ msgid "" +#~ "While it is possible to update only parts of the source tree, the only " +#~ "supported update procedure is to update the entire tree and recompile all " +#~ "the programs that run in user space, such as those in <filename>/bin</" +#~ "filename> and <filename>/sbin</filename>, and kernel sources. Updating " +#~ "only part of the source tree, only the kernel, or only the userland " +#~ "programs will often result in problems ranging from compile errors to " +#~ "kernel panics or data corruption." +#~ msgstr "" +#~ "雖然有可能只更新部份原始碼樹,但是正式支援的更新步驟是更新整個樹並重新編譯" +#~ "所有在使用者空間 (User space) 中的程式,例如在 <filename>/bin</filename> " +#~ "和 <filename>/sbin</filename> 中的程式及核心原始碼,只更新部份的原始碼樹 " +#~ "(例如:只更新核心或使用者空間的程式) 的做法經常會導致編譯錯誤、核心錯誤或" +#~ "資料損毀的問題。" + +#~ msgid "" +#~ "<application>Subversion</application> uses the <emphasis>pull</emphasis> " +#~ "model of updating sources. The user, or a <command>cron</command> script, " +#~ "invokes the <command>svn</command> program which updates the local " +#~ "version of the source. <application>Subversion</application> is the " +#~ "preferred method for updating local source trees as updates are up-to-the-" +#~ "minute and the user controls when updates are downloaded. It is easy to " +#~ "restrict updates to specific files or directories and the requested " +#~ "updates are generated on the fly by the server. How to synchronize source " +#~ "using <application>Subversion</application> is described in <xref linkend=" +#~ "\"svn\"/>." +#~ msgstr "" +#~ "<application>Subversion</application> 使用了<emphasis>拉式 (Pull)</" +#~ "emphasis> 的原始碼更新模式,使用者或 <command>cron</command> script 只要執" +#~ "行 <command>svn</command> 程式便可更新本地的原始碼。會選擇 " +#~ "<application>Subversion</application> 做為更新本地原始碼樹的方法是因為它更" +#~ "新速度很快且使用者可以控制要下載那些更新,它可以很容易的限制只下載特定檔案" +#~ "或目錄的更新,且伺服器可以立即產生請求的更新,如何使用 " +#~ "<application>Subversion</application> 同步原始碼在 <xref linkend=\"svn\"/" +#~ "> 有介紹。" + +#~ msgid "" +#~ "If a user inadvertently wipes out portions of the local archive, " +#~ "<application>Subversion</application> will detect and rebuild the damaged " +#~ "portions during an update." +#~ msgstr "" +#~ "若使用者無意見刪除了部份的本地封存檔,<application>Subversion</" +#~ "application> 可以在更新時偵測到並且重新建立被刪除的部份。" + +#~ msgid "Rebuilding World" +#~ msgstr "重新編譯 World" + +#~ msgid "" +#~ "Once the local source tree is synchronized against a particular version " +#~ "of FreeBSD such as FreeBSD-STABLE or FreeBSD-CURRENT, the source tree can " +#~ "be used to rebuild the system. This process is known as rebuilding world." +#~ msgstr "" +#~ "當本地的原始碼樹已與特定版本的 FreeBSD 如 FreeBSD-STABLE 或 FreeBSD-" +#~ "CURRENT 同步以後,便可使用原始碼樹來重新編譯系統。這個程序即為重新編譯 " +#~ "World。" + +#~ msgid "" +#~ "<emphasis>Before</emphasis> rebuilding world, be sure to perform the " +#~ "following tasks:" +#~ msgstr "在重新編譯 World <emphasis>之前</emphasis>,請確定已完成以下工作:" + +#~ msgid "Perform These Tasks <emphasis>Before</emphasis> Building World" +#~ msgstr "編譯 World <emphasis>之前</emphasis> 要完成的工作" + +#~ msgid "" +#~ "Backup all important data to another system or removable media, verify " +#~ "the integrity of the backup, and have a bootable installation media at " +#~ "hand. It cannot be stressed enough how important it is to make a backup " +#~ "of the system <emphasis>before</emphasis> rebuilding the system. While " +#~ "rebuilding world is an easy task, there will inevitably be times when " +#~ "mistakes in the source tree render the system unbootable. You will " +#~ "probably never have to use the backup, but it is better to be safe than " +#~ "sorry!" +#~ msgstr "" +#~ "備份所有重要的資料到另一個系統或可卸除的媒體,檢查備份的完整性並在手中保留" +#~ "一份可開機的安裝媒體。如何強調都不足夠說明在重新編譯系統 <emphasis>之前</" +#~ "emphasis> 備份系統的重要性,即便重新編譯 World 已變成簡單的一件事,也難免" +#~ "會有原始碼樹失誤導致系統無法開機的時候。您可能永遠都用不上備份,但最好確保" +#~ "安全而非後悔。" + +#~ msgid "" +#~ "Review the recent <link xlink:href=\"http://lists.FreeBSD.org/mailman/" +#~ "listinfo/freebsd-stable\">freebsd-stable</link> or <link xlink:href=" +#~ "\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-current\">freebsd-" +#~ "current</link> entries, depending upon the branch being tracked. Be aware " +#~ "of any known problems and which systems are affected. If a known issue " +#~ "affects the version of synchronized code, wait for an <quote>all clear</" +#~ "quote> announcement to be posted stating that the problem has been " +#~ "solved. Resynchronize the sources to ensure that the local version of " +#~ "source has the needed fix." +#~ msgstr "" +#~ "回顧最近 <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" +#~ "freebsd-stable\">freebsd-stable</link> 或 <link xlink:href=\"http://lists." +#~ "FreeBSD.org/mailman/listinfo/freebsd-current\">freebsd-current</link> 中的" +#~ "項目,依您所追蹤的分支決定。注意任何已知的問題以及會被影響的系統,若已知的" +#~ "問題影響您已同步的原始碼版本,請等候表明問題已被解決的 <quote>全部解決 " +#~ "(all clear)</quote> 公告發佈,然後重新同步原始碼並確認本地的原始碼版本已含" +#~ "有所需的修正。" + +#~ msgid "" +#~ "Read <filename>/usr/src/UPDATING</filename> for any extra steps necessary " +#~ "for that version of the source. This file contains important information " +#~ "about potential problems and may specify the order to run certain " +#~ "commands. Many upgrades require specific additional steps such as " +#~ "renaming or deleting specific files prior to installing the new world. " +#~ "These will be listed at the end of this file where the currently " +#~ "recommended upgrade sequence is explicitly spelled out. If " +#~ "<filename>UPDATING</filename> contradicts any steps in this chapter, the " +#~ "instructions in <filename>UPDATING</filename> take precedence and should " +#~ "be followed." +#~ msgstr "" +#~ "閱讀 <filename>/usr/src/UPDATING</filename> 了解該版本的原始碼是否有必要的" +#~ "額外步驟要完成。 這個檔案中會包含有關潛藏問題的重要資訊,並且可能會要求執" +#~ "行某些指令。大多升級需要完成指定的額外步驟,例如:在安裝新 World 前重新命" +#~ "名或刪除指定檔案,這些步驟會列在檔案最後,明確說明目前建議的升級順序。若 " +#~ "<filename>UPDATING</filename> 中有與本章相矛盾的步驟,請以 " +#~ "<filename>UPDATING</filename> 為準並應遵循其內容。" + +#~ msgid "Do Not Use <command>make world</command>" +#~ msgstr "不要使用 <command>make world</command>" + +#~ msgid "" +#~ "Some older documentation recommends using <command>make world</command>. " +#~ "However, that command skips some important steps and should only be used " +#~ "by experts. For almost all circumstances <command>make world</command> is " +#~ "the wrong thing to do, and the procedure described here should be used " +#~ "instead." +#~ msgstr "" +#~ "部份舊版的文件建議使用 <command>make world</command>,然而該指令跳過了部份" +#~ "重要的步驟,應僅供專家使用。大多數的情況使用 <command>make world</" +#~ "command> 都是錯的,並應使用此處說明的程序。" + +#~ msgid "Overview of Process" +#~ msgstr "流程概述" + +#~ msgid "" +#~ "The build world process assumes an upgrade from an older FreeBSD version " +#~ "using the source of a newer version that was obtained using the " +#~ "instructions in <xref linkend=\"synching\"/>." +#~ msgstr "" +#~ "編譯 World 流程會假設您是依照 <xref linkend=\"synching\"/> 指示取得最近版" +#~ "本的原始碼來升級舊版的 FreeBSD。" + +#~ msgid "" +#~ "In FreeBSD, the term <quote>world</quote> includes the kernel, core " +#~ "system binaries, libraries, programming files, and built-in compiler. The " +#~ "order in which these components are built and installed is important." +#~ msgstr "" +#~ "在 FreeBSD,<quote>world</quote> 一詞包含了核心,核心系統 Binary,程式庫," +#~ "原始碼以及內建的編譯器。這些元件編譯與安裝的順序非常重要。" + +#~ msgid "" +#~ "For example, the old compiler might have a bug and not be able to compile " +#~ "the new kernel. Since the new kernel should be built with the new " +#~ "compiler, the new compiler must be built, but not necessarily installed, " +#~ "before the new kernel is built." +#~ msgstr "" +#~ "舉例來說,舊的編譯器可能有問題而無法編譯新的核心。新的核心需使用新的編譯器" +#~ "來編譯,因此新的編譯器必需先編譯,但在新核心編譯前並不一定要安裝。" + +#~ msgid "" +#~ "The new world might rely on new kernel features, so the new kernel must " +#~ "be installed before the new world is installed. The old world might not " +#~ "run correctly on the new kernel, so the new world must be installed " +#~ "immediately upon installing the new kernel." +#~ msgstr "" +#~ "新的 World 可能需要使用新的核心功能,所以必須在新的 World 安裝之前先安裝新" +#~ "的核心。舊的 World 也可能在新的核心上無法正常執行,所以必須在新的核心安裝" +#~ "完之後\n" +#~ "馬上安裝新的 World。" + +#~ msgid "" +#~ "Some configuration changes must be made before the new world is " +#~ "installed, but others might break the old world. Hence, two different " +#~ "configuration upgrade steps are used. For the most part, the update " +#~ "process only replaces or adds files and existing old files are not " +#~ "deleted. Since this can cause problems, <filename>/usr/src/UPDATING</" +#~ "filename> will indicate if any files need to be manually deleted and at " +#~ "which step to do so." +#~ msgstr "" +#~ "有一部份設定必須在新的 World 安裝前變更,但其他的部份在之前變更則可能會破" +#~ "壞舊的 World。因此會使用到兩種不同的設定升級步驟。大部份情況,更新程序只會" +#~ "取代或新增檔案,不會刪除已存在的舊檔案。當這可能會造成問題時 <filename>/" +#~ "usr/src/UPDATING</filename> 便會說明需要手動刪除的檔案以及操作的步驟。" + +#~ msgid "" +#~ "These concerns have led to the recommended upgrade sequence described in " +#~ "the following procedure." +#~ msgstr "這些問題會影響接下來的建議升級順序。" + +#~ msgid "" +#~ "It is a good idea to save the output from running <command>make</command> " +#~ "to a file. If something goes wrong, a copy of the error message can be " +#~ "posted to one of the FreeBSD mailing lists." +#~ msgstr "" +#~ "將執行 <command>make</command> 的輸出儲存到檔案是不錯的辦法,若發生錯誤" +#~ "時,便可複製錯誤訊息張貼到 FreeBSD 郵遞論壇。" + +#~ msgid "" +#~ "The easiest way to do this is to use <command>script</command> with a " +#~ "parameter that specifies the name of the file to save all output to. Do " +#~ "not save the output to <filename>/tmp</filename> as this directory may be " +#~ "cleared at next reboot. A better place to save the file is <filename>/var/" +#~ "tmp</filename>. Run this command immediately before rebuilding the world, " +#~ "and then type <userinput>exit</userinput> when the process has finished:" +#~ msgstr "" +#~ "最簡單的方式是使用 <command>script</command> 並透過參數指定要儲存所有輸出" +#~ "的檔案名稱。請不要儲存輸出到 <filename>/tmp</filename>,因這個目錄可能在下" +#~ "次重新開機後被清除。儲存檔案最好的地方是 <filename>/var/tmp</filename>。在" +#~ "重新編譯 World 之前執行這個指令,並在流程完成後輸入 <userinput>exit</" +#~ "userinput>:" + +#~ msgid "Overview of Build World Process" +#~ msgstr "編譯 World 流程概述" + +#~ msgid "" +#~ "The commands used in the build world process should be run in the order " +#~ "specified here. This section summarizes the function of each command." +#~ msgstr "" +#~ "編譯 World 流程中使用的指令應依此處指定的順序執行。本節將摘要各指令的功" +#~ "能。" + +#~ msgid "" +#~ "If the build world process has previously been run on this system, a copy " +#~ "of the previous build may still exist in <filename>/usr/obj</filename>. " +#~ "To speed up the new build world process, and possibly save some " +#~ "dependency headaches, remove this directory if it already exists:" +#~ msgstr "" +#~ "若編譯 World 流程先前已在系統執行過,先前編譯的結果可能遺留在 <filename>/" +#~ "usr/obj</filename>。要加速新的編譯 World 流程及節省處理相依問題的時間,若" +#~ "此目錄存在,請移除此目錄:" + +#~ msgid "" +#~ "Compile the new compiler and a few related tools, then use the new " +#~ "compiler to compile the rest of the new world. The result is saved to " +#~ "<filename>/usr/obj</filename>." +#~ msgstr "" +#~ "編譯新的編譯器及一些相關工具,然後使用新的編譯器編譯新的 World。編譯的結果" +#~ "會儲存到 <filename>/usr/obj</filename>。" + +#~ msgid "" +#~ "Use the new compiler residing in <filename>/usr/obj</filename> to build " +#~ "the new kernel, in order to protect against compiler-kernel mismatches. " +#~ "This is necessary, as certain memory structures may have changed, and " +#~ "programs like <command>ps</command> and <command>top</command> will fail " +#~ "to work if the kernel and source code versions are not the same." +#~ msgstr "" +#~ "使用在 <filename>/usr/obj</filename> 中的新編譯器來編譯新的核心,來確保不" +#~ "會發生編譯器與核心不相容的問題。因某些記憶體結構可能有修改,這個步驟是必要" +#~ "的,若核心與原始碼的版本不同,<command>ps</command> 及 <command>top</" +#~ "command> 這類的程式會無法運作。" + +#~ msgid "" +#~ "Install the new kernel and kernel modules, making it possible to boot " +#~ "with the newly updated kernel. If <varname>kern.securelevel</varname> has " +#~ "been raised above <literal>1</literal> <emphasis>and</emphasis> " +#~ "<literal>noschg</literal> or similar flags have been set on the kernel " +#~ "binary, drop the system into single-user mode first. Otherwise, this " +#~ "command can be run from multi-user mode without problems. See " +#~ "<citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</" +#~ "manvolnum></citerefentry> for details about <varname>kern.securelevel</" +#~ "varname> and <citerefentry><refentrytitle>chflags</" +#~ "refentrytitle><manvolnum>1</manvolnum></citerefentry> for details about " +#~ "the various file flags." +#~ msgstr "" +#~ "安裝新的核心與新的核心模組,讓開機時可以使用新的核心。這個指令可在多使用者" +#~ "模式執行,除非 <varname>kern.securelevel</varname> 設定在 <literal>1</" +#~ "literal> 以上 <emphasis>且</emphasis> 在核心 Binary 有設定 " +#~ "<literal>noschg</literal> 或類似的旗標 (Flag),請先讓系統進入單使用者模" +#~ "式。請參考 <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</" +#~ "manvolnum></citerefentry> 取得有關 <varname>kern.securelevel</varname> 的" +#~ "詳細資訊以及 <citerefentry><refentrytitle>chflags</" +#~ "refentrytitle><manvolnum>1</manvolnum></citerefentry> 取得有關各種檔案旗標" +#~ "的詳細資訊。" + +#~ msgid "" +#~ "Drop the system into single-user mode in order to minimize problems from " +#~ "updating any binaries that are already running. It also minimizes any " +#~ "problems from running the old world on a new kernel." +#~ msgstr "" +#~ "讓系統進入單使用者模組來減少升級任何已在執行中的 Binary 所產生的問題,同樣" +#~ "也可減少在新核心上執行舊 World 的問題。" + +#~ msgid "" +#~ "Once in single-user mode, run these commands if the system is formatted " +#~ "with UFS:" +#~ msgstr "進入單使用者模式後,若系統磁碟格式為 UFS 請執行以下指令:" + +#~ msgid "" +#~ "If the system is instead formatted with ZFS, run these two commands. This " +#~ "example assumes a zpool name of <literal>zroot</literal>:" +#~ msgstr "" +#~ "若系統磁碟格式為 ZFS,則需執行以下兩個指令。此範例假設 zpool 名稱為 " +#~ "<literal>zroot</literal>:" + +#~ msgid "" +#~ "Optional: If a keyboard mapping other than the default US English is " +#~ "desired, it can be changed with <citerefentry><refentrytitle>kbdmap</" +#~ "refentrytitle><manvolnum>1</manvolnum></citerefentry>:" +#~ msgstr "" +#~ "選用:若想要使用 US 英文以外的鍵盤對應表,可以使用 " +#~ "<citerefentry><refentrytitle>kbdmap</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> 來變更:" + +#~ msgid "" +#~ "Then, for either file system, if the <acronym>CMOS</acronym> clock is set " +#~ "to local time (this is true if the output of " +#~ "<citerefentry><refentrytitle>date</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> does not show the correct time and zone), run:" +#~ msgstr "" +#~ "接著,不論那一種檔案系統,若 <acronym>CMOS</acronym> 時鐘設定為本地時間 " +#~ "(若 <citerefentry><refentrytitle>date</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> 顯示不正確的時間與時區),請執行:" + +#~ msgid "" +#~ "Remaking the world will not update certain directories, such as " +#~ "<filename>/etc</filename>, <filename>/var</filename> and <filename>/usr</" +#~ "filename>, with new or changed configuration files. The next step is to " +#~ "perform some initial configuration file updates to <filename>/etc</" +#~ "filename> in preparation for the new world. The following command " +#~ "compares only those files that are essential for the success of <_:" +#~ "buildtarget-1/>. For instance, this step may add new groups, system " +#~ "accounts, or startup scripts which have been added to FreeBSD since the " +#~ "last update. This is necessary so that the <_:buildtarget-2/> step will " +#~ "be able to use any new system accounts, groups, and scripts. Refer to " +#~ "<xref linkend=\"mergemaster\"/> for more detailed instructions about this " +#~ "command:" +#~ msgstr "" +#~ "重新編譯 World 不會直接更新某些目錄中的設定檔,如 <filename>/etc</" +#~ "filename>, <filename>/var</filename> 以及 <filename>/usr</filename>。接下" +#~ "來的步驟是更新一部份的設定檔到 <filename>/etc</filename> 來準備安裝新的 " +#~ "World。以下指令只會比對影響 <_:buildtarget-1/> 是否成功執行的必要檔案。例" +#~ "如,這個步驟會可能會加入新版 FreeBSD 的新群組、系統帳號或啟動 Script。為了" +#~ "讓 <_:buildtarget-2/> 步驟可以使用任何新的系統帳號、群組與 Script,這是個" +#~ "必要的步驟。請參考 <xref linkend=\"mergemaster\"/> 來取得更多有關此指令的" +#~ "詳細操作說明:" + +#~ msgid "Update any remaining configuration files." +#~ msgstr "更新任何剩下的設定檔。" + +#~ msgid "" +#~ "Delete any obsolete files. This is important as they may cause problems " +#~ "if left on the disk." +#~ msgstr "" +#~ "刪除任何廢棄的檔案。這很重要,因為若檔案遺留在磁碟上可能會造成問題。" + +#~ msgid "" +#~ "A full reboot is now needed to load the new kernel and new world with the " +#~ "new configuration files." +#~ msgstr "現在需要完整重新啟動來載入新的核心、新的 World 與新的設定檔。" + +#~ msgid "" +#~ "Make sure that all installed ports have first been rebuilt before old " +#~ "libraries are removed using the instructions in <xref linkend=\"ports-" +#~ "upgrading\"/>. When finished, remove any obsolete libraries to avoid " +#~ "conflicts with newer ones. For a more detailed description of this step, " +#~ "refer to <xref linkend=\"make-delete-old\"/>." +#~ msgstr "" +#~ "確認所有已安裝的 Port 在舊的程式庫移除前已依照 <xref linkend=\"ports-" +#~ "upgrading\"/> 的說明重新編譯。當重新編譯完成後,移除廢棄的程式庫來避免與新" +#~ "的程式庫發生衝突。有關此步驟更詳細的說明請參考 <xref linkend=\"make-" +#~ "delete-old\"/>。" + +#~ msgid "" +#~ "If the system can have a window of down-time, consider compiling the " +#~ "system in single-user mode instead of compiling the system in multi-user " +#~ "mode, and then dropping into single-user mode for the installation. " +#~ "Reinstalling the system touches a lot of important system files, all the " +#~ "standard system binaries, libraries, and include files. Changing these on " +#~ "a running system, particularly one with active users, is asking for " +#~ "trouble." +#~ msgstr "" +#~ "若系統允許停機一小段時間,請考慮以單使用者模式編譯系統來替代在多使用者模組" +#~ "編譯系統,然後進入單使用者模式來完成安裝。重新安裝系統會觸及到很多重要的系" +#~ "統檔案,所有的標準系統 Binary、程式庫以及引用檔。在執行中的系統更換這些檔" +#~ "案,特別是有使用者在使用時,是自找麻煩。" + +#~ msgid "This build world process uses several configuration files." +#~ msgstr "建置 Word 的程序會使用到許多個設定檔。" + +#~ msgid "" +#~ "The <filename>Makefile</filename> located in <filename>/usr/src</" +#~ "filename> describes how the programs that comprise FreeBSD should be " +#~ "built and the order in which they should be built." +#~ msgstr "" +#~ "位於 <filename>/usr/src</filename> 的 <filename>Makefile</filename> 用來描" +#~ "述要如何編譯組成 FreeBSD 的程式以及編譯的順序。" + +#~ msgid "" +#~ "The options available to <command>make</command> are described in " +#~ "<citerefentry><refentrytitle>make.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry> and some common examples are included in " +#~ "<filename>/usr/share/examples/etc/make.conf</filename>. Any options which " +#~ "are added to <filename>/etc/make.conf</filename> will control the how " +#~ "<command>make</command> runs and builds programs. These options take " +#~ "effect every time <command>make</command> is used, including compiling " +#~ "applications from the Ports Collection, compiling custom C programs, or " +#~ "building the FreeBSD operating system. Changes to some settings can have " +#~ "far-reaching and potentially surprising effects. Read the comments in " +#~ "both locations and keep in mind that the defaults have been chosen for a " +#~ "combination of performance and safety." +#~ msgstr "" +#~ "<command>make</command> 可用的選項在 <citerefentry><refentrytitle>make." +#~ "conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 中有介紹, 在 " +#~ "<filename>/usr/share/examples/etc/make.conf</filename> 也有一些常見的範" +#~ "例。所有加到 <filename>/etc/make.conf</filename> 的選項會控制 " +#~ "<command>make</command> 要如何執行與編譯程式。這些選項對每一次使用 " +#~ "<command>make</command> 都會有影響,包含編譯在 Port 套件集中的應用程式、編" +#~ "譯自訂的 C 程式或編譯 FreeBSD 作業系統,更動某些設定可能會產生深遠與意想不" +#~ "到的影響,在更改前要仔細閱讀在這些地方的註解,然後也要了預設值是在效率與安" +#~ "全之間取得的平衝點。" + +#~ msgid "" +#~ "How the operating system is built from source code is controlled by " +#~ "<filename>/etc/src.conf</filename>. Unlike <filename>/etc/make.conf</" +#~ "filename>, the contents of <filename>/etc/src.conf</filename> only take " +#~ "effect when the FreeBSD operating system itself is being built. " +#~ "Descriptions of the many options available for this file are shown in " +#~ "<citerefentry><refentrytitle>src.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry>. Be cautious about disabling seemingly unneeded " +#~ "kernel modules and build options. Sometimes there are unexpected or " +#~ "subtle interactions." +#~ msgstr "" +#~ "要如何由原始碼編譯成作業系統是由 <filename>/etc/src.conf</filename> 控制," +#~ "不像 <filename>/etc/make.conf</filename>,<filename>/etc/src.conf</" +#~ "filename> 的內容只會對 FreeBSD 作業系統編譯產生效果。有關這個檔案可用的選" +#~ "項在 <citerefentry><refentrytitle>src.conf</refentrytitle><manvolnum>5</" +#~ "manvolnum></citerefentry> 有說明。要注意,停用看似不須要的核心模組與選項," +#~ "有時會有意想不到或微妙的結果。" + +#~ msgid "Variables and Targets" +#~ msgstr "變數與目標" + +#~ msgid "The general format for using <command>make</command> is as follows:" +#~ msgstr "使用 <command>make</command> 的一般格式如下:" + +#~ msgid "" +#~ "In this example, <option>-<replaceable>x</replaceable></option> is an " +#~ "option passed to <command>make</command>. Refer to " +#~ "<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> for examples of the available options." +#~ msgstr "" +#~ "在這個例子中,<option>-<replaceable>x</replaceable></option> 是傳送給 " +#~ "<command>make</command> 的一個選項,可參考 " +#~ "<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> 來取得可用選項的範例。" + +#~ msgid "" +#~ "To pass a variable, specify the variable name with <option>-" +#~ "D<replaceable>VARIABLE</replaceable></option>. The behavior of the " +#~ "<filename>Makefile</filename> is controlled by variables. These can " +#~ "either be set in <filename>/etc/make.conf</filename> or they can be " +#~ "specified when using <command>make</command>. For example, this variable " +#~ "specifies that profiled libraries should not be built:" +#~ msgstr "" +#~ "要傳送一個變數 (Variable),可使用 <option>-D<replaceable>VARIABLE</" +#~ "replaceable></option> 來指定變數名稱,<filename>Makefile</filename> 的行為" +#~ "便是由這些變數來控制。這些變數可設定在 <filename>/etc/make.conf</" +#~ "filename> 或在使用 <command>make</command> 時指定,舉例來說,以下變數可以" +#~ "控制不要編譯 profile 的程式庫 :" + +#~ msgid "" +#~ "It corresponds with this setting in <filename>/etc/make.conf</filename>:" +#~ msgstr "在 <filename>/etc/make.conf</filename> 要做一樣的設定可:" + +#~ msgid "" +#~ "The <replaceable>target</replaceable> tells <command>make</command> what " +#~ "to do and the <filename>Makefile</filename> defines the available " +#~ "targets. Some targets are used by the build process to break out the " +#~ "steps necessary to rebuild the system into a number of sub-steps." +#~ msgstr "" +#~ "<replaceable>target</replaceable> 會告訴 <command>make</command> 要做什" +#~ "麼,而在 <filename>Makefile</filename> 中會定義可用的目標 (Target), 有些" +#~ "目標是給建置程序使用的,這些步驟是由一個重新編譯系統的必要步驟細分而成的。" + +#~ msgid "" +#~ "Having separate options is useful for two reasons. First, it allows for a " +#~ "build that does not affect any components of a running system. Because of " +#~ "this, <_:buildtarget-1/> can be safely run on a machine running in multi-" +#~ "user mode. It is still recommended that <_:buildtarget-2/> be run in part " +#~ "in single-user mode, though." +#~ msgstr "" +#~ "把選項分成數個主要為了兩個原因,第一,它可單獨編譯不影響系統執行中的元件," +#~ "也因為如此,<_:buildtarget-1/> 可以安全的在多使用者模式時執行,雖然如此," +#~ "但還是建議 <_:buildtarget-2/> 要在單使用者模式執行。" + +#~ msgid "" +#~ "Secondly, it allows <acronym>NFS</acronym> mounts to be used to upgrade " +#~ "multiple machines on a network, as described in <xref linkend=\"small-lan" +#~ "\"/>." +#~ msgstr "" +#~ "第二,它讓 <acronym>NFS</acronym> 掛載可以使用,以便同時升級網路上多台主" +#~ "機,如 <xref linkend=\"small-lan\"/> 所介紹的。" + +#~ msgid "" +#~ "It is possible to specify <option>-j</option> which will cause " +#~ "<command>make</command> to spawn several simultaneous processes. Since " +#~ "much of the compiling process is <acronym>I/O</acronym>-bound rather than " +#~ "<acronym>CPU</acronym>-bound, this is useful on both single <acronym>CPU</" +#~ "acronym> and multi-<acronym>CPU</acronym> machines." +#~ msgstr "" +#~ "編譯時也可以指定 <option>-j</option> 來讓 <command>make</command> 產生數個" +#~ "平行的程序來編譯。由於大多數的編譯程序會受到 <acronym>I/O</acronym> 綁定而" +#~ "非 <acronym>CPU</acronym> 綁定,這個選項在單 <acronym>CPU</acronym> 與多 " +#~ "<acronym>CPU</acronym> 的主機都很有用。" + +#~ msgid "" +#~ "On a single-<acronym>CPU</acronym> machine, run the following command to " +#~ "have up to 4 processes running at any one time. Empirical evidence posted " +#~ "to the mailing lists shows this generally gives the best performance " +#~ "benefit." +#~ msgstr "" +#~ "在單 <acronym>CPU</acronym> 主機,執行以下指令讓一次最多可有 4 個程序同時" +#~ "執行,根據回報到郵遞論壇 (Mailing list) 的經驗顯示,這個設定值在大多數情況" +#~ "可以有最佳的效能。" + +#~ msgid "" +#~ "On a multi-<acronym>CPU</acronym> machine, try values between <literal>6</" +#~ "literal> and <literal>10</literal> to see how they speed things up." +#~ msgstr "" +#~ "在多 <acronym>CPU</acronym> 主機,可嘗試使用 <literal>6</literal> 至 " +#~ "<literal>10</literal> 並觀察加速的情形。" + +#~ msgid "" +#~ "If any variables were specified to <command>make buildworld</command>, " +#~ "specify the same variables to <command>make installworld</command>. " +#~ "However, <option>-j</option> must <emphasis>never</emphasis> be used with " +#~ "<_:buildtarget-1/>." +#~ msgstr "" +#~ "任何傳給 <command>make buildworld</command> 的變數,也同樣要傳給 " +#~ "<command>make installworld</command>。只有 <option>-j</option> <emphasis>" +#~ "永遠</emphasis>不該用在 <_:buildtarget-1/>。" + +#~ msgid "For example, if this command was used:" +#~ msgstr "例如,若使用了以下指令:" + +#~ msgid "Install the results with:" +#~ msgstr "在安裝時便要使用:" + +#~ msgid "" +#~ "Otherwise, the second command will try to install profiled libraries that " +#~ "were not built during the <command>make buildworld</command> phase." +#~ msgstr "" +#~ "否則,第二個指令會嘗試安裝在 <command>make buildworld</command> 階段沒有編" +#~ "譯的 profile 的程式庫。" + +#~ msgid "Merging Configuration Files" +#~ msgstr "合併設定檔" + +#~ msgid "" +#~ "FreeBSD provides the <citerefentry><refentrytitle>mergemaster</" +#~ "refentrytitle><manvolnum>8</manvolnum></citerefentry> Bourne script to " +#~ "aid in determining the differences between the configuration files in " +#~ "<filename>/etc</filename>, and the configuration files in <filename>/usr/" +#~ "src/etc</filename>. This is the recommended solution for keeping the " +#~ "system configuration files up to date with those located in the source " +#~ "tree." +#~ msgstr "" +#~ "FreeBSD 提供了 <citerefentry><refentrytitle>mergemaster</" +#~ "refentrytitle><manvolnum>8</manvolnum></citerefentry> Bourne script 來協助" +#~ "比對在 <filename>/etc</filename> 的設定檔與在 <filename>/usr/src/etc</" +#~ "filename> 的設定檔間的差異,這是要維持系統設定檔與原始碼樹中最新的設定檔相" +#~ "同版本的建議方式。" + +#~ msgid "" +#~ "Before using <command>mergemaster</command>, it is recommended to first " +#~ "copy the existing <filename>/etc</filename> somewhere safe. Include " +#~ "<option>-R</option> which does a recursive copy and <option>-p</option> " +#~ "which preserves times and the ownerships on files:" +#~ msgstr "" +#~ "在使用 <command>mergemaster</command> 之前,建議先將現有的 <filename>/" +#~ "etc</filename> 備份到某一處安全的地方,加上 <option>-R</option> 來做遞迴複" +#~ "製以及 <option>-p</option> 來保留檔案的時間與擁有者資訊:" + +#~ msgid "" +#~ "When run, <command>mergemaster</command> builds a temporary root " +#~ "environment, from <filename>/</filename> down, and populates it with " +#~ "various system configuration files. Those files are then compared to the " +#~ "ones currently installed in the system. Files that differ will be shown " +#~ "in <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> format, with the <option>+</option> sign " +#~ "representing added or modified lines, and <option>-</option> representing " +#~ "lines that will be either removed completely or replaced with a new file. " +#~ "Refer to <citerefentry><refentrytitle>diff</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> for more information about how file differences " +#~ "are shown." +#~ msgstr "" +#~ "執行時,<command>mergemaster</command> 會在 <filename>/</filename> 下建立" +#~ "暫存的 root 環境,然後放入各種系統設定檔,這些檔案接著會被拿來與目前安裝在" +#~ "系統的設定檔做比對,有差異的檔案會以 <citerefentry><refentrytitle>diff</" +#~ "refentrytitle><manvolnum>1</manvolnum></citerefentry> 的格式顯示, " +#~ "<option>+</option> 號代表增加或修改過的行,而 <option>-</option> 號代表在" +#~ "新檔案已完全移除或被取代的行。請參考 <citerefentry><refentrytitle>diff</" +#~ "refentrytitle><manvolnum>1</manvolnum></citerefentry> 來取得更多有關檔案差" +#~ "異會如何顯示的資訊。" + +#~ msgid "" +#~ "Next, <command>mergemaster</command> will display each file that differs, " +#~ "and present options to: delete the new file, referred to as the temporary " +#~ "file, install the temporary file in its unmodified state, merge the " +#~ "temporary file with the currently installed file, or view the results " +#~ "again." +#~ msgstr "" +#~ "接著,<command>mergemaster</command> 會顯示每個有差異的檔案,然後提供操作" +#~ "選項:刪除新的暫存設定檔、不修改安裝暫存設定檔、將暫存設定檔與目前安裝的設" +#~ "定檔合併或再檢視結果一次。" + +#~ msgid "" +#~ "Choosing to delete the temporary file will tell <command>mergemaster</" +#~ "command> to keep the current file unchanged and to delete the new " +#~ "version. This option is not recommended. To get help at any time, type " +#~ "<keycap>?</keycap> at the <command>mergemaster</command> prompt. If the " +#~ "user chooses to skip a file, it will be presented again after all other " +#~ "files have been dealt with." +#~ msgstr "" +#~ "選擇刪除暫存設定檔案會告訴 <command>mergemaster</command> 保留目前的設定檔" +#~ "不變然後刪除新版本的設定檔,但這是較不建議使用的選項。在要尋求協助可隨時" +#~ "在 <command>mergemaster</command> 提示後輸入 <keycap>?</keycap>。若使用者" +#~ "選擇跳過該設定檔,該檔案則會在所有其他檔案處理過之後再顯示一次。" + +#~ msgid "" +#~ "Choosing to install the unmodified temporary file will replace the " +#~ "current file with the new one. For most unmodified files, this is the " +#~ "best option." +#~ msgstr "" +#~ "選擇安裝未修改過的暫存設定檔會使用較新的設定檔來取代目前的設定檔,對於大多" +#~ "數未修改過的設定檔來說,這是最佳的選項。" + +#~ msgid "" +#~ "Choosing to merge the file will present a text editor with the contents " +#~ "of both files open. The files can be merged by reviewing both files side " +#~ "by side on the screen and choosing parts from both to create a finished " +#~ "product. When the files are compared side by side, <keycap>l</keycap> " +#~ "selects the left contents and <keycap>r</keycap> selects contents from " +#~ "the right. The final output will be a file consisting of both parts, " +#~ "which can then be installed. This option is customarily used for files " +#~ "where settings have been modified by the user." +#~ msgstr "" +#~ "選擇合併檔案會進入文字編輯器並同時顯示兩個檔案的內容,可在畫面上並排查看這" +#~ "兩個檔案,並從兩者之中選擇一邊來產生最終要的部份來合併這兩個設定檔。在檔案" +#~ "並排比較時,使用 <keycap>l</keycap> 可選擇左邊的內容,<keycap>r</keycap> " +#~ "可選擇右邊的內容,最終的結果會是一個由兩邊選擇部份所組成的檔案,然後才可以" +#~ "安裝。這個選項習慣上是針對那些有被使用者修改過設定的檔案使用。" + +#~ msgid "" +#~ "Choosing to view the results again will redisplay the file differences." +#~ msgstr "選擇再查看結果一次則會再顯示一次檔案間的差異。" + +#~ msgid "" +#~ "After <command>mergemaster</command> is done with the system files, it " +#~ "will prompt for other options. It may prompt to rebuild the password file " +#~ "and will finish up with an option to remove left-over temporary files." +#~ msgstr "" +#~ "<command>mergemaster</command> 完成系統設定檔的處理之後,會提示其他選項," +#~ "有可能會提示重建密碼檔,然後最終會出現移除剩下的暫存檔。" + +#~ msgid "" +#~ "As a part of the FreeBSD development lifecycle, files and their contents " +#~ "occasionally become obsolete. This may be because functionality is " +#~ "implemented elsewhere, the version number of the library has changed, or " +#~ "it was removed from the system entirely. These obsoleted files, " +#~ "libraries, and directories should be removed when updating the system. " +#~ "This ensures that the system is not cluttered with old files which take " +#~ "up unnecessary space on the storage and backup media. Additionally, if " +#~ "the old library has a security or stability issue, the system should be " +#~ "updated to the newer library to keep it safe and to prevent crashes " +#~ "caused by the old library. Files, directories, and libraries which are " +#~ "considered obsolete are listed in <filename>/usr/src/ObsoleteFiles.inc</" +#~ "filename>. The following instructions should be used to remove obsolete " +#~ "files during the system upgrade process." +#~ msgstr "" +#~ "隨著 FreeBSD 開發生命週期結束,檔案與其內容最終會被廢棄,這可是因為該功能" +#~ "已改在其他地方實作、程式庫的版本編號改變、或者完全從系統中移除。這些廢棄的" +#~ "檔案、程式庫與目錄應在升級系統時被移除,這可確保系統不會到處散布著舊檔案," +#~ "在儲存與備份媒體中佔據不必要的空間。除此之外,若舊的程式庫有安全性或穩定性" +#~ "的問題,則系統應更新到較新的程式庫來確保系統安全與避免因舊程式庫造成的當" +#~ "機。被列為廢棄的檔案、目錄與程式庫會列於 <filename>/usr/src/ObsoleteFiles." +#~ "inc</filename>。在進行系統升級程序時應依照以下指示移除廢棄的檔案。" + +#~ msgid "" +#~ "After the <command>make installworld</command> and the subsequent " +#~ "<command>mergemaster</command> have finished successfully, check for " +#~ "obsolete files and libraries:" +#~ msgstr "" +#~ "在 <command>make installworld</command> 與接下來的 <command>mergemaster</" +#~ "command> 成功完成之後,需檢查是否有廢棄的檔案與程式庫:" + +#~ msgid "" +#~ "If any obsolete files are found, they can be deleted using the following " +#~ "command:" +#~ msgstr "若有找到任何廢棄的檔案,可使用以下指令刪除這些檔案:" + +#~ msgid "" +#~ "A prompt is displayed before deleting each obsolete file. To skip the " +#~ "prompt and let the system remove these files automatically, use " +#~ "<varname>BATCH_DELETE_OLD_FILES</varname>:" +#~ msgstr "" +#~ "在刪除每一個廢棄檔案之前會顯示提示確認,若要跳過這些提示讓系統自動移除這些" +#~ "檔案,可使用 <varname>BATCH_DELETE_OLD_FILES</varname>:" + +#~ msgid "" +#~ "The same goal can be achieved by piping these commands through " +#~ "<command>yes</command>:" +#~ msgstr "" +#~ "也可使用管線 (Pipe) 符號傳遞 <command>yes</command> 給這些指令來達到同樣的" +#~ "效果:" + +#~ msgid "Warning" +#~ msgstr "警告" + +#~ msgid "" +#~ "Deleting obsolete files will break applications that still depend on " +#~ "those obsolete files. This is especially true for old libraries. In most " +#~ "cases, the programs, ports, or libraries that used the old library need " +#~ "to be recompiled before <command>make delete-old-libs</command> is " +#~ "executed." +#~ msgstr "" +#~ "刪除廢棄檔案會弄壞那些相依這些廢棄檔案的應用程式,尤其是刪除廢棄的程式庫。" +#~ "在大多數情況,使用舊程式庫的程式、Port、程式庫需要在執行 <command>make " +#~ "delete-old-libs</command> 之前重新編譯。" + +#~ msgid "" +#~ "Utilities for checking shared library dependencies include " +#~ "<package>sysutils/libchk</package> and <package>sysutils/bsdadminscripts</" +#~ "package>." +#~ msgstr "" +#~ "可檢查共用程式庫相依的工具有 <package>sysutils/libchk</package> 與 " +#~ "<package>sysutils/bsdadminscripts</package>。" + +#~ msgid "" +#~ "Obsolete shared libraries can conflict with newer libraries, causing " +#~ "messages like these:" +#~ msgstr "廢棄的共用程式庫可能會與較新的程式庫衝突,會出現訊息如下:" + +#~ msgid "To solve these problems, determine which port installed the library:" +#~ msgstr "要解決這些問題須找出那個 Port 會安裝該程式庫:" + +#~ msgid "" +#~ "Then deinstall, rebuild, and reinstall the port. To automate this " +#~ "process, <package>ports-mgmt/portmaster</package> can be used. After all " +#~ "ports are rebuilt and no longer use the old libraries, delete the old " +#~ "libraries using the following command:" +#~ msgstr "" +#~ "然後解除安裝、重新編譯然後重新安裝 Port,要將這個程序自動化可使用 " +#~ "<package>ports-mgmt/portmaster</package>。在所有 Port 重新編譯且舊程式庫不" +#~ "再使用之後,使用以下指令刪除舊程式庫:" + +#~ msgid "" +#~ "If something goes wrong, it is easy to rebuild a particular piece of the " +#~ "system. For example, if <filename>/etc/magic</filename> was accidentally " +#~ "deleted as part of the upgrade or merge of <filename>/etc</filename>, " +#~ "<command>file</command> will stop working. To fix this, run:" +#~ msgstr "" +#~ "若有東西發生錯誤,要重新編譯系統的特定部份也很簡單。例如,若 <filename>/" +#~ "etc/magic</filename> 在升級或合併 <filename>/etc</filename> 時被意外刪除," +#~ "<command>file</command> 便會無法運作,要修正這個問題可執行:" + +#~ msgid "Common Questions" +#~ msgstr "常見問題" + +#~ msgid "Do I need to re-make the world for every change?" +#~ msgstr "每個變更是否都需要重新編譯 World?" + +#~ msgid "" +#~ "It depends upon the nature of the change. For example, if " +#~ "<application>svn</application> only shows the following files as being " +#~ "updated:" +#~ msgstr "" +#~ "這需視變更的內容而定,例如,若 <application>svn</application> 只有顯示以下" +#~ "檔案有被更新過:" + +#~ msgid "" +#~ "it probably is not worth rebuilding the entire world. Instead, go into " +#~ "the appropriate sub-directories and run <command>make all install</" +#~ "command>. But if something major changes, such as <filename>src/lib/libc/" +#~ "stdlib</filename>, consider rebuilding world." +#~ msgstr "" +#~ "那可能就不須要重新編譯整個 World,可改直接進入對應的子目錄然後執行 " +#~ "<command>make all install</command>。但若有一些主要 (Major) 的變更,例如 " +#~ "<filename>src/lib/libc/stdlib</filename>,那麼請考慮重新編譯 World。" + +#~ msgid "" +#~ "Some users rebuild world every fortnight and let changes accumulate over " +#~ "that fortnight. Others only re-make those things that have changed and " +#~ "are careful to spot all the dependencies. It all depends on how often a " +#~ "user wants to upgrade and whether they are tracking FreeBSD-STABLE or " +#~ "FreeBSD-CURRENT." +#~ msgstr "" +#~ "有些使用者每兩週會重新編譯一次 World 然後讓變更再累積兩週,也有些使用者只" +#~ "重新編譯那些有變更過的內容並非常小心的檢查所有相依,要怎麼做完全是依使用者" +#~ "相要多久升級一次系統以及他們是追蹤 FreeBSD-STABLE 或是 FreeBSD-CURRENT 分" +#~ "支而定。" + +#~ msgid "" +#~ "What would cause a compile to fail with lots of signal 11<_:indexterm-1/> " +#~ "(or other signal number) errors?" +#~ msgstr "" +#~ "什麼會造成有很多 signal 11<_:indexterm-1/> (或其他信號) 錯誤的編譯失敗?" + +#~ msgid "" +#~ "This normally indicates a hardware problem. Building world is an " +#~ "effective way to stress test hardware, especially memory. A sure " +#~ "indicator of a hardware issue is when <application>make</application> is " +#~ "restarted and it dies at a different point in the process." +#~ msgstr "" +#~ "這通常代表發生硬體問題,編譯 World 是對硬體做壓力測試很有效的方式,特別是" +#~ "對記憶體。對於硬體問題較明確的指標是每一次重新 <application>make</" +#~ "application> 會在程序的不同地方停止。" + +#~ msgid "" +#~ "To resolve this error, swap out the components in the machine, starting " +#~ "with RAM, to determine which component is failing." +#~ msgstr "" +#~ "要解決這種問題,需要更換主機的元件,先從 RAM 開始,然後找出那個元件故障。" + +#~ msgid "Can <filename>/usr/obj</filename> be removed when finished?" +#~ msgstr "完成編譯後是可否移除 <filename>/usr/obj</filename>?" + +#~ msgid "" +#~ "This directory contains all the object files that were produced during " +#~ "the compilation phase. Normally, one of the first steps in the " +#~ "<command>make buildworld</command> process is to remove this directory " +#~ "and start afresh. Keeping <filename>/usr/obj</filename> around when " +#~ "finished makes little sense, and its removal frees up a approximately 2GB " +#~ "of disk space." +#~ msgstr "" +#~ "這個目錄包含了所有在編譯階段所產生的目標檔 (Object file)。正常在 " +#~ "<command>make buildworld</command> 程序的其中一個初始步驟便是移除所有在這" +#~ "個目錄的檔案然後重頭開始,因此在編譯完成之後保留 <filename>/usr/obj</" +#~ "filename> 沒有太大意義,把它移除之後可以釋放大約 2GB 的磁碟空間。" + +#~ msgid "Can interrupted builds be resumed?" +#~ msgstr "是否能繼續中斷的編譯?" + +#~ msgid "" +#~ "This depends on how far into the process the problem occurs. In general, " +#~ "<command>make buildworld</command> builds new copies of essential tools " +#~ "and the system libraries. These tools and libraries are then installed, " +#~ "used to rebuild themselves, and are installed again. The rest of the " +#~ "system is then rebuilt with the new system tools." +#~ msgstr "" +#~ "這要看程序執行到什麼程度才發生問題,一般來說,<command>make buildworld</" +#~ "command> 會編譯新版的重要工具及系統程式庫,接著會安裝這些工具及程式庫,再" +#~ "用來重新編譯它們自己,然後再安裝一次,接著才會使用這些新系統工具重新編譯系" +#~ "統剩下未完成的部份。" + +#~ msgid "" +#~ "During the last stage, it is fairly safe to run these commands as they " +#~ "will not undo the work of the previous <command>make buildworld</command>:" +#~ msgstr "" +#~ "在最後一個階段執行這個指令是相同安全的,這些指令不會重做先前 " +#~ "<command>make buildworld</command> 所做的工作:" + +#~ msgid "If this message appears:" +#~ msgstr "若出現這個訊息:" + +#~ msgid "" +#~ "in the <command>make buildworld</command> output, it is probably fairly " +#~ "safe to do so." +#~ msgstr "" +#~ "在 <command>make buildworld</command> 的輸出結果,要執行上述指令是相當安全" +#~ "的。" + +#~ msgid "" +#~ "If that message is not displayed, it is always better to be safe than " +#~ "sorry and to restart the build from scratch." +#~ msgstr "若沒有顯示上述訊息,保險起見最好重頭開始編譯的動作。" + +#~ msgid "Is it possible to speed up making the world?" +#~ msgstr "有可能加速編譯 World 的速度嗎?" + +#~ msgid "" +#~ "Several actions can speed up the build world process. For example, the " +#~ "entire process can be run from single-user mode. However, this will " +#~ "prevent users from having access to the system until the process is " +#~ "complete." +#~ msgstr "" +#~ "有很多方法可以加速整個編譯 World 的程序,舉例來說,整個程序可以在單使用者" +#~ "模式執行,這可以避免一般使用者在程序完成前存取系統。" + +#~ msgid "" +#~ "Careful file system design or the use of ZFS datasets can make a " +#~ "difference. Consider putting <filename>/usr/src</filename> and <filename>/" +#~ "usr/obj</filename> on separate file systems. If possible, place the file " +#~ "systems on separate disks on separate disk controllers. When mounting " +#~ "<filename>/usr/src</filename>, use <option>noatime</option> which " +#~ "prevents the file system from recording the file access time. If " +#~ "<filename>/usr/src</filename> is not on its own file system, consider " +#~ "remounting <filename>/usr</filename> with <option>noatime</option>." +#~ msgstr "" +#~ "注意檔案系統的規劃或者採用 ZFS 資料集可能會有明顯的差異,可以考慮將 " +#~ "<filename>/usr/src</filename> 與 <filename>/usr/obj</filename> 放在不同的" +#~ "檔案系統,若可能的話,將檔案系統放在不同磁碟控制器的磁碟。在掛載 " +#~ "<filename>/usr/src</filename> 時,使用 <option>noatime</option> 可以避免檔" +#~ "案系統記錄檔案存取時間,若 <filename>/usr/src</filename> 放在不是自己所擁" +#~ "有的檔案系統,則可考慮使用 <option>noatime</option> 重新掛載 <filename>/" +#~ "usr</filename>。" + +#~ msgid "" +#~ "The file system holding <filename>/usr/obj</filename> can be mounted or " +#~ "remounted with <option>async</option> so that disk writes happen " +#~ "asynchronously. The write completes immediately, and the data is written " +#~ "to the disk a few seconds later. This allows writes to be clustered " +#~ "together, and can provide a dramatic performance boost." +#~ msgstr "" +#~ "儲存 <filename>/usr/obj</filename> 的檔案系統可使用 <option>async</" +#~ "option> 掛載或重新掛載磁碟,讓磁碟做非同步的寫入,這樣寫入可立即完成,並且" +#~ "在幾秒之後再一起寫入到磁碟,這會讓寫入動作可以集中處理,可加快不少效能。" + +#~ msgid "" +#~ "Keep in mind that this option makes the file system more fragile. With " +#~ "this option, there is an increased chance that, should power fail, the " +#~ "file system will be in an unrecoverable state when the machine restarts." +#~ msgstr "" +#~ "注意,這個選項會讓檔案系統更脆弱,使用了這個選項會提高電源中斷、重新開機" +#~ "時,造成檔案系統進入無法還原狀態的機會。" + +#~ msgid "" +#~ "If <filename>/usr/obj</filename> is the only directory on this file " +#~ "system, this is not a problem. If you have other, valuable data on the " +#~ "same file system, ensure that there are verified backups before enabling " +#~ "this option." +#~ msgstr "" +#~ "若 <filename>/usr/obj</filename> 是單獨位於檔案系統的目錄,那麼也不是什麼" +#~ "大問題,若是您在同一個檔案系統還有其他有價值的資料,請在開啟此選項前先確認" +#~ "有做好備份。" + +#~ msgid "" +#~ "Turn off profiling by setting <quote>NO_PROFILE=true</quote> in " +#~ "<filename>/etc/make.conf</filename>." +#~ msgstr "" +#~ "在 <filename>/etc/make.conf</filename> 設定 <quote>NO_PROFILE=true</" +#~ "quote> 關閉剖析 (Profiling)。" + +#~ msgid "" +#~ "Pass <option>-j<replaceable>n</replaceable></option> to " +#~ "<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> to run multiple processes in parallel. This " +#~ "usually helps on both single- and multi-processor machines." +#~ msgstr "" +#~ "傳遞 <option>-j<replaceable>n</replaceable></option> 給 " +#~ "<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</" +#~ "manvolnum></citerefentry> 來用多程序平行編譯,這個通常對單或多處理器的主機" +#~ "都有幫助。" + +#~ msgid "What if something goes wrong?" +#~ msgstr "若發生錯誤時該怎麼辦?" + +#~ msgid "" +#~ "First, make absolutely sure that the environment has no extraneous cruft " +#~ "from earlier builds:" +#~ msgstr "首先,確定環境沒有受到先前編譯結果的影響。" + +#~ msgid "Yes, <command>make cleandir</command> really should be run twice." +#~ msgstr "是的,<command>make cleandir</command> 真的需要執行兩次。" + +#~ msgid "" +#~ "Then, restart the whole process, starting with <command>make buildworld</" +#~ "command>." +#~ msgstr "然後重新啟動整個程序,從 <command>make buildworld</command> 開始。" + +#~ msgid "" +#~ "If problems persist, send the error and the output of <command>uname -a</" +#~ "command> to <link xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/" +#~ "freebsd-questions\">FreeBSD general questions mailing list</link>. Be " +#~ "prepared to answer other questions about the setup!" +#~ msgstr "" +#~ "若問題仍存在,回報錯誤與 <command>uname -a</command> 的輸出結果到 <link " +#~ "xlink:href=\"http://lists.FreeBSD.org/mailman/listinfo/freebsd-questions" +#~ "\">FreeBSD 一般問題郵遞論壇</link>,然後準備好回答有關該次安裝的其他問題。" + #~ msgid "" #~ "Finally, users can add their own settings via their personal <filename>." #~ "fonts.conf</filename> files. To do this, each user should simply create a " |